Tutorial: FMCG Integration
In this tutorial you will integrate Kanall into a FMCG distribution platform. By the end, your backend will:
- Provision a dedicated NUBAN for each distributor on your network
- Receive real-time payment notifications when a distributor settles an invoice
- Query each distributor's collection history and confirmed balance
- Run an end-of-day reconciliation report per sales agent route
The scenario
StarLine Gas supplies cooking gas to hundreds of distributors across Lagos and Abuja. Their sales agents do weekly credit runs — stock is delivered today, payment is expected within 2–7 days.
The problem: StarLine has 400+ active distributors all paying into 3 company accounts. Finance receives a spreadsheet of transfers every morning and spends hours matching payment references to distributor IDs. When a reference is missing or wrong (common), the match fails and credit terms are not cleared — blocking the next delivery.
The solution: Each distributor gets their own NUBAN via Kanall. When Emeka Okafor transfers ₦45,000 for Invoice #INV-2026-007, the payment lands in his dedicated virtual account, Kanall records it against his ledger, and StarLine's system receives a webhook instantly — no matching, no spreadsheets.
What we will build
A backend integration that:
- Provisions a StarLine Gas account on Kanall and configures the environment
- Assigns a dedicated NUBAN to each distributor at onboarding
- Handles Kanall's payment webhooks to clear invoices and release credit holds in real time
- Runs a daily reconciliation report per route to give finance a clean summary
Prerequisites
- A registered Kanall tenant with an API key — sign up at www.kanall-app.online or see the Quick Start
- A backend capable of receiving HTTP POST requests (Node.js/Express examples shown)
- A publicly reachable webhook URL — use ngrok for local testing
Tutorial steps
- Set up your environment — set up your Kanall tenant and API client
- Provision distributor accounts — assign a NUBAN to each distributor
- Receive payment webhooks — handle and verify payment events in your backend
- Reconcile and report — query balances and generate daily route collection reports
- Settlement — look up accounts, verify recipients, and initiate outbound bank transfers