You can configure a callback URL by including your specified URL as a parameter in the API request body. This setup allows you to receive real-time notifications for both payouts and pay-ins, ensuring seamless integration with your system.
For payins collected via payment links, you can configure your callback url as part of the params field while creating a payment link. Once a payment will be made to your account
using the payment link, you will receive a response on the callback.
Copy
{ "params": { "amount": 10, "depositId": "Axxxxxxxxxx1", "email": "hello@niobi.co", "failureReason": { "failureCode": "Failure Code from MNO in case of failure", "failureMessage": "Descriptive message on the failure reason in case of failure" }, "fees": 0.3, "message": "Transaction summary message", "mobile": "254711111111", "name": "Username", "payment_link_id": null, "payment_link_payment_id": null, "reference" : " Transaction id", "status": "success", "statusCode": "000000", "third_party_reference_1": "TRANS1", "third_party_reference_2": null, }}
{ "client_id": "Your client id", "sender": "Integration title", "salt": "Random salt value", "timestamp": "Timestamp", "params": { "amount": "Amount deposited", "currency":"Transaction currency", "depositId": "Transaction id of the deposit", "email": "Your email address", "failureReason": { "failureCode": "Failure Code from MNO in case of failure", "failureMessage": "Descriptive message on the failure reason in case of failure" }, "mobile": "Mobile that made the deposit", "message": "Message describing deposit success or failure", "name": "Account username", "payment_link_id": null, "payment_link_payment_id": null, "reference" : " Transaction id", "status": "Status of the deposit", "statusCode": "Status code of the transaction" "third_party_reference_1": "TRANS1", "third_party_reference_2": null, }, "signature": "Request signature"}
Please note that the “depositId” field represnets the transaction id of the deposit.
{ "client_id": "Your client id", "sender": "Integration title", "salt": "Random salt value", "timestamp": "Timestamp", "params": { "account": "The account number of the account the payment was made from", "account_number" : "Account number for paybill payment method", "amount": "Amount paid out", "currency":"Currency of the payment", "fee": "Fees incurred for the payment", "message": "Message describing the transaction status", "mobile": "Mobile number of the recipient", "payee": "Full name of the recipient", "payment_channel": "Payment channel", "payment_reference": "Unique information passed by user to identify transaction", "payoutId": "Unique transaction id of the payment", "ref": "Transaction reference shared by provider", "statusCode": "Status code of the transaction", "third_party_reference_1": "External reference", "third_party_reference_2": "External reference", "transaction_date": "Date payment was made", "transaction_detail": "Message with details of the transaction", "type": "Transaction type" }, "signature": "Request signature"}
Please note that the “depositId” field represents the transaction id of the deposit.
For deposit transactions, a callback response is typically sent if a 2-minute timeout occurs on our end. Once the transaction is successful, a successful callback will be sent, and the transaction status will be updated accordingly.
Copy
{ "client_id": "Your client id", "sender": "Integration title", "salt": "Random salt value", "timestamp": "Timestamp", "params": { "depositId": "Transaction id of the deposit", "name": "Account username", "email": "Your email address", "amount": "Amount deposited", "mobile": "Mobile that made the deposit", "third_party_reference_1": "1st Third party reference", "third_party_reference_2": "2nd Third party reference", "status": "timeout", "statusCode": "000006" "message": "Transaction failed due to timeout." }, "signature": "Request signature"}
You can resend callbacks in case of a delivery failure through the payment portal. To do this, access the specific transaction and click on “Resend Callback.”