Transaction Notification

Receive asynchronous updates for purchases and refunds using the Bamboo Transaction Webhook. Includes full transaction and customer details.

The Transaction Webhook notifies merchants asynchronously about the final status of any transaction processed through Bamboo, including purchases and refunds. It provides complete details for reconciliation, auditing, and post-settlement analysis.


Notification Parameters

ParameterTypeDescription
TransactionIdintegerUnique identifier of the transaction.
TransactionTypestringTransaction type: Purchase or Refund.
TransactionStatusIdintegerInternal identifier of the transaction status.
StatusstringCurrent transaction status (e.g., Approved, Rejected).
ErrorCodestringError code if the transaction failed.
AmountnumberTransaction amount.
CurrencystringCurrency in ISO-4217 format.
InstallmentsintegerNumber of installments if applicable.
UniqueIdstringMerchant-defined unique identifier for reconciliation.
DescriptionstringDescription of the transaction result.
TargetCountryIsostringCountry where the transaction was processed (ISO-3166-1).
CreateddateDate and time when the transaction was created (ISO-8601 format).
CustomerobjectInformation of the payer.
PaymentMediaobjectPayment method details (brand, type, issuer).

Example: Purchase Notification

{
  "TransactionId": 379245,
  "TransactionType": "Purchase",
  "TransactionStatusId": 4,
  "Status": "Rejected",
  "ErrorCode": "TR301",
  "Amount": 5000,
  "Currency": "UYU",
  "Installments": "1",
  "UniqueId": "",
  "Order": "1",
  "Description": "Description",
  "UrlNotify": "https://dummystore.com/checkout/notifications",
  "TargetCountryIso": "UY",
  "Created": "2024-02-07T18:10:45.667",
  "MetadataOut": { },
  "Customer": {
    "CustomerId": 321559,
    "Email": "[email protected]",
    "DocumentTypeId": 1,
    "DocNumber": "52960268",
    "LastName": "Cardenas Contreras",
    "FirstName": "Rocio"
  },
  "PaymentMedia": {
    "PaymentMediaId": 2,
    "Brand": "MasterCard",
    "PaymentMediaType": "CreditCard",
    "IssuerBank": "ADMINISTRADORA DE TARJETAS DE CREDITO, (A.T.C.), S.A.",
    "Bin": "558900",
    "Last4": "0001",
    "Owner": "JOHN DOE"
  }
}

Example: Refund for APM - Notification

{
    "TransactionId": 148906700189999616,
    "TransactionType": "Refund",
    "TransactionStatusId": 1,
    "Status": "Approved",
    "Description": "Automation Test",
    "ApprovalCode": "10",
    "AdditionalData": null,
    "ErrorCode": null,
    "Created": "2025-02-14T21:42:03.88",
    "UrlNotify": null,
    "TargetCountryIso": "CO",
    "Customer": {
        "CustomerId": 148905131889422016,
        "Email": "[email protected]",
        "DocumentTypeId": 11,
        "DocNumber": "1234567890",
        "LastName": "Torres",
        "FirstName": "Lisseth"
    },
    "PaymentMedia": {
        "PaymentMediaId": 538,
        "Brand": "PseAvanza",
        "PaymentMediaType": "BankTransfer",
        "IssuerBank": null,
        "Bin": null,
        "Last4": null,
        "Owner": null
    },
    "UniqueId": "",
    "Order": "Automation-999",
    "Amount": -2058800,
    "Installments": 1,
    "Currency": "COP",
    "MetadataOut": {
        "RefundBankAccountNumber": "132132********2132",
        "RefundBankId": "1063",
        "RefundBankName": "BANCO FINANDINA S.A.",
        "RefundBankAccountType": "Saving"
    }
}

Response Expected

The merchant’s webhook endpoint must return HTTP 200 (OK) to confirm that the notification was successfully received and processed. If Bamboo receives any other status code or no response, the notification will be retried according to the Retry Policy.

Response CodeMeaning
200Notification successfully received and processed.
4xxClient-side error (invalid endpoint, payload rejection, or failed signature validation).
5xxTemporary server error. Bamboo will retry the notification automatically.

Next Steps