Bank transfers in Kenya
| Name | The code | Description |
|---|---|---|
Integration type |
|
Payment via HighHelp API on the merchant side |
Currency |
|
Kenyan shilling |
Side |
|
Republic of Kenya |
Deposits |
✅ |
Available payment methods: |
Payments |
✅ |
Available payment methods: |
Payment
General requirements for integrating P2P payments via API are described in the sectionGeneral requirements for P2P (H2H).
Creating an application
POST https://api.hh-processing.com/api/v1/payment/p2p/payin
Request body parameters when creating a P2P request.
-
general— information about the application.-
project_id— cashier identifier issued by HighHelp at the integration stage.
(string) (<= 32) -
payment_id— payment identifier, unique within the merchant’s checkout. Any UTF-8 encoded characters are acceptable.
(string) (<= 255) -
merchant_callback_url— dynamic URL for receiving informative notifications, for example about changes in the intermediate status of an application and details for payment of a P2P application. Final status notifications are sent to the URLs specified inmerchant_success_callback_urlAndmerchant_decline_callback_url.
(string<https-url>) (<= 2048) -
merchant_success_callback_url— dynamic URL to receive a notification when the operation is successful.
(string<https-url>) (<= 2048) -
merchant_decline_callback_url— dynamic URL to receive an alert if the operation is unsuccessful.
(string<https-url>) (<= 2048) -
redirect_url— a link to redirect the user from the payment page after completing the payment.
(string<https-url>) (<= 2048)
-
-
payment— payment information.-
method— payment method code. For a list of codes, see sectionPayment methods and codes (H2H).
(string) (<= 32) -
amount— the amount that the user intends to pay. The amount is indicated in fractional units; For more details, see the sectionCurrency codes.
(integer) (1 <= X <= 10000000000000) -
currency— payment currency code in the formatISO 4217 alpha-3. The list of codes is given in the sectionCurrency codes.
(string) (regex: ^[A-Z]{3}$) -
lifetime— request lifetime in seconds. The maximum value is 10 minutes. If the parameter is not specified, the default value of 10 minutes is used.
(integer) (300 <= X <= 600) -
description— payment description or comment. Displayed in the merchant's account.
(string) (<= 255) -
extra_param— an additional parameter for individual routing of a request. Configured together with HighHelp specialists.
(string) (regex: ^[A-Za-z0-9_-]{1,16}$)
-
-
sender— data about the user’s payment instrument.-
pan— sender’s card number.
(string<pan>) (<= 32) -
phone— sender’s phone number. Required parameter.
(string) (<= 24)
(regex: ^\d{8,15}$) -
bank_symbol— code of the bank from whose card or account the user will pay. Required parameter. To get bank codes use the API/api/v1/bank/all(cm.Service endpoints). Examples of banks are given in the sectionBanks for P2P.
(string) (<= 32) -
card_holder— sender’s name, as on the card.
(string) (<= 255)
(regex: ^[a-zA-Z - - ҐґЇїІіЄє0-9\s\-.']{1,255}$)
-
-
customer— information about the sending user.-
id— a unique user identifier in the merchant’s system.
(string) (<= 255) -
ip_address— IP address of the sender.
(string<ip-address>) (<= 255) -
first_name— name of the user making the payment.
(string) (<= 255) -
last_name— surname of the user making the payment.
(string) (<= 255) -
customer_type— user type:ftd— primary traffic,trust— repeated traffic.
(string) (regex: ^(ftd|trust)$) -
country— user country code in the formatISO 3166-1 alpha-2. The list of codes is given in the sectionCountry codes.
(string) (regex: ^[A-Z]{2}$) -
language— language code of the payment page interface in the formatISO 639-1. If no language is specified, the default language for the user's country is used. A list of supported languages is provided in the sectionLanguage codes.
(string) (regex: ^[a-z]{2}$) -
email— sender’s email address.
(string<email>) (<= 255) -
browser— name and version of the user’s browser.
(string) (<= 512) -
device_type— user device type.
(string) (<= 512) -
user_agent— identification string of the client application.
(string) (<= 1024)
-
|
Fields marked, are mandatory. |
Example request:
curl https://api.hh-processing.com/api/v1/payment/p2p/payin \
-X POST \
-H 'x-access-timestamp: 1706182847' \
-H 'x-access-merchant-id: 57aff4db-b45d-42bf-bc5f-b7a499a01782' \
-H 'x-access-signature: SIGNATURE' \
-H 'x-access-token: API_KEY' \
-H 'content-type: application/json' \
-d '{
"general": {
"project_id": "57aff4db-b45d-42bf-bc5f-b7a499a01782",
"payment_id": "KES-PAYMENT-123456",
"merchant_callback_url": "https://your-domain.com/internal",
"merchant_success_callback_url": "https://your-domain.com/success",
"merchant_decline_callback_url": "https://your-domain.com/decline",
"redirect_url": "https://your-domain.com/order/page"
},
"payment": {
"method": "mobile-money",
"amount": 150000,
"currency": "KES",
"lifetime": 300,
"description": "Comment about the payment",
"extra_param": "example"
},
"sender": {
"phone": "254700000000",
"bank_symbol": "safaricom-kes"
},
"customer": {
"id": "cus_12345",
"ip_address": "192.0.2.1",
"first_name": "Alex",
"last_name": "Johnson",
"customer_type": "ftd",
"country": "KE",
"email": "customer@example.com",
"browser": "Google Chrome v15.12",
"device_type": "iPhone 15 Pro"
}
}'
Sample answer:
{
"status": "success",
"sub_status": null,
"status_description": null,
"request_id": "16a10539-fcb3-4ff5-a3e2-86625a2dc3d3",
"project_id": "57aff4db-b45d-42bf-bc5f-b7a499a01782",
"payment_id": "KES-PAYMENT-123456",
"integration": {
"form_url": "https://ppage.hh-processing.com/24a9249ae10e15232c123409b625daf7e0ea627c",
"redirect_url": "https://your-domain.com/order/page"
}
}
Response options:
-
status— payment processing status. Status codes and possible valuesstatusAndsub_statusare given in sectionStatus codes.
(string) (<= 32) -
sub_status— sub-status of payment processing.
(string) (<= 32) -
status_description— additional description of status. Used for errors or unsuccessful payment.
(string) (<= 1024) -
request_id— payment identifier generated by the HighHelp payment system.
(string) (<= 32) -
project_id— cashier ID issued by HighHelp.
(string) (<= 32) -
payment_id— payment ID in the merchant’s system.
(string) (<= 255) -
integration— additional meta-information on the payment.-
form_url— link to the payment page. The page displays payment details, instructions and related data.
(string<https-url>) (<= 255) -
redirect_url— a link to redirect the user after completing the payment.
(string<https-url>) (<= 2048)
-
|
Method |
|
Fields marked, are mandatory. |
Application information
POST https://api.hh-processing.com/api/v1/payment/p2p/payin/info
Request body parameters for obtaining the status of a P2P application.
-
general— information about the application.-
project_id— cashier ID issued by HighHelp.
(string) (<= 32) -
payment_id— payment ID in the merchant’s system.
(string) (<= 255)
-
|
Fields marked, are mandatory. |
Example request:
curl https://api.hh-processing.com/api/v1/payment/p2p/payin/info \
-X POST \
-H 'x-access-timestamp: 1706182847' \
-H 'x-access-merchant-id: 57aff4db-b45d-42bf-bc5f-b7a499a01782' \
-H 'x-access-signature: SIGNATURE' \
-H 'x-access-token: API_KEY' \
-H 'content-type: application/json' \
-d '{
"general": {
"project_id": "57aff4db-b45d-42bf-bc5f-b7a499a01782",
"payment_id": "KES-PAYMENT-123456"
}
}'
Sample answer:
{
"status": "success",
"sub_status": null,
"status_description": null,
"request_id": "16a10539-fcb3-4ff5-a3e2-86625a2dc3d3",
"project_id": "57aff4db-b45d-42bf-bc5f-b7a499a01782",
"payment_id": "KES-PAYMENT-123456",
"payment_info": {
"amount": 10000,
"old_amount": 10000,
"initial_amount": 3000,
"currency": "KES",
"lifetime": 300,
"expiration_date": 1721647251,
"method": "mobile-money",
"type": "payin"
},
"integration": {
"form_url": "https://ppage.hh-processing.com/24a9249ae10e15232c123409b625daf7e0ea627c",
"redirect_url": "https://your-domain.com/order/page"
}
}
Response options:
-
status— payment processing status; status codes and meaningsstatusAndsub_statusare given in sectionStatus codes.
(string) (<= 32) -
sub_status— sub-status of payment processing.
(string) (<= 32) -
status_description— additional description of status.
(string) (<= 1024) -
request_id— payment ID in the HighHelp system.
(string) (<= 32) -
project_id— HighHelp cash register identifier.
(string) (<= 32) -
payment_id— payment ID in the merchant’s system.
(string) (<= 255) -
payment_info— payment information.-
amount— ; For more details, see the sectionCurrency codes.
(integer) (1 <= X <= 10000000000000) -
old_amount— the original amount of the application before the appeal. If the user transferred an amount different from the original one toamountthe actual amount is transferred, andold_amount— original. If there is a discrepancy in the amounts, you must create an appeal through HighHelp support.
(integer) (1 <= X <= 10000000000000) -
initial_amount— the amount specified when creating the application. The value does not change.
(integer) (1 <= X <= 10000000000000) -
currency— payment currency code in the formatISO 4217 alpha-3; see sectionCurrency codes.
(string) (regex: ^[A-Z]{3}$) -
lifetime— request lifetime in seconds (no more than 10 minutes).
(integer) (300 <= X <= 600) -
expiration_date— the moment until which the application is valid, in Unix Timestamp (UTC) format.
(integer) (X <= 2^32) -
method— payment method selected when creating the application; method codes are described in sectionPayment methods and codes (H2H).
(string) (<= 32) -
payment_system— code of the payment system used when processing the payment.
(string) (<= 32) -
type— type of operation, for examplepayin; a general list of types is given in the sectionPayment types.
(string) (<= 32)
-
-
recipient_requisites— details to which the transfer is expected. For methodmobile-moneyDetails will not be returned.-
pan— phone number or card to which the transfer is expected from the user.
(string<pan>) (<= 4096) -
card_holder— cardholder’s name as on the card.
(string) (<= 255) -
bank_name— name of the transfer recipient’s bank.
(string) (<= 255) -
bank_country— country code of the recipient bank in the formatISO 3166-1 alpha-2.
(string) (regex: ^[A-Z]{2}$) -
currency— transaction currency code in the formatISO 4217 alpha-3; see sectionCurrency codes.
(string) (regex: ^[A-Z]{3}$)
-
-
integration— additional meta-information on the payment.-
form_url— link to the payment page with details and instructions.
(string<https-url>) (<= 255) -
redirect_url— a link to redirect the user after completing the payment.
(string<https-url>) (<= 2048)
-
Payment statuses
|
Payment by method |
Types of operations and statuses are described in sectionTransaction types and statuses.
Status codes and possible valuesstatusAndsub_statusare given in sectionStatus codes.
| Status | Substatus | Description | Payment status |
|---|---|---|---|
|
The request was rejected due to an error related to the payment parameters. |
Intermediate state |
|
|
|
The correctness of the request is checked before processing begins. |
Intermediate state |
|
Selection of details to which the client needs to transfer the amount from the request. |
Intermediate state |
|
|
Confirmation of payment from the client is expected, since the details have already been provided. |
Intermediate state |
|
|
The client confirmed that he sent the amount to the given details. |
Intermediate state |
|
|
|
The client did not complete the payment for the application during its lifetime ( |
Intermediate state |
|
The client sent an amount different from that specified in the application. |
Intermediate state |
|
|
The application expired, but the client later confirmed the payment and provided a receipt. |
Intermediate state |
|
|
Payment declined |
Final state |
|
|
Payment completed |
Final state |
Alerts
|
It is recommended to implement checking of incoming notifications for duplicates. The idempotency key can be generated using a template |
|
Each alert is digitally signed by HighHelp. The current public key for verifying the signature can be obtained in the admin panel. The key is unique for each cash register. The signature verification algorithm is the reverse of the signature generation algorithm when calling an API. Examples of signature verification are given in sectionsAlert Signing (RSA)AndAlert signature (HMAC). |
There are three types of alerts:
-
Informative— notifications in non-final statuses, if they are provided for a specific product (for example,
processing:*,dispute:*orerror). The URL is specified in the parametermerchant_callback_urlwhen creating an application. -
Successful— notifications for applications completed in status
success. The URL is specified in the parametermerchant_success_callback_url. -
Unsuccessful— notifications for applications completed in status
decline. The URL is specified in the parametermerchant_decline_callback_url.
The composition of the fields and the list of informative statuses depend on the product and integration scenario. See more details.H2H AlertsAndWidget Alerts.
Informative Alerts
Example of an alert with statussuccess:
{
"project_id": "57aff4db-b45d-42bf-bc5f-b7a499a01782",
"general": {
"request_id": "16a10539-fcb3-4ff5-a3e2-86625a2dc3d3",
"payment_id": "KES-PAYMENT-123456"
},
"status": {
"status": "success",
"sub_status": null,
"status_description": null
},
"payment_info": {
"amount": 7000,
"old_amount": 7000,
"initial_amount": 3000,
"currency": "KES",
"lifetime": 300,
"expiration_date": 1721647251,
"updated_date": 1721647251,
"created_date": 1721647251,
"method": "mobile-money",
"type": "payin"
},
"integration": {
"form_url": "https://ppage.hh-processing.com/24a9249ae10e15232c123409b625daf7e0ea627c",
"redirect_url": "https://your-domain.com/order/page"
}
}
|
Details ( |
Successful Alerts
An alert is sent if the application has reached the final successful statussuccess.
{
"project_id": "57aff4db-b45d-42bf-bc5f-b7a499a01782",
"general": {
"request_id": "16a10539-fcb3-4ff5-a3e2-86625a2dc3d3",
"payment_id": "KES-PAYMENT-123456"
},
"status": {
"status": "success",
"sub_status": null,
"status_description": null
},
"payment_info": {
"amount": 700000,
"old_amount": 500000,
"initial_amount": 300000,
"currency": "KES",
"lifetime": 300,
"expiration_date": 1721647251,
"updated_date": 1721647251,
"created_date": 1721647251,
"method": "mobile-money",
"type": "payin"
}
}
Unsuccessful Alerts
An alert is sent if the application is unsuccessful (for example, final statusdecline).
{
"project_id": "57aff4db-b45d-42bf-bc5f-b7a499a01782",
"general": {
"request_id": "16a10539-fcb3-4ff5-a3e2-86625a2dc3d3",
"payment_id": "KES-PAYMENT-123456"
},
"status": {
"status": "decline",
"sub_status": null,
"status_description": "Declined by anti-fraud"
},
"payment_info": {
"amount": 700000,
"old_amount": 700000,
"initial_amount": 300000,
"currency": "KES",
"lifetime": 300,
"expiration_date": 1721647251,
"updated_date": 1721647251,
"created_date": 1721647251,
"method": "mobile-money",
"type": "payin"
}
}
Pay
Creating a payment request
POST https://api.hh-processing.com/api/v1/payment/p2p/payout
Request body parameters when creating a P2P payment to a bank account.
-
general— information about the application.-
project_id— cashier ID issued by HighHelp.
(string) (<= 32) -
payment_id— payment identifier, unique within the merchant’s cash register. Any UTF-8 characters are acceptable.
(string) (<= 255) -
merchant_callback_url— dynamic URL for informative notifications about the intermediate status of an application. Final status notifications are sent to the URLs specified inmerchant_success_callback_urlAndmerchant_decline_callback_url.
(string<https-url>) (<= 2048) -
merchant_success_callback_url— dynamic URL for notifications about successfully completed payments.
(string<https-url>) (<= 2048) -
merchant_decline_callback_url— dynamic URL for notifications about unsuccessful payments.
(string<https-url>) (<= 2048)
-
-
receiver— details of the payment recipient.-
pan— account number or number used for payment. Required parameter ifpayment.method = "account-number".
(string)
(regex: ^\d{8,20}$) -
bank_code— recipient’s bank code. Required parameter ifpayment.method = "account-number". The list of bank codes can be obtained via API/api/v1/bank/all.
(string) (= 12)
(regex: ^\d{12}$) -
card_holder— recipient’s name.
(string) (<= 255)
-
-
payment— information about payment.-
method— payment method code. The list of codes is described in the sectionPayment methods and codes (H2H).
(string) (<= 32) -
payment_system— code of the payment system used when processing the payment.
(string) (<= 32) -
amount— the amount that must be sent to the recipient. The amount is indicated in fractional units; For more details, see the sectionCurrency codes.
(integer) (1 <= X <= 10000000000000) -
currency— payout currency in the formatISO 4217 alpha-3.
(string) (regex: ^[A-Z]{3}$) -
description— payment description or comment. Displayed in the merchant's account.
(string) (<= 255) -
extra_param— an additional parameter for request routing. Configured together with HighHelp specialists.
(string) (regex: ^[A-Za-z0-9_-]{1,16}$)
-
-
customer— information about the sender (merchant’s client).-
id— a unique user identifier in the merchant’s system.
(string) (<= 255) -
ip_address— User IP address.
(string<ip-address>) (<= 255) -
first_name— name of the user receiving the payment.
(string) (<= 255) -
last_name— surname of the user receiving the payment.
(string) (<= 255) -
country— user country code in the formatISO 3166-1 alpha-2; see sectionCountry codes.
(string) (regex: ^[A-Z]{2}$) -
email— user email address.
(string<email>) (<= 255) -
browser— name and version of the user’s browser.
(string) (<= 512) -
device_type— user device type.
(string) (<= 512) -
user_agent— identification string of the client application.
(string) (<= 1024)
-
|
Fields marked, are mandatory. |
Example request:
curl https://api.hh-processing.com/api/v1/payment/p2p/payout \
-X POST \
-H 'x-access-timestamp: 1706182847' \
-H 'x-access-merchant-id: 57aff4db-b45d-42bf-bc5f-b7a499a01782' \
-H 'x-access-signature: SIGNATURE' \
-H 'x-access-token: API_KEY' \
-H 'content-type: application/json' \
-d '{
"general": {
"project_id": "57aff4db-b45d-42bf-bc5f-b7a499a01782",
"payment_id": "PAYOUT-KES-PAYMENT-123456",
"merchant_callback_url": "https://your-domain.com/internal",
"merchant_success_callback_url": "https://your-domain.com/success",
"merchant_decline_callback_url": "https://your-domain.com/decline"
},
"receiver": {
"pan": "012345678901",
"bank_code": "940000000001",
"card_holder": "Alex Johnson"
},
"payment": {
"method": "account-number",
"amount": 2000000,
"currency": "KES",
"description": "Comment about the payout",
"extra_param": "example"
},
"customer": {
"id": "cus_12345",
"ip_address": "192.0.2.1",
"first_name": "Alex",
"last_name": "Johnson",
"country": "KE",
"email": "customer@example.com",
"browser": "Google Chrome v15.12",
"device_type": "iPhone 15 Pro"
}
}'
Sample answer:
{
"status": "success",
"sub_status": null,
"status_description": null,
"request_id": "16a10539-fcb3-4ff5-a3e2-86625a2dc3d3",
"project_id": "57aff4db-b45d-42bf-bc5f-b7a499a01782",
"payment_id": "PAYOUT-KES-PAYMENT-123456"
}
Response options:
-
status— payment processing status; status codes are given in the sectionStatus codes.
(string) (<= 32) -
sub_status— sub-status of payment processing.
(string) (<= 32) -
status_description— additional information on status. Used in case of an error or unsuccessful payment.
(string) (<= 1024) -
request_id— operation identifier in the HighHelp system.
(string) (<= 32) -
project_id— HighHelp cash register identifier.
(string) (<= 32) -
payment_id— payment identifier in the merchant’s system.
(string) (<= 255)
|
Fields marked, are mandatory. |
Information about the payment request
POST https://api.hh-processing.com/api/v1/payment/p2p/payout/info
Request body parameters for obtaining P2P payment status.
-
general— information about the application.-
project_id— HighHelp cash register identifier.
(string) (<= 32) -
payment_id— payment identifier in the merchant’s system.
(string) (<= 255)
-
|
Fields marked, are mandatory. |
Example request:
curl https://api.hh-processing.com/api/v1/payment/p2p/payout/info \
-X POST \
-H 'x-access-timestamp: 1706182847' \
-H 'x-access-merchant-id: 57aff4db-b45d-42bf-bc5f-b7a499a01782' \
-H 'x-access-signature: SIGNATURE' \
-H 'x-access-token: API_KEY' \
-H 'content-type: application/json' \
-d '{
"general": {
"project_id": "57aff4db-b45d-42bf-bc5f-b7a499a01782",
"payment_id": "PAYOUT-KES-PAYMENT-123456"
}
}'
Sample answer:
{
"status": "processing",
"sub_status": "payout_process",
"status_description": null,
"request_id": "16a10539-fcb3-4ff5-a3e2-86625a2dc3d3",
"project_id": "57aff4db-b45d-42bf-bc5f-b7a499a01782",
"payment_id": "PAYOUT-KES-PAYMENT-123456",
"payment_info": {
"amount": 10000,
"old_amount": 10000,
"initial_amount": 3000,
"currency": "KES",
"method": "account-number",
"type": "payout"
}
}
Response options:
-
status— payment processing status; status codes are given in the sectionStatus codes.
(string) (<= 32) -
sub_status— sub-status of payment processing.
(string) (<= 32) -
status_description— additional description of status.
(string) (<= 1024) -
request_id— operation identifier in the HighHelp system.
(string) (<= 32) -
project_id— HighHelp cash register identifier.
(string) (<= 32) -
payment_id— payment identifier in the merchant’s system.
(string) (<= 255) -
payment_info— information about payment.-
amount— ; For more details, see the sectionCurrency codes.
(integer) (1 <= X <= 10000000000000) -
old_amount— the amount of the application before the appeal. If there is a discrepancy with the actual amount, an appeal is required through HighHelp support.
(integer) (1 <= X <= 10000000000000) -
initial_amount— the amount specified when creating the application; the value does not change.
(integer) (1 <= X <= 10000000000000) -
currency— payment currency code in the formatISO 4217 alpha-3; see sectionCurrency codes.
(string) (regex: ^[A-Z]{3}$) -
method— payment method code; method codes are described in sectionPayment methods and codes (H2H).
(string) (<= 32) -
payment_system— code of the payment system used when processing the payment.
(string) (<= 32) -
type— type of operation, for examplepayout; a general list of types is given in the sectionPayment types.
(string) (<= 32)
-
Payment statuses
Types of operations and statuses are described in sectionTransaction types and statuses.
Status codes and possible valuesstatusAndsub_statusare given in sectionStatus codes.
| Status | Sub-status | Description | Payment status |
|---|---|---|---|
error |
The request was rejected due to an error related to the payment parameters. |
Intermediate state |
|
processing |
new |
Checking the request before processing. |
Intermediate state |
requisites |
Selection of a trader who will execute the payment. |
Intermediate state |
|
payout_process |
Making a payment using the specified details. |
Intermediate state |
|
dispute |
incorrect_requisites |
The trader reported incorrect payment details. |
Intermediate state |
payout_failed |
The trader was unable to complete the payment using the correct details. |
Intermediate state |
|
payout_timeout |
The order's lifetime has expired and the trader did not have time to execute the payment. |
Intermediate state |
|
decline |
Payment declined. |
Final state |
|
success |
Payment completed successfully. |
Final state |
Alerts
|
It is recommended to implement checking of incoming notifications for duplicates. The idempotency key can be generated using a template |
|
Each alert is digitally signed by HighHelp. The current public key for verifying the signature can be obtained in the admin panel. The key is unique for each cash register. The signature verification algorithm is the reverse of the signature generation algorithm when calling an API. Examples of signature verification are given in sectionsAlert Signing (RSA)AndAlert signature (HMAC). |
There are three types of alerts:
-
Informative— notifications in non-final statuses, if they are provided for a specific product (for example,
processing:*,dispute:*orerror). The URL is specified in the parametermerchant_callback_urlwhen creating an application. -
Successful— notifications for applications completed in status
success. The URL is specified in the parametermerchant_success_callback_url. -
Unsuccessful— notifications for applications completed in status
decline. The URL is specified in the parametermerchant_decline_callback_url.
The composition of the fields and the list of informative statuses depend on the product and integration scenario. See more details.H2H AlertsAndWidget Alerts.
Informative Alerts
Example of an alert with statusprocessing:payout_process:
{
"project_id": "57aff4db-b45d-42bf-bc5f-b7a499a01782",
"general": {
"request_id": "16a10539-fcb3-4ff5-a3e2-86625a2dc3d3",
"payment_id": "PAYOUT-KES-PAYMENT-123456"
},
"status": {
"status": "processing",
"sub_status": "payout_process",
"status_description": null
},
"payment_info": {
"amount": 7000,
"old_amount": 7000,
"initial_amount": 3000,
"currency": "KES",
"updated_date": 1721647251,
"created_date": 1721647251,
"method": "account-number",
"type": "payout"
}
}
Successful Alerts
An alert is sent when the application reaches the final successful statussuccess.
{
"project_id": "57aff4db-b45d-42bf-bc5f-b7a499a01782",
"general": {
"request_id": "16a10539-fcb3-4ff5-a3e2-86625a2dc3d3",
"payment_id": "PAYOUT-KES-PAYMENT-123456"
},
"status": {
"status": "success",
"sub_status": null,
"status_description": null
},
"payment_info": {
"amount": 7000,
"old_amount": 7000,
"initial_amount": 3000,
"currency": "KES",
"updated_date": 1721647251,
"created_date": 1721647251,
"method": "account-number",
"type": "payout"
}
}
Unsuccessful Alerts
An alert is sent if the application is unsuccessful (statusdecline).
{
"project_id": "57aff4db-b45d-42bf-bc5f-b7a499a01782",
"general": {
"request_id": "16a10539-fcb3-4ff5-a3e2-86625a2dc3d3",
"payment_id": "PAYOUT-KES-PAYMENT-123456"
},
"status": {
"status": "decline",
"sub_status": null,
"status_description": "Declined by anti-fraud"
},
"payment_info": {
"amount": 7000,
"old_amount": 7000,
"initial_amount": 3000,
"currency": "KES",
"updated_date": 1721647251,
"created_date": 1721647251,
"method": "account-number",
"type": "payout"
}
}