2 ready-to-build workflows

AI agent workflows for FMCG distribution & wholesale

Retailer order intake over WhatsApp, stock/price/scheme Q&A, payment reminders and collections, new-retailer onboarding — with every credit, scheme and return decision held for a human.

Each recipe below is expressed only in VegaDūta's real workflow building blocks — Trigger, Agent, Knowledge, Condition, Approval, Output, Tool (MCP), Voice, Device, Loop, Code and Parallel — so it maps 1:1 to something you can assemble in the Workflow designer. Consequential actions always pass a human Approval step.

1. Retailer order intake over WhatsApp with stock, price and scheme Q&A

A distributor serves hundreds of kirana stores and small retailers who order the way they always have — a WhatsApp message or a voice note: 'send 5 cartons of the usual, 2 cases of the new SKU, what's the scheme this month?'. Today a sales officer or tele-caller reads each one, checks stock and the current price list, keys it into the ERP/DMS, and answers scheme questions from memory — slow at peak, error-prone, and inconsistent on which retailer gets which scheme or credit.

Trigger: WhatsApp / Call (retailer order or product question)

How the workflow runs

  1. Trigger

    Retailer places an order. A WhatsApp or Call trigger captures the order or question in the retailer's own words and language — free-text lists and voice notes are transcribed and parsed, not forced into a form.

  2. Agent

    Parse the order, price it, answer stock/scheme questions. An Agent node maps the retailer's shorthand to real SKUs, prices the order from the current price list, and answers stock-availability and scheme questions grounded in the live ERP/DMS and the published scheme document — never inventing a SKU, a price, a stock figure or a scheme.

  3. Condition

    Check stock and flag credit exposure. A Condition node confirms each line is in stock (offering the nearest real alternative or a back-order if not) and checks whether the order pushes the retailer over their credit limit or applies a scheme they may not qualify for.

  4. Approval

    Credit and scheme decisions pause for a human. An Approval node holds any over-limit credit extension, a special scheme/discount grant or a non-standard rate until a sales manager signs off — a credit or scheme decision is a financial call that stays with a person.

  5. Tool (MCP)

    Book the order in the ERP / DMS. A Tool (MCP) node creates the sales order / invoice against the retailer's account in the distributor ERP / DMS and reserves stock — no first-party connector, MCP calls yours.

  6. Output

    Confirm the order + share a pay link. An Output node sends an itemised confirmation (SKUs, quantities, price, applicable scheme, dispatch window) on WhatsApp, with a Razorpay UPI link so the retailer can pay against the invoice in one tap.

Channels & connectors

  • WhatsApp
  • Voice / Call
  • Knowledge base
  • Approval / HITL
  • Tool (MCP → ERP/DMS)
  • Razorpay UPI
  • Sarvam (22+ Indian languages)

Outcome

Retailer orders that arrive as free-text WhatsApp messages or voice notes get parsed, priced, stock-checked and booked into the ERP/DMS automatically, with stock and scheme questions answered from live data — and every credit extension or special scheme held for a manager.

Why it helps

The mechanism is turning unstructured WhatsApp ordering into consistent, priced, stock-verified orders without a sales officer keying each one at peak — while keeping the two things that must stay human (extending credit, granting a scheme) behind an approval and every price/stock answer grounded in the live system rather than a tele-caller's memory.

Build spec

1 agent1 order-intake + Q&A agent; the stock/credit-exposure branch, the credit/scheme Approval, the ERP/DMS order write and the confirmation + pay-link are workflow nodes.

System prompt (paste-ready)

You are an order-desk assistant for {{distributor}}, an FMCG distributor serving retailers. Retailers message you in their own shorthand and language (including voice notes) — map their items to real SKUs, price the order strictly from the CURRENT price list, and confirm quantities before booking. Answer stock-availability and scheme questions using ONLY the live ERP/DMS stock and the published scheme document — never invent a SKU, a price, a stock quantity, a dispatch date or a scheme, and never apply a scheme the retailer's tier doesn't qualify for. NEVER extend credit beyond the retailer's limit, grant a special discount or scheme, or agree a non-standard rate yourself — propose it and let the approval step decide; credit and scheme are financial decisions for a human. If a line is out of stock, offer the nearest real alternative or a back-order, don't substitute silently. Confirm the itemised order back before it's placed.

