# Billing & credits

> What your firm has bought from us, what is left of it, and every entry that moved the balance.

Source: https://www.propexecutor.com/docs/billing
Whole reference in one file: https://www.propexecutor.com/doc.md

What your firm has bought from us and what is left of it. This is the **platform → your firm** relationship only. There is no endpoint here for what you charge your traders — see [what is not available](https://www.propexecutor.com/docs/not-available).

## Credits

`GET /v1/credits` · **Planned** · scope `accounts:read`

<!-- 200 OK -->
```json
{
  "granted": 1250,
  "used": 1184,
  "remaining": 66,
  "tier": "growth"
}
```

`remaining = granted − used`. It can go negative after a refund, which blocks provisioning and nothing else.

## Credit ledger

`GET /v1/credits/ledger` · **Planned** · scope `accounts:read`

Append-only, newest first. Every entry that ever moved your balance, so “where did our credits go” has an answer you can audit yourself.

| kind | Sign | Means |
| --- | --- | --- |
| `plan_grant` | + | Your plan's accounts, granted once when it settled. |
| `pack_grant` | + | A top-up pack. |
| `upgrade_grant` | + | The quota difference an upgrade added. |
| `account_debit` | −1 | One trading account provisioned. Never reversed. |
| `refund_correction` | − | A refunded or disputed purchase being clawed back. |
| `admin_adjustment` | ± | A manual correction by us, always with a note. |

## Purchases

`GET /v1/purchases` · **Planned** · scope `accounts:read`

Your plan, packs and upgrades, with what each granted and when it settled. Amounts are in the minor unit of their currency. The payer’s email is never returned.

> **Buying happens in the panel**
> There is no endpoint to buy credits — checkout runs in the admin panel so the payment path stays in one place, with one verified webhook deciding what settled. These endpoints are read-only on purpose.
