The model: your accounts, your money
Sales Payments exists to close the gap most businesses actually struggle with. Taking the money is rarely the hard part — a customer can already pay your till. The pain is reconciliation: a cashier squints at a confirmation SMS, finance re-keys the receipt into the ledger, and a half-paid invoice quietly drifts out of sync. AWRA's answer is to make the act of paying and the act of recording the same event, so a successful payment posts itself against the exact invoice or POS sale it settles.
The defining design choice is that it is non-custodial. Each business connects its own Safaricom Daraja and Paystack credentials, and money settles directly into that business's own till, paybill, and bank. AWRA never holds, pools, or routes your funds — it only triggers the request and records the outcome. This is deliberately separate from how you pay for your AWRA subscription (that is the platform billing you as a customer); sales payments are you billing your own customers, on your own rails. Confusing the two is the single most common misconception, so anchor on it: the subscription M-Pesa/Paystack config is the platform's; the sales config is the tenant's.
Because credentials are per-tenant and sensitive, they are encrypted at rest and entered under Payment Settings, where a one-click "Test connection" confirms the keys authenticate before you rely on them. Everything downstream — STK prompts, QR, card popups, reconciliation, refunds — runs on those stored credentials. The mental model to carry through the rest of this course is a four-step loop: connect your accounts once, charge the customer, receive a signed confirmation from the provider, and reconcile that confirmation onto the sale automatically.
Key takeaways
- Sales Payments unifies paying and recording — a confirmed payment posts to the invoice/POS sale it settles.
- It is non-custodial: each tenant uses its own Daraja/Paystack keys and money settles directly to the business.
- It is separate from AWRA subscription billing — tenant-collecting-from-customers, not platform-billing-tenant.
- Credentials are encrypted, entered under Payment Settings, and verified with a Test connection before use.