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

# balance.top_up

> Fired when your balance is topped up

## Event: `balance.top_up`

Sent when your partner balance is topped up.

## Payload

```json theme={null}
{
  "transactionId": "lt_abc123",
  "amount": 100000,
  "ref": "Deposit (net of 500 funding fee)"
}
```

| Field | Type | Description |
| - | - | - |
| `transactionId` | string | Ledger transaction ID for the credit |
| `amount` | number | Top-up amount in minor units (cents) |
| `ref` | string | Reference describing the source of the top-up |

## Response

Your endpoint must return a **2xx** status code within **30 seconds** to acknowledge receipt. Any non-2xx response or timeout triggers the [retry policy](/partner/webhooks#retry-policy).

| Status code | Meaning |
| - | - |
| `200` | Event received and processed |
| `202` | Event received, will process asynchronously |
| Any non-2xx | Delivery failed — will retry |

## Example handler

```javascript theme={null}
app.post("/webhooks/contro", (req, res) => {
  const eventType = req.headers["x-contro-event"];

  if (eventType === "balance.top_up") {
    const { transactionId, amount, ref } = req.body;
    // Record the top-up in your system
  }

  res.status(200).send("OK");
});
```
