Endpoint pesanan

Setiap pesanan dibuat dengan UUID yang kamu generate sendiri. UUID itu jadi idempotency key: kalau dikirim ulang, kamu menerima pesanan aslinya dan tidak ditagih dua kali. Setelah itu, status bisa dibaca per pesanan, per batch berisi maksimal 50 pesanan, atau sebagai daftar dengan paginasi.

POST

/orders/create

Buat pesanan

Buat pesanan baru. Kamu wajib mengirim UUID unik sebagai order_id untuk idempotency. Saldo dompet langsung dipotong.

Batas request5000 req / 60 detik per akun

Catatan: Nilai order_id adalah idempotency key kamu. Kalau kamu mencoba ulang dengan UUID yang sama, pesanan yang sudah ada akan dikembalikan, bukan dibuat duplikatnya.

Body request

NamaTipeWajibDeskripsiContoh
order_idstring (UUID)YaUUID unik untuk pesanan ini (format apa pun: v1, v4, v7, dan lainnya). Dipakai sebagai idempotency key.01912345-6789-7abc-8def-0123456789ab
sub_category_idnumberYaID subkategori produk.999
quantitynumberYaJumlah unit yang dipesan (bilangan bulat positif).1
requirementsobjectYaData pengiriman ke pemain. Sertakan semua field dari endpoint Ambil Syarat Kategori.{"player_id": "123456789", "server": "Asia"}
expected_unit_pricestringTidakProteksi harga. Kalau harga saat ini lebih tinggi dari nilai ini, pesanan ditolak.0.950000
Permintaan
curl -s -X POST "https://shop2topup.com/api/endpoints/v1/orders/create" \
  -H "Authorization: Bearer YOUR_KEY_ID.YOUR_KEY_SECRET" \
  -H "Content-Type: application/json" \
  -d '{
  "order_id": "01912345-6789-7abc-8def-0123456789ab",
  "sub_category_id": 999,
  "quantity": 1,
  "requirements": {
    "player_id": "123456789",
    "server": "Asia"
  },
  "expected_unit_price": 0.95
}'
Contoh respons
{
  "success": true,
  "order": {
    "order_id": "01912345-6789-7abc-8def-0123456789ab",
    "status": "pending",
    "player_id": "123456789",
    "player_name": "ProGamer99",
    "subcategory_name": "FF 100 Diamonds",
    "quantity": 1,
    "charged_amount": "0.950000",
    "currency": "USD",
    "created_at": "2024-06-15T12:00:00Z"
  }
}
GET

/orders/:orderId

Cek Status Pesanan

Menampilkan status terkini dan detail pesanan tertentu.

Batas request3 req / 60 detik per akun + order_id

Catatan: Status pesanan bisa pending, completed (selesai), refunded atau partial; partial artinya sebagian unit sudah terkirim dan sisanya di-refund. Untuk tiap unit, sub_transactions[].status berisi pending, completed atau refunded; unit tetap pending sampai terkirim atau di-refund. Kolom sub_transactions[].id adalah nomor urut unit dalam pesanan (1…n), bukan ID database. Kalau ada, retry_count dan max_retries sudah deprecated dan nilainya selalu 0.

Parameter path

NamaTipeWajibDeskripsiContoh
orderIdstring (UUID)YaID pesanan yang ingin dicek.01912345-6789-7abc-8def-0123456789ab
Permintaan
curl -s "https://shop2topup.com/api/endpoints/v1/orders/01912345-6789-7abc-8def-0123456789ab" \
  -H "Authorization: Bearer YOUR_KEY_ID.YOUR_KEY_SECRET"
Contoh respons
{
  "success": true,
  "order": {
    "order_id": "01912345-6789-7abc-8def-0123456789ab",
    "status": "completed",
    "player_id": "123456789",
    "player_name": "ProGamer99",
    "subcategory_name": "FF 100 Diamonds",
    "quantity": 1,
    "charged_amount": "0.950000",
    "currency": "USD",
    "created_at": "2024-06-15T12:00:00Z",
    "completed_at": "2024-06-15T12:00:05Z",
    "vouchers": [],
    "sub_transactions": [
      {
        "id": 1,
        "status": "completed",
        "player_id": "123456789",
        "player_name": "ProGamer99",
        "amount": "0.950000",
        "created_at": "2024-06-15T12:00:00Z",
        "completed_at": "2024-06-15T12:00:05Z"
      }
    ]
  }
}
POST

/orders/batch

Ambil pesanan sekaligus

Ambil beberapa pesanan sekaligus berdasarkan ID-nya. Maksimal 50 ID pesanan per request.

Batas request2 req / 60 detik per akun

Body request

NamaTipeWajibDeskripsiContoh
order_idsstring[]YaArray UUID pesanan (maks. 50).["uuid-1", "uuid-2"]
Permintaan
curl -s -X POST "https://shop2topup.com/api/endpoints/v1/orders/batch" \
  -H "Authorization: Bearer YOUR_KEY_ID.YOUR_KEY_SECRET" \
  -H "Content-Type: application/json" \
  -d '{
  "order_ids": [
    "uuid-1",
    "uuid-2"
  ]
}'
Contoh respons
{
  "success": true,
  "orders": [
    {
      "order_id": "01912345-6789-7abc-8def-0123456789ab",
      "status": "completed",
      "charged_amount": "0.950000"
    }
  ],
  "not_found": [
    "uuid-that-does-not-exist"
  ]
}
GET

/orders

Daftar Pesanan

Ambil daftar pesanan kamu dengan paginasi. Kamu juga bisa memfilter berdasarkan status dan rentang tanggal.

Batas request2 req / 60 detik per akun

Parameter query

NamaTipeWajibDeskripsiContoh
pagenumberTidakNomor halaman (default: 1).1
limitnumberTidakJumlah hasil per halaman, 1-100 (default: 50).50
statusstringTidakFilter berdasarkan status: pending, completed, refunded, partial.completed
created_afterstring (ISO 8601)TidakTampilkan pesanan yang dibuat setelah tanggal ini.2024-01-01T00:00:00Z
created_beforestring (ISO 8601)TidakTampilkan pesanan yang dibuat sebelum tanggal ini.2024-12-31T23:59:59Z
Permintaan
curl -s "https://shop2topup.com/api/endpoints/v1/orders?page=1&limit=50&status=completed&created_after=2024-01-01T00:00:00Z&created_before=2024-12-31T23:59:59Z" \
  -H "Authorization: Bearer YOUR_KEY_ID.YOUR_KEY_SECRET"
Contoh respons
{
  "success": true,
  "orders": [
    {
      "order_id": "01912345-6789-7abc-8def-0123456789ab",
      "status": "completed",
      "subcategory_name": "FF 100 Diamonds",
      "quantity": 1,
      "charged_amount": "0.950000",
      "created_at": "2024-06-15T12:00:00Z"
    }
  ],
  "pagination": {
    "page": 1,
    "limit": 50,
    "total": 1,
    "total_pages": 1
  }
}

Coba kirim request langsung dari halaman ini

Tempel API key untuk memanggil endpoint ini secara live. Key hanya tersimpan di tab browser ini dan cuma dikirim ke API itu sendiri.

Enter your API key to use the interactive playground. Get your API key

Pilih endpoint

1
2
Order Details

Enter your API key above to try this endpoint.

Kalau baru pertama kali pakai platform ini, mulai dari ringkasan API top up game untuk reseller, atau baca ringkasan program reseller SHOP2TOPUP untuk tahu cara kerja akun partner.

Referensi API pesanan: buat, cek, batch, dan daftar pesanan