CraftPayDocs
API reference

Orders

Purchases in the store, newest first. Test purchases have test: true.

List orders

GET/v1/orders API key

status is PENDING, PAID, FAILED or REFUNDED. provider is STRIPE, PAYPAL, FREE or TEST.

Query parameters

NameTypeDescription
limitintegerOrders per page, 1–100. Default 25.
starting_afterstringThe id of the last order on the previous page.
statusstringOnly orders with this status, e.g. paid.
playerstringOnly orders for this Minecraft name (not case-sensitive).
testbooleantrue = 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 key

One 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