Dashboard

The callback specification allows you to receive instant notifications about payment status from the payment gateway. A callback object is sent in JSON, similar to what you would get in response to a typical API request. Below is the body of the Payment Gateway webhook.

API ARCHITECTURE: REST
API Method: POST
Endpoint: To be updated on the API settings.

To set up your webhook from the Merchant Portal, navigate to the Profile and Settings, select the API Integrations, and click "Setup Callback". Enter the URL, select the API from the dropdown and hit save. Feel free to use https://webhook-test.com/ to get a URL for testing webhook delivery.

IP Addresses

Ensure to whitelist the following IP addresses to ensure that you only receive webhooks from Hydrogen. Webhooks outside of this IP should be blocked and are not valid.

  1. 20.54.14.223
  2. 20.67.189.4

JSON Request

{
  "id": "02400000-f841-2ad1-26ef-08dce2d6f08f",
  "amount": 110,
  "chargedAmount": 110,
  "currency": "NGN",
  "customerEmail": "[email protected]",
  "narration": null,
  "description": "Dev transaction",
  "status": "Paid",
  "transactionStatus": "Paid",
  "transactionRef": "testingfeevattransfers3",
  "processorResponse": null,
  "createdAt": "2024-10-02T12:39:56.6559975",
  "paidAt": "2024-10-02T12:39:56.6559975",
  "ip": null,
  "paymentType": "BankTransfer",
  "authorizationObject": null,
  "meta": "Dev payment",
  "fees": 1.1,
  "vat": 0.08,
  "recurringCardToken": null
}

Response

FieldTypeDescription
idStringUnique identifier for the transaction.
amountDecimalThe total amount of the transaction
chargedAmountDecimalThe actual amount charged for the transaction.
currencyStringThe currency in which the transaction is conducted (NGN, USD or GBP).
customerEmailStringEmail address of the customer making the transaction.
narrationStringA brief description or note about the transaction.
statusStringThe current state of the transaction. Possible values are Pending, Failed, and Paid.
transactionRefStringReference code for the transaction, useful for tracking and identification.
createdAtDateTimeThe timestamp when the transaction was created.
paidAtDateTimeThe timestamp when the transaction was done.
ipStringThe IP address from which the transaction was initiated.
paymentTypeStringThe method of payment used for the transaction (e.g., Card or BankTransfer).
feesDecimalAny fees associated with the transaction, in the smallest unit of the currency.
metaStringAdditional metadata about the transaction, useful for custom information.