> ## Documentation Index
> Fetch the complete documentation index at: https://dev-docs.pagoramp.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Webhooks

Pagoramp sends a webhook event to your configured `webhookUrl` whenever a transaction status changes.

### Outbound Webhook (Pagoramp → your server)

When a transaction status changes, Pagoramp posts to your merchant `webhookUrl` with the following payload.

### **Payload**

```text expandable theme={null}
{
    "event": "success | failed | pending | partially_paid | chargeback",
    "data": {
      "uuid": "txn_xxxxxxxxxxxxxxxx",
      "transactionType": "Debit",
      "reference": "order_abc123",
      "status": "Success | Failed | Pending | Partially Paid | Chargeback",
      "status_description": "succeeded",
      "sourceAmount": 5000,
      "sourceCurrency": "USD",
      "destinationAmount": 5000,
      "destinationCurrency": "USD",
      "exchangeRate": 1,
      "paymentGatewayReference": "pi_xxxxxxxxxxxxxxxx",
      "paymentChannel": "card",
      "description": "Pro plan subscription",
      "transactionDate": "2025-01-01T00:00:00.000Z",
      "createdAt": "2025-01-01T00:00:00.000Z",
      "updatedAt": "2025-01-01T00:01:00.000Z",

      "customer": {
        "email": "customer@example.com",
        "firstname": "Jane",
        "lastname": "Doe"
      },

      "card": {
        "token": "card_xxxxxxxxxxxxxxxx"
      },

      "sender_details": {
        "accountNumber": "0123456789",
        "accountName": "Jane Doe",
        "bankCode": "058"
      },

      "metadata": {
        "userId": "user_789",
        "paymentGateway": "Stripe"
      },

      "sourcePlatformFee": 75,
      "destinationPlatformFee": 75,
      "sourceGatewayFee": 200.3,
      "destinationGatewayFee": 200.3,
      "sourceTotalFee": 275.3,
      "destinationTotalFee": 275.3,
      "sourceTotalAmount": 5275.3,
      "destinationTotalAmount": 5275.3,

      "fees": {
        "sourcePlatformFee": 75,
        "destinationPlatformFee": 75,
        "sourceGatewayFee": 200.3,
        "destinationGatewayFee": 200.3,
        "sourceTotalFee": 275.3,
        "destinationTotalFee": 275.3,
        "currency": "USD",
        "exchangeRate": 1
      },

      "isUnderpayment": false,
      "isOverpayment": false,
      "outstandingSourceAmount": 0,
      "outstandingDestinationAmount": 0,

      "underpayment": {
        "sourceExpectedAmount": 5000,
        "sourceReceivedAmount": 4000,
        "sourceOutstandingAmount": 1000,
        "sourceCurrency": "USD",
        "destinationExpectedAmount": 5000,
        "destinationReceivedAmount": 4000,
        "destinationOutstandingAmount": 1000,
        "destinationCurrency": "USD",
        "sourceAmount": 5000,
        "destinationAmount": 5000
      },

      "overpayment": {
        "sourceExpectedAmount": 5000,
        "sourceReceivedAmount": 5500,
        "sourceExcessAmount": 500,
        "sourceCurrency": "USD",
        "destinationExpectedAmount": 5000,
        "destinationReceivedAmount": 5500,
        "destinationExcessAmount": 500,
        "destinationCurrency": "USD",
        "sourceAmount": 5000,
        "destinationAmount": 5000
      },

      "hasChargeback": false,
      "chargebackFee": 15,
      "chargebackFeeCurrency": "USD",

      "chargeback": {
        "disputeId": "dp_xxxxxxxxxxxxxxxx",
        "reason": "fraudulent",
        "status": "needs_response",
        "amount": 5000,
        "currency": "usd",
        "fee": 15,
        "feeCurrency": "USD"
      }
    }
  }
```

### **Event Types**

| **Event** | **Description** |
| :- | :- |
| **success** | Payment completed successfully |
| **failed** | Payment failed or was declined |
| **pending** | Payment is awaiting confirmation |
| **chargeback** | Chargeback occured on payment |


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.