> For the complete documentation index, see [llms.txt](https://pivot-payment.gitbook.io/pivot-docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://pivot-payment.gitbook.io/pivot-docs/api-references/api-lists/account-and-balance/top-ups/top-up-callback.md).

# Top Up Callback

## Method and URL

<mark style="color:green;">`POST`</mark> [www.yourcompany.com/payment\\\_callback\\\_url](http://www.yourcompany.com/payment\\_callback\\_url)

## Request

**Header Request**

<table><thead><tr><th>Parameter </th><th width="117">Data Type</th><th width="131">Requirement</th><th>Description</th></tr></thead><tbody><tr><td>X-API-Key</td><td>String</td><td>M</td><td>Callback API Key, an additional API Key used specifically for receiving callbacks</td></tr><tr><td>Content-Type</td><td>String</td><td>M</td><td>application/JSON</td></tr><tr><td>Accept</td><td>String</td><td>M</td><td>application/JSON</td></tr></tbody></table>

**Request Body**

```json
{
  "event": "MERCHANT-TOP-UP.SUCCESS",
  "data": {
    "merchantId": "293b3e10-a973-42dc-864a-46f615dd0690",
    "merchantName": "Test Widya",
    "accountName": "DISBURSEMENT",
    "amount": {
      "currency": "IDR",
      "value": "100000"
    },
    "balanceBefore": {
      "currency": "IDR",
      "value": "500000"
    },
    "balanceAfter": {
      "currency": "IDR",
      "value": "600000"
    },
    "paymentMethod": {
      "type": "VIRTUAL_ACCOUNT"
    },
    "paymentMethodOptions": {
      "virtualAccount": {
        "channel": "PERMATA",
        "virtualAccountNumber": "7664011855050926",
        "virtualAccountName": "TW"
      }
    },
    "transactionTime": "2025-05-14T08:52:20.832448Z"
  }
}
```

**Detail Parameter Request**

<table><thead><tr><th width="217.5302734375">Parameter</th><th width="120">Data Type</th><th width="134.3671875">Requirement</th><th>Description</th></tr></thead><tbody><tr><td>event</td><td>String</td><td>M</td><td>Event name: <br>MERCHANT-TOP-UP.SUCCESS</td></tr><tr><td>merchantId</td><td>String</td><td>M</td><td>Unique merchant ID given by Pivot</td></tr><tr><td>merchantName</td><td>String</td><td>M</td><td>Merchant Name information</td></tr><tr><td>accountName</td><td>String</td><td>M</td><td>Topped-up Account Balance </td></tr><tr><td>amount</td><td>Object</td><td>M</td><td></td></tr><tr><td><ul><li>currency</li></ul></td><td>String</td><td>M</td><td>Currency code in ISO 4217 Format, e.g. USD, IDR</td></tr><tr><td><ul><li>value</li></ul></td><td>String</td><td>M</td><td>Top Up amount value</td></tr><tr><td>balanceBefore</td><td>Object</td><td>M</td><td>Balance before Top Up</td></tr><tr><td><ul><li>currency</li></ul></td><td>String</td><td>M</td><td>Currency code in ISO 4217 Format, e.g. USD, IDR</td></tr><tr><td><ul><li>value</li></ul></td><td>String</td><td>M</td><td>Balance before Top Up value</td></tr><tr><td>balanceAfter</td><td>Object</td><td>M</td><td>Balance after Top Up</td></tr><tr><td><ul><li>currency</li></ul></td><td>String</td><td>M</td><td>Currency code in ISO 4217 Format, e.g. USD, IDR</td></tr><tr><td><ul><li>value</li></ul></td><td>String</td><td>M</td><td>Balance after Top Up value</td></tr><tr><td>paymentMethod</td><td>Object</td><td>M</td><td></td></tr><tr><td><ul><li>type</li></ul></td><td>String</td><td>M</td><td><p>Available payment method types for Top Up, possible values are</p><p><mark style="color:orange;"><code>VIRTUAL_ACCOUNT</code></mark></p></td></tr><tr><td>paymentMethodOptions</td><td>Object</td><td>M</td><td></td></tr><tr><td><ul><li>virtualAccount</li></ul></td><td>Object</td><td>M</td><td></td></tr><tr><td><blockquote><ul><li>channel</li></ul></blockquote></td><td>String</td><td>M</td><td><p>Virtual Account Bank Name, possible values are</p><ul><li>DANAMON</li><li>BNI</li><li>MANDIRI</li><li>BSI</li><li>BNC</li><li>CIMB</li><li>BRI</li><li>PERMATA</li></ul></td></tr><tr><td><blockquote><ul><li>virtualAccountNumber</li></ul></blockquote></td><td>String</td><td>M</td><td>The corresponding virtual account number that can be used to Top Up</td></tr><tr><td><blockquote><ul><li>virtualAccountName</li></ul></blockquote></td><td>String</td><td>M</td><td><p>For Main Account &#x26; Non KYC Sub-Account: </p><p>Virtual Account Name will use merchant name <br><br>For KYC Sub-Account:<br>Virtual Account Name will use Sub-Account name </p></td></tr><tr><td>transactionTime</td><td>String</td><td>M</td><td>When Top Up transaction time with format YYYY-MM-DDTHH:MM:SSZ</td></tr></tbody></table>
