The B2B API provides an IPN (Instant Payment notification) webhooks mechanism for notifying transaction events that occur asynchronously.

IPN BaaS Webhooks

For the BaaS service, notifications will be sent when an update occurs for a Fiat Withdrawal or a Fiat Deposit.

IPN Fiat Deposit Webhook

When a Fiat Deposit is credited to a specific Fiat Account, an IPN will be sent with the following structure:

{
    "event_type": "FIAT_DEPOSIT.COMPLETED",
    "issued_datetime": "2025-02-14T15:11:47.910383Z",
    "payload":   {
        "id": "8142b065-79c4-4f48-9e33-11b17bc658d4",
        "created_at": "2024-04-23T14:48:33.895551Z",
        "updated_at": "2024-04-23T14:49:25.342111Z",
        "currency_code": "ARS",
        "end_user_id": "customer_10",
        "amount": "12345.67",
        "status": "COMPLETED",
        "refunded": false,
        "refund_fiat_withdrawal_id": null,
        "origin_account_identifier": "0000465160000000100092",
        "origin_account_holder_id": "20388003629",
        "origin_account_holder_name": "Carlos Pineda"
    }
}
KeyTypeDescription
event_typestringIndicate which type of event the currently sent webhook corresponds to, in this case FIAT_DEPOSIT.COMPLETED
issued_datetimestringIndicate the datetime the webhook was sent.
payloadstringPayload with the information about the completed Fiat Deposit.
idstringUnique ID for this Fiat Deposit.
created_atstringIndicates the creation date of the Fiat Deposit.
updated_atstringIndicates the update date of the Fiat Deposit.
currency_codestringIndicates the currency that has been deposited.
end_user_idstringEnd user’s external ref, usually a uuid. Indicates the end user that has received the Fiat Deposit.
amountstringIndicates the amount deposited.
statusstringIndicates Fiat Deposit status.
refundedbooleanIndicates if the fiat deposit was refunded.
refund_fiat_withdrawal_idstring or nullIndicates the Fiat Withdrawal id associated with the refund, could be null.
origin_account_identifierstringIndicates the identifier of the fiat deposit’s issuing account.
origin_account_holder_idstringIndicates the identification of the fiat deposit’s issuing account holder.
origin_account_holder_namestringIndicates the name of the fiat deposit’s issuing account holder.

If a Fiat Deposit is blocked due to limits, an IPN will be sent with the event_type value equal to: FIAT_DEPOSIT.BLOCKED_LIMIT_EXCEEDED.

If a Fiat Deposit is refunded, an IPN will be sent with the following information:

{
    "event_type": "FIAT_DEPOSIT.CANCELLED",
    "issued_datetime": "2025-02-14T15:11:47.910383Z",
    "payload":   {
        "id": "8142b065-79c4-4f48-9e33-11b17bc658d4",
        "created_at": "2024-04-23T14:48:33.895551Z",
        "updated_at": "2024-04-23T14:49:25.342111Z",
        "currency_code": "ARS",
        "end_user_id": "customer_10",
        "amount": "12345.67",
        "status": "CANCELLED",
        "refunded": true,
        "refund_fiat_withdrawal_id": "6f907606-14f8-421c-80e2-e9c2c777aeec",
        "origin_account_identifier": "0000465160000000100092",
        "origin_account_holder_id": "20388003629",
        "origin_account_holder_name": "Carlos Pineda"
    }
}

IPN Fiat Withdrawal Webhook

When a Fiat Whitdrawal is crcompleted, an IPN will be sent with the following structure:

{
    "event_type": "FIAT_WITHDRAWAL.COMPLETED",
    "issued_datetime": "2025-02-14T15:11:47.910383Z",
    "payload":   {
        "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
        "transaction_id": "0fec1e58-b197-4052-99cf-2218496c5482",
        "created_at": "2019-08-24T14:15:22Z",
        "updated_at": "2019-08-24T14:18:22Z",
        "end_user_id": "customer_10",
        "amount": "12345.67",
        "status": "COMPLETED",
        "external_ref": "ac243840-ac04-4b3a-9efb-176554d4a029",
        "beneficiary_fiat_account_id": "4123e456-e89b-12d3-a456-4bedc4266abc",
        "is_fiat_deposit_refund": false,
        "refunded_fiat_deposit": null
    }
}
KeyTypeDescription
event_typestringIndicate which type of event the currently sent webhook corresponds to, in this case FIAT_WITHDRAWAL.COMPLETED
issued_datetimestringIndicate the datetime the webhook was sent.
payloadstringPayload with the information about the completed Fiat Withdrawal.
idstringUUID used as Fiat Withdrawal identifier.
created_atstringIndicates the creation date of the Fiat Withdrawal.
updated_atstringIndicates the update date of the Fiat Withdrawal.
currency_codestringIndicates the asset name involved in the Fiat Withdrawal.
end_user_idstringEnd user’s external ref, usually a uuid. Identifies the user that owns this operation.
amountstringIndicates the fiat amount withdrawed.
statusstringSpecifies the Fiat Withdrawal status.
external_refstringClient side identification reference. Usually a UUID.
beneficiary_fiat_account_idstring or nullIndicates the Fiat Withdrawal id associated with the refund, could be null.
is_fiat_deposit_refundbooleanIndicates the identifier of the fiat deposit’s issuing account.
refunded_fiat_depositstringIndicates the identification of the fiat deposit’s issuing account holder.

If a Fiat Withdrawal is not completed due to an external issue, it will remain in a CANCELLED state, and an IPN will be sent with event_type equal to: FIAT_WITHDRAWAL.CANCELLED.

When a Fiat Withdrawal is created, it will be in a PENDING status, and an IPN will be sent with event_type equal to: FIAT_WITHDRAWAL.PENDING.