commerce
POST /v1/carts/{cartId}/checkout
Check out a cart — place and charge an order.
אימות
שלחו מפתח API כאסימון נושא (bearer token). על המפתח לכלול את הרשאה billing.payment.manage; מפתח שאינו כולל אותה יידחה בסטטוס 403, ולא 404.
נקודת קצה זו אינה דורשת מזהה ארגון. המפתח שלך כבר מזהה את הארגון שאליו הוא שייך, והתגובה מוגבלת אליו בלבד.
נסה זאת
החלף כל דבר בסוגריים זוויתיים בערכים משלך, ואת מציין מיקום המפתח במפתח מלוח הבקרה שלך.
curl -X POST https://api.zinndigital.com/v1/carts/{cartId}/checkout \
-H "Authorization: Bearer zdk_live_…" \
-H "Content-Type: application/json" \
-d '{ }'מחובר? קונסולת ה-API בלוח הבקרה שלך מזינה את מזהה הארגון האמיתי שלך ואת המפתח שלך, ומריצה את הבקשה מול ה-API הפיזי כך שתוכל לראות את התגובה בפועל. פתח נקודת קצה זו במסוף ה-API
פרטים
Converts the cart to an immutable order: re-prices every line, re-verifies each domain availability token (a stale/taken one is a 409, with no charge), computes tax, places the order and charges it wallet-first. Fulfilment (provisioning/registration) then runs asynchronously as a Temporal workflow — this call never blocks on it (§2.9); poll the order status or the resource it produces. An Idempotency-Key header is required: a retried checkout returns the same order and never charges twice. Requires billing.payment.manage.
פרמטרים
| שם | סוג | נדרש | מה זה |
|---|---|---|---|
cartId (path) | Uuid | כן | The cart's id. |
Idempotency-Key (header) | string | לא | Client-generated key that makes an unsafe request replay-safe: the server stores the first response and returns it verbatim for repeats. |
גוף הבקשה
| שם | סוג | נדרש | מה זה |
|---|---|---|---|
billing_country | object | לא | ISO 3166-1 alpha-2 country for the tax jurisdiction. |
availability_tokens | object | לא | domain_name → the availability token issued by the domain search endpoint. Required for every domain_register line; each is re-verified at checkout and a stale one is a 409. |
gateway | object | לא | The payment rail the customer chose at checkout — one of the codes getPaymentOptions returned for this organization and currency. Omit it and the order is charged wallet-first… |
expected_total_minor | object | לא | The order total the checkout page displayed to the customer, in minor units. Send it and checkout refuses with 422 when the basket no longer comes to that figure; omit it… |
תשובה
| שם | סוג | נדרש | מה זה |
|---|---|---|---|
id | Uuid | כן | UUIDv7 identifier — sortable by creation time (docs/02 §8). |
org_id | Uuid | כן | UUIDv7 identifier — sortable by creation time (docs/02 §8). |
human_ref | string | כן | Human-friendly order reference. |
status | OrderStatus | כן | An order's lifecycle state (docs/31 §4.3). |
currency | CurrencyCode | כן | ISO 4217 currency code (money is minor units + this code — CLAUDE.md §2.8). |
subtotal_minor | integer | כן | — |
tax_minor | integer | כן | — |
discount_minor | integer | כן | — |
total_minor | integer | כן | — |
billing_country | object | לא | — |
placed_at | object | לא | — |
created_at | string | כן | — |
updated_at | string | לא | — |
lines | OrderLine[] | כן | — |
payments | Payment[] | כן | — |
שגיאות שנקודה קצה זו עשויה להחזיר
401 · 403 · 404 · 409 · 422 · 429