AtourinAtourin
Home
API Reference
Home
API Reference
  • API Reference

    • Autentikasi (Auth)
    • Theme & Konfigurasi Aplikasi
    • Home & Discovery
    • Produk & Pengalaman Wisata
    • Destinasi & Area Wisata
    • Homestay (Akomodasi)
    • ARTI (Atourin Regenerative Tourism Initiative)
    • Promo & Voucher
    • Pencarian (Search)
    • Upload File
    • Transaksi & Pesanan (Orders)
    • Pembayaran (Payments)
    • Asuransi (Insurance)
    • Ulasan (Reviews)
    • Profil Pengguna (Profile)
    • Daftar Keinginan (Wishlist)
    • Notifikasi (Notifications)
    • FAQ (Pertanyaan Umum)
    • Blog & Artikel

Transaksi & Pesanan (Orders)

Dokumentasi API untuk alur pemesanan produk, mulai dari pembuatan draf, pengisian data (checkout), hingga finalisasi pembayaran.

Endpoint Overview

MethodEndpointDeskripsi
POST/ordersMembuat pesanan baru (Status: DRAFT).
GET/ordersMengambil daftar riwayat pesanan pengguna.
GET/orders/:tokenMengambil detail pesanan berdasarkan token.
PUT/orders/:tokenMemperbarui data pesanan (Checkout / Pilih Pembayaran).
GET/orders/:token/paymentMengambil metode pembayaran yang tersedia.
POST/orders/:token/cancelMembatalkan pesanan.

1. Create Order (Draft)

Memulai proses pemesanan dengan memilih produk dan tanggal. Status awal adalah DRAFT.

  • URL: /orders
  • Method: POST
  • Headers: Authorization: Bearer {{token}}
  • Body (JSON):
{
    "product_id": "uuid-product",
    "items": [
        {
            "ticket_id": "uuid-ticket",
            "quantity": 2,
            "book_start_date": "2026-03-10"
        }
    ]
}
  • Response (200 OK):
{
    "status": true,
    "code": 200,
    "data": {
        "order_token": "uuid-token",
        "total_amount": 1000000,
        "payment_status": "DRAFT"
    }
}

2. Checkout (Update Data)

Mengisi data pemesan dan data peserta (ticket holders).

  • URL: /orders/:token
  • Method: PUT
  • Body (JSON):
{
    "status": "CHECKOUT",
    "order_user": {
        "full_name": "Budi Atourin",
        "email": "budi@example.com",
        "phone_number": "08123456789"
    },
    "ticket_holders": [
        { "full_name": "Peserta 1", "email": "p1@example.com" }
    ],
    "insurance": true,
    "promo_code": "PROMOBAHAGIA"
}

3. Select Payment Method

Finalisasi pilihan metode pembayaran (misal: BCA Virtual Account). Status akan berubah menjadi PENDING.

  • URL: /orders/:token
  • Method: PUT
  • Body (JSON):
{
    "status": "PENDING",
    "bank_code": "BCA_VA"
}
  • Response (200 OK):
{
    "status": true,
    "code": 200,
    "data": {
        "payment_invoice": {
            "external_id": "INV-123456",
            "payment_url": "https://...",
            "va_number": "888123456789",
            "amount": 1005000
        }
    }
}

4. Cancel Order

Membatalkan pesanan yang masih dalam status DRAFT atau PENDING.

  • URL: /orders/:token/cancel
  • Method: POST
  • Response (200 OK):
{
    "status": true,
    "code": 200,
    "msg": "Order cancelled successfully"
}

🔥 Uji Coba API (Simulator)

Gunakan simulator di bawah ini untuk mencoba seluruh endpoint di atas secara langsung. Anda dapat mengubah URL, Method, Headers, dan Body sesuai kebutuhan.

Last Updated: 3/27/26, 5:05 AM
Contributors: Priyono Atourin
Prev
Upload File
Next
Pembayaran (Payments)