MCP connectors

  • Distributor ERP / DMS (SKU master, live stock, price list, retailer accounts + credit limits) — via a Tool (MCP) node (no first-party connector)
  • Razorpay UPI — pay-link against the invoice
  • WhatsApp / Voice — retailer channel
  • Sarvam — 22+ Indian languages

Built-in tools

  • knowledge_search (current price list, published scheme document, SKU aliases)
  • http_request (check live stock + credit limit, create the sales order/invoice)

Guardrails

  • Every credit extension over the retailer's limit, special discount and scheme grant is Approval-gated to a sales manager — the agent prices and proposes, a human decides the financial call
  • Only real SKUs, current prices, live stock and published schemes are used — no invented items, prices, stock figures or schemes, and no applying a scheme to a retailer whose tier doesn't qualify; out-of-stock lines offer a real alternative or back-order, never a silent substitution
  • The order write is idempotent per retailer + order reference so a retried or re-sent message never double-books stock or raises a duplicate invoice; payment is collected only through the Razorpay UPI link, never by the agent handling account details

Cost strategy

This is high-volume, repetitive order intake, so the parsing/pricing agent should sit on the economy tier — that single choice dominates total cost because it runs once per retailer order, and retailer order and query volume is exactly the kind of routine load that belongs on the economy tier rather than a premium model. Cap tool-calls per order and batch peak-hour traffic so cost stays linear and predictable.

Output & delivery

The agent parses the free-text/voice order into real SKUs and prices it from the current list → the Condition node verifies stock and flags credit/scheme exposure → any over-limit credit or special scheme is held for the sales-manager Approval node → a Tool node creates the sales order/invoice and reserves stock in the ERP/DMS via MCP → an Output node sends the itemised confirmation on WhatsApp with a Razorpay UPI pay-link; the order and any approval are logged.

2. Payment reminders, collections and new-retailer onboarding

Outstanding invoices age because nobody has time to chase every retailer, so the collections officer works only the biggest overdue accounts and the long tail slips. Meanwhile onboarding a new retailer — collecting GST and shop details, running a credit check, setting a limit — is a manual back-and-forth over days, and the credit limit gets set inconsistently depending on who signs it off.

Trigger: Webhook (daily receivables run) + WhatsApp (new-retailer signup)

How the workflow runs

  1. Trigger

    Daily receivables run + new-retailer signup. A scheduled Webhook trigger each morning pulls invoices that are due or overdue from the ERP/DMS; a second WhatsApp/Webhook trigger fires when a prospective retailer asks to open an account. The ERP/DMS has no first-party connector, so receivables arrive by Webhook.

  2. Loop

    Per overdue account / per applicant. A Loop node iterates the receivables list so each retailer gets exactly the right reminder for how overdue they are, and iterates onboarding applicants so each gets the right next step in the account-opening flow.

  3. Agent

    Draft the reminder or collect onboarding details. An Agent node writes a polite, firm, escalation-appropriate payment reminder referencing the specific invoice(s), amount and due date from the record; or, for onboarding, collects and validates the GST number, shop name, address and contact into a clean application — never inventing a balance, a due date or an interest/penalty figure.

  4. Condition

    Verify identity / route disputes. A Condition node requires a verified identity before discussing account balances, and routes any payment dispute, request for a due-date extension or a return/damages claim to a human rather than negotiating it.

  5. Approval

    Credit limits, extensions and returns pause for a human. An Approval node holds every new-retailer credit-limit decision, any due-date/credit extension and any return or damages credit-note until a credit manager signs off — these are financial and risk decisions that stay with a person.

  6. Output

    Send the reminder or onboarding status + pay link. An Output node sends the reminder or onboarding update on WhatsApp/SMS, attaching a Razorpay UPI link so an overdue invoice can be settled in one tap, or confirming the approved account terms once a manager has set the limit.

