8 Service APIs
This section provides a reference for APIs that should be implemented by this Building Block.
8.1 Payment Orchestration
8.1 Person-to-Government APIs (P2G)
8.1.1 Government Initiated P2G payment
8.1.2 P2G Bill Payments
8.2 Government to Person payments
Collaboration with G2PConnect on G2P Payments
8.2.1 Beneficiary Onboarding API
Request Parameters
Successful response
Bad request
Response Parameters
8.2.2 Update Beneficiary Details API
Request Parameters
Response Parameters
8.2.2 Pre Payment Validation API
Request Parameters
Successful response
Successful response
8.2.2 Bulk disbursement APIs
Request Parameters
Successful operation
Bad request
Response Parameters
8.6 Voucher APIs/Voucher Management
8.6.1 VoucherPreActivation API
Requests for voucher number, voucher serial number and expiry date by sending voucher group, amount and currency
API key to authorize request
The URL supplied by the client that will be used to return the callback in the form of a HTTP PUT.
https://myserver.com/send/callback/hereHeader parameter to indicate the date and time that the message was originated. It is used for basic message integrity checks, to ensure the request is not stale. Note that the header was previously referenced as 'Date' in version 1.0 of the Mobile Money API.
Header parameter to uniquely identify the request. Must be supplied as a UUID.
^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$Used to pass pre-shared client's API key to the server.
Used to pass user’s access token when OAuth 2.0/OIDC authorisation framework is used for end-user authentication.
Used to pass pre-shared client's identifier to the server.
SHA-256 hex digest of the request content (encrypted or plain). Applicable only if basic data integrity checking is to be performed.
The end-users encrypted security credential. Should only be used when OAuth 2.0/OIDC authorisation framework has not been implemented by the API Provider.
The end-users encrypted security credential Should only be used when OAuth 2.0/OIDC authorisation framework has not been implemented by the API Provider.
String containing the channel that was used to originate the request. For example USSD, Web, App.
15.21Pattern: ^([0]|([1-9][0-9]{0,17}))([.][0-9]{0,3}[0-9])?$Successfully pre-activated voucher
This is a random secret number that uniquely identifies the value and validity of the voucher.
This is a sequential number that is used to identify a voucher without necessarily revealing the voucher secret number. There is no relationship between the voucher serial number and the voucher number.
Invalid resquest
Invalid amount
Invalid currency
Invalid voucher group
Voucher group exhausted
Gov Stack Building Block does not exist
Internal Server Error
Service Unavailable
Network connection timeout error
8.6.2 VoucherActivation API
Request for voucher activation by sending the voucher serial number
API key to authorize request
The URL supplied by the client that will be used to return the callback in the form of a HTTP PUT.
https://myserver.com/send/callback/hereHeader parameter to indicate the date and time that the message was originated. It is used for basic message integrity checks, to ensure the request is not stale. Note that the header was previously referenced as 'Date' in version 1.0 of the Mobile Money API.
Header parameter to uniquely identify the request. Must be supplied as a UUID.
^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$Used to pass pre-shared client's API key to the server.
Used to pass user’s access token when OAuth 2.0/OIDC authorisation framework is used for end-user authentication.
Used to pass pre-shared client's identifier to the server.
SHA-256 hex digest of the request content (encrypted or plain). Applicable only if basic data integrity checking is to be performed.
The end-users encrypted security credential. Should only be used when OAuth 2.0/OIDC authorisation framework has not been implemented by the API Provider.
The end-users encrypted security credential Should only be used when OAuth 2.0/OIDC authorisation framework has not been implemented by the API Provider.
String containing the channel that was used to originate the request. For example USSD, Web, App.
Successfully activated voucher
Invalid resquest
Invalid voucher serial number
Gov Stack Building Block does not exist
Internal Server Error
Service Unavailable
Network connection timeout error
8.6.3 BatchVoucherActivation API
8.6.4 VoucherRedemption
Request for voucher redemption by sending the voucher number, the merchant name and merchant payment details
API key to authorize request
The URL supplied by the client that will be used to return the callback in the form of a HTTP PUT.
https://myserver.com/send/callback/hereHeader parameter to indicate the date and time that the message was originated. It is used for basic message integrity checks, to ensure the request is not stale. Note that the header was previously referenced as 'Date' in version 1.0 of the Mobile Money API.
Header parameter to uniquely identify the request. Must be supplied as a UUID.
^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$Used to pass pre-shared client's API key to the server.
Used to pass user’s access token when OAuth 2.0/OIDC authorisation framework is used for end-user authentication.
Used to pass pre-shared client's identifier to the server.
SHA-256 hex digest of the request content (encrypted or plain). Applicable only if basic data integrity checking is to be performed.
The end-users encrypted security credential. Should only be used when OAuth 2.0/OIDC authorisation framework has not been implemented by the API Provider.
The end-users encrypted security credential Should only be used when OAuth 2.0/OIDC authorisation framework has not been implemented by the API Provider.
String containing the channel that was used to originate the request. For example USSD, Web, App.
Voucher is successfully redeemed
Invalid resquest
Gov Stack Building Block does not exist
Invalid voucher number
Insufficient funds in funding a/c
Cannot credit merchant
Internal Server Error
Service Unavailable
Network connection timeout error
8.6.5 VoucherStatus API
Check the status of the Voucher. The API will respond with Not Preactivated, Preactivated, Activated, Active, Consumed, Blocked, Suspended and Purged.
API key to authorize request
Voucher serial number to check status of
The URL supplied by the client that will be used to return the callback in the form of a HTTP PUT.
https://myserver.com/send/callback/hereHeader parameter to indicate the date and time that the message was originated. It is used for basic message integrity checks, to ensure the request is not stale. Note that the header was previously referenced as 'Date' in version 1.0 of the Mobile Money API.
Header parameter to uniquely identify the request. Must be supplied as a UUID.
^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$Used to pass pre-shared client's API key to the server.
Used to pass user’s access token when OAuth 2.0/OIDC authorisation framework is used for end-user authentication.
Used to pass pre-shared client's identifier to the server.
SHA-256 hex digest of the request content (encrypted or plain). Applicable only if basic data integrity checking is to be performed.
The end-users encrypted security credential. Should only be used when OAuth 2.0/OIDC authorisation framework has not been implemented by the API Provider.
The end-users encrypted security credential Should only be used when OAuth 2.0/OIDC authorisation framework has not been implemented by the API Provider.
String containing the channel that was used to originate the request. For example USSD, Web, App.
Voucher status
Invalid request
Invalid voucher number
Voucher number already used
Voucher has expired
Gov Stack Building Block does not exist
Internal Server Error
Service Unavailable
Network connection timeout error
8.6.6 VoucherCancellation API
Last updated
Was this helpful?