Platform operators

Payments and donation channels

Merchant and checkout accounts, Sauti platform channels, commission, withdrawals and exceptions.

Merchant accounts (M-PESA)#

Payments › Merchant accounts connects Paybill and Till numbers through Safaricom Daraja. Credentials go straight to the secrets store. Each account belongs to an organisation, or is flagged as a Sauti platform account.

Tariffs (fixed plus basis points) and KES minimums are versioned per account. The platform-funded payment receipt settings choose the approved sender and provider used for receipt SMS, which cost the platform, not the tenant.

Card and bank checkout (Paystack)#

Payments › Card and bank checkout connects Paystack accounts in three steps: keys, a connection test, and the webhook URL to paste into Paystack. Every payment is re-verified with Paystack before it is booked. Refunds of test payments are handled here.

Donation channels#

Payments › Donation channels is where donations and top-ups are governed.

Sauti platform settlement#

Select one tested Sauti merchant per provider for the whole platform. Every wallet top-up and every donation from a tenant in Sauti-default mode uses it. Payments are attributed to the right tenant by reference.

Per-organisation donation policy#

For each organisation (every change needs a reason and is audited):

Setting Options
Donation channel Sauti default channels, or the tenant's tested own channels
Commission Percentage (0 to 20%, two decimals) and/or fixed amount per donation, with an effective date and time
Withdrawal mode Operator approval, or direct after the tenant's step-up
Commission invoice cycle Daily, weekly (day of week) or monthly (day 1 to 28), for own-channel tenants
Reminders Reminder frequency and maximum number
Late action None, close donation pages after a number of days unpaid, or after a number of unpaid reminders

Commission is frozen on each donation at the rate in force when it arrives. Switching channel affects new donations only.

Withdrawal approvals#

In operator-approval mode, tenant withdrawal requests wait here. Approve or reject each with a reason; only approved requests are transferred. You can pause dunning or reopen a tenant's pages manually, with a reason.

Payment exceptions#

Payments › Payment exceptions lists work that did not finish in the last 14 days: failed hand-offs, callbacks that were never booked, prompts waiting more than 15 minutes, Daraja inquiries and reversals, and failed receipt SMS. Retry re-queues the stored item; booking is idempotent, so a retry can never pay anyone twice. Payer numbers are never shown.

Unpaid invoice holds#

Payments › Unpaid invoice holds can pause sending for organisations with an invoice still unpaid after a grace period (1 to 90 days, default 14, off by default). Holds lift automatically when nothing is overdue. Check now runs the check immediately.