Channels & connectors

  • Webhook
  • Loop
  • WhatsApp
  • SMS
  • Knowledge base
  • Approval / HITL
  • Tool (MCP → ERP/DMS)
  • Razorpay UPI

Outcome

Every overdue invoice — not just the biggest — gets a timely, appropriately-escalated reminder with a one-tap UPI pay link, and new retailers are onboarded through a consistent, validated flow with the credit limit always set by a manager.

Why it helps

Consistent, complete follow-up is the mechanism: the manual process chases only the largest overdue accounts and lets the long tail age, and sets credit limits inconsistently across whoever approves them. Chasing every account on a schedule while holding every credit, extension and return decision for a manager keeps collections thorough and credit risk human-owned — with payment always on a Razorpay UPI link the agent never touches directly.

Build spec

1 agent1 reminders/onboarding agent per record; the per-account Loop, the identity/dispute routing, the credit/extension/return Approval and the pay-link/status send are workflow nodes.

System prompt (paste-ready)

You are a collections and onboarding assistant for {{distributor}}, an FMCG distributor. For receivables, write ONE polite but firm reminder in the retailer's language, matched to how overdue the invoice is, referencing the specific invoice number(s), amount and due date from the ERP/DMS record — never invent a balance, a due date, an interest charge or a penalty. For onboarding, collect and validate the GST number, legal/shop name, address and contact into a clean application. Before discussing any account balance, require the workflow's identity-verified flag. NEVER set or change a credit limit, agree a due-date or credit extension, waive a charge, or approve a return or damages credit-note yourself — propose it and let the approval step decide; these are the credit manager's financial calls. Route any payment dispute or return/damages claim to a human rather than negotiating. Honour opt-outs and don't over-message an account that has already replied or paid.

MCP connectors

  • Distributor ERP / DMS (open invoices, aging, retailer accounts, credit limits) — via a Tool (MCP) node (no first-party connector)
  • Razorpay UPI — pay-link against the overdue invoice
  • WhatsApp + SMS — retailer channels
  • GST / credit-check source — via a Tool (MCP) node during onboarding

Built-in tools

  • http_request (read the aging/receivables list + retailer record, validate GST, write the application)
  • knowledge_search (collections policy, escalation ladder, onboarding requirements)

Guardrails

  • Every credit-limit decision, due-date/credit extension and return/damages credit-note is Approval-gated to a credit manager — the agent chases and assembles the application, a human owns the credit and risk decision
  • Account balances are discussed only after the Condition node confirms a verified identity, and any payment dispute or return claim is routed to a human, never negotiated by the agent; no invented balances, due dates, interest or penalties
  • Reminders honour frequency caps and opt-outs and stop once an account has paid or replied; the reminder run is idempotent per invoice so a retried daily run never double-chases, and payment is collected only through the Razorpay UPI link, never by the agent handling account details

Cost strategy

Collections reminders and onboarding intake are high-volume, low-complexity outreach, so the drafting agent belongs on the economy tier — that one choice dominates total cost because it runs once per overdue account and per applicant. Batch the Loop and cap tool-calls per record so a large morning receivables run stays linear and predictable in cost.

Output & delivery

A Loop runs the agent per overdue invoice and per onboarding applicant → the agent drafts the escalation-appropriate reminder from the aging record, or validates the GST/shop details into an application → the Condition node verifies identity and routes disputes/returns to a human → every credit-limit, extension and return decision is held for the credit-manager Approval node → an Output node sends the reminder or approved account terms on WhatsApp/SMS with a Razorpay UPI pay-link on overdue invoices; the reminders, applications and approvals are logged.

Related industries

Build one of these in minutes

The sandbox gives you a live agent workspace — no account, no card. Or head back to the full catalogue and compare patterns across every industry.

See how VegaDūta compares to n8n, Dify and BotpressWhy VegaDūta's architectureEstimate your WhatsApp API costs