Base URL
Authentication
Send your API key in theAuthorization header:
Core API areas
Payment status flow
- Call
POST /v1/express. - Store the returned
paymentIdandtransactionId. - Use
GET /v1/payments/{id}for status checks (this reads Moflay’s stored state; see Payment statuses & outcomes). - Use Moflay webhooks for production-grade asynchronous status updates.
Amounts
Send payment amounts as integer minor currency units. For example,amount: 1000 means KES 10.00.
Supporting behavior
- Cursor-based pagination for list endpoints
- Environment-specific API keys
- Permission-based access control
- Standardized JSON error responses
- Rate limit headers on public API responses
Read next
- Authentication
- Payment statuses & outcomes (Developer Docs → Payments): Moflay statuses, Daraja codes, and webhooks
- Errors
- Daraja callbacks
- Rate limits
- Pagination