Webhooks Events

For Payouts, there are three payout-related events that can be configured for webhooks:

PAYOUT INITIATED

  • Description: This event is triggered when a payout process is initiated. The webhook will provide details such as the payout amount, recipient information, and the initial status of the payout.

  • Use Case: Track when payouts begin, update internal records, or notify the recipient that a payout is in process.

  • Payload Data:

{
    event: "PAYOUT INITIATED",
    data: {
        updatedAt: "2024-09-02T10:15:30.000Z",
        createdAt: "2024-09-01T14:22:10.000Z",
        id: "PAY17072CD",
        orderReference: "order_123456",
        amount: "20000.00",
        currency: "TZS",
        fee: "2360.00",
        status: "SUCCESS",
        channel: "BANK TRANSFER", // or MOBILE MONEY
        channelProvider: "Equity Bank Tanzania Limited",
        settlementType: "ACH", // or RTGS // if available
        notes: "Payment for invoice no. 123456", // if available
        beneficiary: {
            accountNumber: "123456789",
            accountName: "John Doe",
            swiftNumber: "ABC1234XYZ", // if available
            routingNumber: "110000000", // if available
            beneficiaryMobileNumber: "255600000000", // if available
            beneficiaryEmail: "johndoe@example.com" // if available
        }
    }
}

PAYOUT REFUNDED

  • Description: This event occurs when a payout is refunded, due to an issue with the payout process. The webhook will include the refund details and the original payout information.

  • Use Case: Automatically update records, notify involved parties of the refund, and handle the refund process within your system.

  • Payload Data:

{
    event: "PAYOUT REFUNDED",
    data: {
        updatedAt: "2024-09-02T10:15:30.000Z",
        createdAt: "2024-09-01T14:22:10.000Z",
        id: "PAY17072CD",
        orderReference: "order_123456",
        amount: "20000.00",
        currency: "TZS",
        fee: "2360.00",
        status: "REFUNDED",
        channel: "BANK TRANSFER", // or MOBILE MONEY
        channelProvider: "Equity Bank Tanzania Limited",
        settlementType: "ACH", // or RTGS // if available
        notes: "Payment for invoice no. 123456", // if available
        refund: { // reverse details
            message: "The payout was refunded due to insufficient balance.",
            refundedAt: "2024-09-02T09:30:00.000Z",
        },
        beneficiary: {
            accountNumber: "123456789",
            accountName: "John Doe",
            swiftNumber: "ABC1234XYZ", // if available
            routingNumber: "110000000", // if available
            beneficiaryMobileNumber: "255600000000", // if available
            beneficiaryEmail: "johndoe@example.com" // if available
        }
    }
}

PAYOUT REVERSED

  • Description: This event is triggered when a payout is reversed, typically due to an error or a dispute. The webhook will contain details about the reversal, the original payout, and any related information.

  • Use Case: Adjust records, communicate with recipients, or trigger further actions in response to the reversal.

  • Payload Data:

{
    event: "PAYOUT REVERSED",
    data: {
        updatedAt: "2024-09-02T10:15:30.000Z",
        createdAt: "2024-09-01T14:22:10.000Z",
        id: "PAY17072CD",
        orderReference: "order_123456",
        amount: "20000.00",
        currency: "TZS",
        fee: "2360.00",
        status: "REVERSED",
        channel: "BANK TRANSFER", // or MOBILE MONEY
        channelProvider: "Equity Bank Tanzania Limited",
        settlementType: "ACH", // or RTGS // if available
        notes: "Payment for invoice no. 123456", // if available
        reverse: { // reverse details
            message: "The payout was reversed due to invalid account information.",
            reversedAt: "2024-09-02T09:30:00.000Z",
            reversedWithFee: true // whether funds were returned with fee or not
        },
        beneficiary: {
            accountNumber: "123456789",
            accountName: "John Doe",
            swiftNumber: "ABC1234XYZ", // if available
            routingNumber: "110000000", // if available
            beneficiaryMobileNumber: "255600000000", // if available
            beneficiaryEmail: "johndoe@example.com" // if available
        }
    }
}

Last updated