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

# Transactions

> Read card authorizations, refunds and settlements, filter them by card, status or date, and understand why an authorization was declined.

Every authorization, refund and cash withdrawal on a card creates a transaction. Use transactions to show spending in your app, reconcile settlements and find out why a payment was declined.

## List transactions

```bash theme={null}
curl "https://api.pointzero.io/v1/transactions?card_id=card_01JZ8N2K4M&status=settled&created_gte=2026-10-01T00:00:00Z" \
  -H "Authorization: Bearer $POINTZERO_API_KEY"
```

Results are returned newest first and are [paginated](/guides/pagination).

| Filter | Description |
| - | - |
| `card_id` | Transactions of one card. |
| `customer_id` | Transactions across all cards of a customer. |
| `status` | `authorized`, `declined`, `reversed` or `settled`. |
| `currency` | Card currency, for example `EUR`. |
| `created_gte` / `created_lt` | Time range, as ISO 8601 timestamps. |

## The transaction object

```json theme={null}
{
  "id": "txn_01JZ8P7H2R",
  "object": "transaction",
  "card_id": "card_01JZ8N2K4M",
  "customer_id": "cus_01JZ8M4X7K",
  "type": "purchase",
  "amount": 1299,
  "currency": "EUR",
  "merchant_amount": 1299,
  "merchant_currency": "EUR",
  "status": "settled",
  "decline_reason": null,
  "merchant": {
    "name": "ACME STORE",
    "mcc": "5411",
    "city": "Valencia",
    "country": "ES"
  },
  "channel": "in_store",
  "created_at": "2026-10-05T10:15:00Z",
  "settled_at": "2026-10-06T02:00:00Z"
}
```

`type` is `purchase`, `refund` or `cash_withdrawal`. `channel` is `online`, `in_store`, `contactless` or `atm`. For payments in a foreign currency, `merchant_amount` and `merchant_currency` hold the original amount. See [Amounts and currencies](/guides/amounts-and-currencies).

## Statuses

| Status | Meaning |
| - | - |
| `authorized` | Approved and waiting for settlement. |
| `declined` | Rejected. `decline_reason` explains why. |
| `reversed` | The authorization was cancelled before settlement. |
| `settled` | Final. `settled_at` is set. Only settled transactions can be [disputed](/guides/disputes). |

## Decline reasons

| `decline_reason` | What to check |
| - | - |
| `insufficient_funds` | Available balance. |
| `card_frozen` | The card is `frozen`. [Unfreeze](/api-reference/cards/unfreeze-a-card) it. |
| `spending_limit_exceeded` | Card [spending limits](/guides/spending-and-authorization-controls#spending-limits). |
| `authorization_control` | Merchant, country or channel [rules](/guides/spending-and-authorization-controls#authorization-controls). |
| `incorrect_pin` | The PIN entered was wrong. See [PIN](/guides/physical-cards#pin). |
| `suspected_fraud` | Declined by fraud screening. |
| `other` | Any other reason. Contact support with the transaction ID. |


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