Skip to main content
Use collections when you want to request a mobile money payment from a customer. Collections currently support KES and UGX. Successful collections settle into your USD wallet.

Endpoint

POST /v3/collect

Required fields

Quote first

Create the collection

Send the same request with quote: false. In production, Sarafa stores the transaction as pending, queues a collection.pending callback, and dispatches the provider request through the worker. The worker confirms the transaction from a provider webhook or status check. In sandbox, Sarafa skips phone-provider validation and worker dispatch, credits the sandbox USD wallet immediately, returns a completed transaction, and queues one collection.updated callback with status: "completed". Use a new external_id for every collection. Duplicate IDs return 409. The terminal callback uses collection.updated with a completed or failed status. A completed collection credits your USD wallet. A failed collection does not change your wallet balance.
Last modified on July 22, 2026