OrderToCash
📄️ adminListShipments
adminListShipments
📄️ adminCreateShipment
adminCreateShipment
📄️ Delivery runs — one driver, several drops, latest planned first.
Delivery runs — one driver, several drops, latest planned first.
📄️ Group shipments into one driver's run.
The driver, phone and vehicle cascade onto every stop, so each stop's own delivery link shows the same person.
📄️ adminGetDeliveryRun
adminGetDeliveryRun
📄️ Replace the run's stop list — add a drop or pull one off.
Replace the run's stop list — add a drop or pull one off.
📄️ Order the stops by road and give each an ETA.
Asks the routing server for the shortest way round the stops from the depot, writes that
📄️ Move the whole run; sending it out dispatches every stop on it.
Move the whole run; sending it out dispatches every stop on it.
📄️ Live tracking for one shipment, pushed as the van moves (SSE).
A `text/event-stream` the tracking link alone opens. The first frame carries the current
📄️ Attach a photo to this stop — proof it was delivered, or what stopped it.
Multipart upload from the driver's phone, authenticated by the delivery link alone. Up to
📄️ adminPatchShipmentStatus
adminPatchShipmentStatus
📄️ adminListInvoicesForOrder
adminListInvoicesForOrder
📄️ adminIssueInvoice
adminIssueInvoice
📄️ adminGetInvoice
adminGetInvoice
📄️ Ask KRA to sign this invoice again after a refusal.
Ask KRA to sign this invoice again after a refusal.
📄️ Money held in suspense (statement lines, gateway receipts that matched no invoice), with the invoice each open line most likely settles.
Money held in suspense (statement lines, gateway receipts that matched no invoice), with the invoice each open line most likely settles.
📄️ Book every open line whose match is sure (an invoice number in the narration, or the payer's phone and the exact balance).
Book every open line whose match is sure (an invoice number in the narration, or the payer's phone and the exact balance).
📄️ Book a held line against the invoice a person picked.
Book a held line against the invoice a person picked.
📄️ Set a held line aside (not a customer payment).
Set a held line aside (not a customer payment).
📄️ adminRegenerateInvoicePdf
adminRegenerateInvoicePdf
📄️ Void an unpaid invoice (issued in error). Refuses if it has captured payments — refund first.
Void an unpaid invoice (issued in error). Refuses if it has captured payments — refund first.
📄️ adminListInvoicePayments
adminListInvoicePayments
📄️ Record a payment against an invoice (never more than its outstanding balance)
Record a payment against an invoice (never more than its outstanding balance)
📄️ Resolve charge attempts stuck unconfirmed against the processor
Asks the processor about this tenant's card attempts left pending past two minutes and records the truth: captured when the money was taken, failed when it never was (releasing the invoice balance). Safe to run repeatedly.
📄️ adminRefundPayment
adminRefundPayment
📄️ The buyer's own invoices with balances, newest first, a page at a time.
The buyer's own invoices with balances, newest first, a page at a time.
📄️ storefrontGetInvoice
storefrontGetInvoice
📄️ Pay an invoice via the configured gateway (sync card, or async webhook-confirmed collection)
Pay an invoice via the configured gateway (sync card, or async webhook-confirmed collection)
📄️ Pay an order (issues its invoice first if none exists yet); sync card or async collection
Pay an order (issues its invoice first if none exists yet); sync card or async collection
📄️ Invoices, newest first, paged and searched on the server.
Invoices, newest first, paged and searched on the server.
📄️ AR-aging report — open invoices bucketed by days past due.
AR-aging report — open invoices bucketed by days past due.
📄️ Flip past-due issued invoices to overdue and dun the customers.
Flip past-due issued invoices to overdue and dun the customers.
📄️ Send the customer's billing contacts a payment reminder for one open invoice on every configured channel (email, SMS, WhatsApp).
Send the customer's billing contacts a payment reminder for one open invoice on every configured channel (email, SMS, WhatsApp).
📄️ Every payment reminder sent for one invoice, newest first.
Every payment reminder sent for one invoice, newest first.
📄️ Switch reminders for one invoice on or off (disputes, withholding tax, a closed company).
Switch reminders for one invoice on or off (disputes, withholding tax, a closed company).
📄️ Draft reminder wording for one open invoice from its facts (balance, due date, statement detail, history).
Draft reminder wording for one open invoice from its facts (balance, due date, statement detail, history).
📄️ Book the outstanding balance as received outside the platform and close the invoice.
Book the outstanding balance as received outside the platform and close the invoice.
📄️ The customer names the day they will pay; reminders pause until then.
The customer names the day they will pay; reminders pause until then.
📄️ Record a customer's promise to pay by a date; reminders pause until then.
Record a customer's promise to pay by a date; reminders pause until then.
📄️ Record one unpaid invoice raised outside the platform; the same customer and invoice number updates it.
Record one unpaid invoice raised outside the platform; the same customer and invoice number updates it.
📄️ Payments customers reported (M-Pesa code, cheque, bank reference) awaiting verification.
Pending claims read oldest first so none waits behind newer ones; accepted and rejected read most recent decision first.
📄️ Approve a reported payment and book it against the invoice.
A customer's report changes nothing on its own; this is the approval. The invoice is reduced
📄️ Dismiss a reported payment; the invoice stays open and reminders continue.
Dismiss a reported payment; the invoice stays open and reminders continue.
📄️ What the 'I've paid' page shows for a reminded invoice; the UUID is the capability.
What the 'I've paid' page shows for a reminded invoice; the UUID is the capability.
📄️ Report a payment (M-Pesa code, cheque, bank reference) for staff to verify.
Report a payment (M-Pesa code, cheque, bank reference) for staff to verify.
📄️ Payment reminders sent by this org across all invoices, newest first.
Payment reminders sent by this org across all invoices, newest first.
📄️ Return requests (RMAs), newest first, paged and searched on the server.
Return requests (RMAs), newest first, paged and searched on the server.
📄️ adminGetReturn
adminGetReturn
📄️ adminApproveReturn
adminApproveReturn
📄️ adminRejectReturn
adminRejectReturn
📄️ Mark received — restock items and issue a credit note.
Mark received — restock items and issue a credit note.
📄️ adminListOrderReturns
adminListOrderReturns
📄️ adminCreateReturn
adminCreateReturn
📄️ Credit notes, newest first, paged and searched on the server.
Credit notes, newest first, paged and searched on the server.
📄️ storefrontListReturns
storefrontListReturns
📄️ The buyer's credit notes (money owed to them from received returns).
The buyer's credit notes (money owed to them from received returns).
📄️ Buyer self-serve return request for their own order.
Buyer self-serve return request for their own order.