E-Ticaret

checkout

4 uç · /api/shop/v1/checkout

İstek örnekleri ucun GERÇEK metodu ve yolundan üretilir. 4 ucun elle doğrulanmış gövde örneği henüz yok; o uçlarda iskelet gövdesizdir — uydurma bir alan yazmıyoruz.

POST/api/shop/v1/storefront/checkout

Checkout

Oturum
İstek
curl -X POST "https://{slug}.shop.blesyum.app/api/shop/v1/storefront/checkout" \
  -H "Authorization: Bearer <oturum-token>" \
  -H "Accept: application/json"
Yanıt
{
  "data": "…",
  "trace_id": "01JC…"
}
GET/api/shop/v1/storefront/checkout/custom-fields

Storefront

Oturum
İstek
curl -X GET "https://{slug}.shop.blesyum.app/api/shop/v1/storefront/checkout/custom-fields" \
  -H "Authorization: Bearer <oturum-token>" \
  -H "Accept: application/json"
Yanıt
{
  "data": "…",
  "trace_id": "01JC…"
}
POST/api/shop/v1/storefront/checkout/express

"Hemen al": tek-variant için sepet+oturum oluştur (mode=express). Opsiyonel adres/email prefill →

Oturum

tek-tık-hazır. Varyant geçersiz/pasif → 404. qty≤0 → 400. Money-safe (totals sunucu-hesaplı).

İstek
curl -X POST "https://{slug}.shop.blesyum.app/api/shop/v1/storefront/checkout/express" \
  -H "Authorization: Bearer <oturum-token>" \
  -H "Accept: application/json"
Yanıt
{
  "data": "…",
  "trace_id": "01JC…"
}
POST/api/shop/v1/storefront/checkout/express/place

Express place: checkout_flow::place'e delege (money-safe + idempotent + TOCTOU exactly-once). Adres/

Oturum

email eksik → 400 missing_data (fallback: normal /checkout ile doldur). Aynı oturum tekrar → idempotent.

İstek
curl -X POST "https://{slug}.shop.blesyum.app/api/shop/v1/storefront/checkout/express/place" \
  -H "Authorization: Bearer <oturum-token>" \
  -H "Accept: application/json"
Yanıt
{
  "data": "…",
  "trace_id": "01JC…"
}
Bu sayfa işine yaradı mı?