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

# Fund Card

> POST /api/v1/cards/{card_id}/fund - Add balance to a card

Add funds to an issued card.

## Endpoint

```text theme={null}
POST /api/v1/cards/{card_id}/fund
```

## Path Parameters

<ParamField path="card_id" type="string" required>
  The card identifier returned during card creation or listing.
</ParamField>

## Request Body

The reviewed public contract accepts a flexible JSON payload here. In practice, a safe funding request should include:

* `amount_minor`
* `currency`
* `transaction_reference`
* `idempotency_key`

Legacy `reference` may still be accepted by some downstream services, but new integrations should prefer `transaction_reference`.

## Example Request

```bash theme={null}
curl -X POST https://api.usezentra.com/api/v1/cards/card_123/fund \
  -H "Authorization: Bearer YOUR_SECRET_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "amount_minor": 500000,
    "currency": "NGN",
    "transaction_reference": "card_fund_card_123_001",
    "idempotency_key": "card_fund_card_123_001"
  }'
```

## Response Notes

* The reviewed public OpenAPI models this as an accepted async-style operation.
* Use stable business references and idempotency keys for retries and reconciliation.

## Next Steps

<CardGroup cols={2}>
  <Card title="Card Balance" icon="wallet" href="/api-reference/cards/balance">
    Check the current funded balance
  </Card>

  <Card title="Funding History" icon="clock" href="/api-reference/cards/funding-history">
    Review historical funding events
  </Card>
</CardGroup>
