V Vinfarm Admin

Sign in to manage your site content

OR

Forgot your password? Use the magic link option above.

📧

Check your email

We sent a sign-in link to . Click it to log in.

← Back to vinfarm.co.ke

V Set your password

Choose a strong password for future sign-ins

Tip: pick something memorable, at least 12 characters.

V Vinfarm Admin
View site ↗

Overview

Your Vinfarm site at a glance.

Recent contacts

Recent signups

Blog posts

Notes from the farm. Visible to visitors at /blog.

No posts yet. Click "New post" to publish your first one.

Products & animals

Manage everything for sale on your shop. Changes go live in 30 seconds.

No products yet. Click "New product" to add the first one.

Shop Orders

Every website checkout lands here with an order ref (also in the customer's WhatsApp message). Confirm on WhatsApp, then track status here.

No orders yet. When a customer checks out on the website, it appears here.

Could not load orders — run sql/shop-orders-admin.sql in Supabase first (adds admin read access + customer columns).

Species & Breeds

Manage species (Sheep, Goats…) and the breeds under each one.

No species yet. Run site-species-setup.sql then alter-site-species.sql in Supabase.

Clients

Every customer who signed up to AgriPlan. Search, view their farm, or remove inactive accounts.

Duplicate accounts found
Same email registered more than once. Delete the older/unused account — keep the one you actively use.
⚠ You cannot delete the account you are currently signed in with. Sign in with the duplicate to delete it, or use the SQL editor.
selected
No clients match your filters.
Loading clients...

Client details

Waitlist signups

Everyone who entered their email on the homepage to be notified.

No signups yet.

Contact submissions

Messages sent through the site's contact form.

No contact form submissions yet.

Payments

IntaSend M-Pesa transactions from AgriPlan subscriptions.

💳

No payment records yet

Run admin-payments-setup.sql to create the payments table, then configure IntaSend webhook.

Loading payments...

Payments table not set up yet

Run admin-payments-setup.sql in Supabase → then configure your IntaSend webhook URL to https://auwkatnnqgcclucumstz.supabase.co/functions/v1/intasend-webhook

Analytics

Signup trends and plan distribution from your live data.

Plan distribution

Signup activity (last 12 weeks)

Onboarding funnel

Client activity

Revenue (last 12 months)

From completed payments. Visit Payments tab first to load data.

No payment data loaded — open the Payments tab then revisit Analytics.

Broadcast

Send magic sign-in links or messages to user segments.

Send magic links

Sends a personalised sign-in link to each recipient's email via Supabase Auth.

Broadcast history

No broadcasts sent yet. Run admin-broadcast-setup.sql to enable logging.

Daily content

Tips, guides, and updates posted to AgriPlan users inside the app.

No training content yet. Click "+ New training content" to add your first.
Loading content...

Audit log

Record of admin actions — plan changes, deletions, magic links.

No audit events yet. Run admin-audit-log.sql to enable logging.

Loading audit log...

Website content

Upload farm photos, manage reviews, and edit hero text on vinfarm.co.ke.

Customer reviews shown in the What farmers are saying section.

View on site ↗
Loading…
No reviews yet. Click "+ Add review" to add the first one.

Override the homepage hero image, headline and subtext. Changes go live immediately after saving — no deploy needed.

hero

JPG / PNG / WebP · max 5 MB · recommended 1600 × 900 px (16:9 landscape)

Leave blank to keep the existing headline.

Leave blank to keep the existing subtext.

Species shown in the "What We Farm" section on the website. Edit photos, names, descriptions and order from the Breeds tab → species accordion.

🐄 Go to Breeds tab →

Quick status

Loading…
No published species yet. Add some in the Breeds tab.

App screenshots shown in the "A look inside the app" section on vinfarm.co.ke.

View on site ↗
Loading…
No screenshots yet. Click "+ Add screenshot" to upload the first one. The website shows static images until you add entries here.

Help & tips

How do I write a new blog post? +

Go to Blog Posts tab → click + New post.

Fill in title, category, an emoji or image URL for the cover, and the body. Click Publish.

The post appears immediately on vinfarm.co.ke/#blog with a unique link.

What's a "slug"? +

It's the URL part. For "Starting Dorper Sheep in Kenya", the slug is usually starting-dorper-sheep-kenya. Lowercase letters and dashes only.

The admin auto-generates one from the title. You can override it before saving.

Can I use formatting in the body? +

Yes. The body field accepts HTML tags. Common ones:

  • <p>Paragraph</p> — a paragraph
  • <h2>Section title</h2> — section heading
  • <strong>Bold text</strong> — bold
  • <em>Italic text</em> — italic
  • <ul><li>Item</li></ul> — bullet list
  • <blockquote>Quote</blockquote> — pull-quote
  • <a href="https://...">Link text</a> — link
How do I unpublish a post without deleting it? +

Edit the post, toggle Published to off, click Save. The post stays in your dashboard but disappears from the public site.

Where do orders show up? +

Two places: the customer's WhatsApp message arrives on your phone (with an order ref like VF-260702-ABC), and the same order appears in the 🧾 Orders tab here — with the customer's name, phone, items and total.

Confirm price and delivery on WhatsApp, then mark the order Confirmed → Delivered in the Orders tab so you always know what's outstanding.

How do I update the animal photos on the website? +

Species and breed photos are managed directly from this admin — no file upload or redeploy needed.

To update a species photo: go to the 🐄 Breeds tab → find the species accordion → click the photo thumbnail to upload a new image. It saves to Supabase Storage and appears on the website instantly.

To update a breed photo: open the breed in the Breeds tab → click "Upload photo" inside the breed editor modal.

Testimonials and hero text are managed from the 🌐 Website tab — no deploy needed for those either.

New species

Lowercase, dashes only. Auto-fills from name.

species photo

JPG / PNG / WebP · max 5 MB · 800 × 600 px landscape

Lower = appears first.

New breed

Auto-fills from name. Lowercase, dashes only.

breed photo

JPG / PNG / WebP · max 2 MB · recommended 800 × 600 px (landscape)

Lower = appears first.

New product

Auto-fills from name. Lowercase, dashes only.

Pick existing or type a new one.

Group similar items together.

Leave blank for "Quote on request".

Lower number = appears first.

product photo

JPG / PNG / WebP · max 2 MB · recommended 800 × 800 px (square)

New post

Lowercase, dashes only. Auto-fills from title.

Pick existing or type a new category.

cover

JPG / PNG / WebP · max 3 MB · recommended 1200 × 630 px

Or paste an emoji / external URL as fallback.

0/160

Tip: see the Help tab for available HTML tags.

New training content

0/160

HTML supported: <p>, <h2>, <ul>/<li>, <strong>, <em>.

Add review

Lower number = appears first on the website.

Add screenshot

screenshot preview

JPG / PNG / WebP · max 5 MB

Short text shown below the image on the website.

Lower number = appears first. Use 10, 20, 30… for easy reordering.

Change password