API reference
Orders
Purchases in the store, newest first. Test purchases have test: true.
List orders
GET
/v1/orders API keystatus is PENDING, PAID, FAILED or REFUNDED. provider is STRIPE, PAYPAL, FREE or TEST.
Query parameters
| Name | Type | Description |
|---|---|---|
limit | integer | Orders per page, 1–100. Default 25. |
starting_after | string | The id of the last order on the previous page. |
status | string | Only orders with this status, e.g. paid. |
player | string | Only orders for this Minecraft name (not case-sensitive). |
test | boolean | true = only test purchases, false = no test purchases. |
Request
curl https://api.craftpay.net/v1/orders?status=paid&limit=10 \
-H "Authorization: Bearer cp_sk_..."Response · 200
{
"data": [
{
"id": "cm3kb1z7e0009",
"player": "Notch",
"email": "notch@example.com",
"status": "PAID",
"provider": "STRIPE",
"test": false,
"total": { "amount": 499, "currency": "EUR" },
"discount": { "amount": 0, "currency": "EUR" },
"vat": { "amount": 100, "currency": "EUR" },
"checkoutId": null,
"coupon": null,
"giftCard": null,
"receiptNo": 1042,
"createdAt": "2026-11-11T17:19:41.000Z",
"paidAt": "2026-11-11T17:20:00.000Z",
"items": [
{
"packageId": "cm3k9x8qw0004",
"name": "VIP",
"quantity": 1,
"unitPrice": { "amount": 499, "currency": "EUR" }
}
]
}
],
"hasMore": false
}Get an order
GET
/v1/orders/{id} API keyOne order with all its items.
Request
curl https://api.craftpay.net/v1/orders/cm3kb1z7e0009 \
-H "Authorization: Bearer cp_sk_..."Response · 200
{
"data": {
"id": "cm3kb1z7e0009",
"player": "Notch",
"status": "PAID",
"total": { "amount": 499, "currency": "EUR" },
"items": [ … ]
}
}Stuck? Write to mail@craftpay.net