Payments
Payments Architecture & Multi-Gateway Processing
Accept payments across online and offline channels: automated Safaricom M-Pesa STK push, IntaSend Visa/Mastercard processing, digital paylinks, and manual cash logging.
Overview of BusinessPlus Payments
BusinessPlus provides a flexible multi-gateway payment infrastructure tailored for African and international commerce. The platform supports automated mobile money prompts, card processing, hosted digital paylinks, and manual cash or bank transfer recording.
Supported Payment Methods
The platform categorizes payments across verified processing methods:
- 1. M-Pesa STK Push (`mpesa_stk`): Automated prompt sent directly to the customer's Safaricom line requiring only their M-Pesa PIN.
- 2. Card Processing (`card`): Visa and Mastercard credit/debit card transactions processed securely via the IntaSend gateway.
- 3. Manual M-Pesa Reference (`mpesa_manual`): Customer enters their M-Pesa transaction confirmation code (e.g. `QHK78X9L2`) for manual or automated verification.
- 4. Cash (`cash`): Physical cash received in person at retail checkout or point of sale.
- 5. Bank Transfer (`bank_transfer`): Direct electronic funds transfer (EFT/RTGS) with banking reference numbers.
Separate Order vs Payment State Machines
BusinessPlus strictly separates fulfillment status (Pending -> Processing -> Shipped -> Delivered) from financial payment status (Unpaid -> Partially Paid -> Paid -> Refunded). A physical order can be placed before payment clears, or paid in installments.
Automated Status Synchronization
When an online payment succeeds via M-Pesa callback or IntaSend webhook, the ledger logs the transaction, updates the order's `payment_status` to `paid`, and dispatches branded PDF receipts to the customer.