marketplace
POST /v1/marketplace/vendor/sales/{sale_id}/deliver
Mark the work delivered — starts the buyer's acceptance window.
Pengesahan
Hantar kunci API sebagai token pembawa. Titik akhir ini tidak menyatakan kebenaran tertentu dalam spesifikasi, jadi berikan kunci anda kebenaran minimum yang diperlukan dan semak respons tersebut daripada membuat andaian.
Titik akhir ini tidak memerlukan id organisasi. Kunci anda telah mengenal pasti organisasi kepunyaannya, dan respons dis skopkan kepadanya.
Cuba
Gantikan apa sahaja di dalam kurungan sudut dengan nilai anda sendiri, dan pemegang tempat kunci dengan kunci dari papan pemuka anda.
curl -X POST https://api.zinndigital.com/v1/marketplace/vendor/sales/{sale_id}/deliver \
-H "Authorization: Bearer zdk_live_…"Sudah log masuk? Konsol API dalam papan pemuka anda mengisi id organisasi sebenar dan kunci anda sendiri, serta menjalankan permintaan terhadap API langsung supaya anda boleh melihat respons sebenar. Buka penamat ini dalam konsol API
Butiran
Delivery is the **seller's claim**, never the end of the sale, and it moves no money: it starts the buyer's acceptance window and nothing else. Redelivery after a revision **restarts** the clock, measured from the redelivery rather than from the original — the buyer's window is a window on the delivery in front of them. Without that, a seller redelivering on day four of a five-day window would hand the buyer one day to check a whole revision. Scoped to the SELLER's org. A buyer marking their own purchase delivered would be starting the clock that releases the seller's money before anything was sent.
Parameter
| Nama | Jenis | Diperlukan | Apakah ia |
|---|---|---|---|
sale_id (path) | string | Ya | — |
Respons
| Nama | Jenis | Diperlukan | Apakah ia |
|---|---|---|---|
id | Uuid | Ya | UUIDv7 identifier — sortable by creation time (docs/02 §8). |
state | MarketplaceSaleState | Ya | Where one purchased package is in its life (docs/82 §3). The terminal state is `accepted`, not `delivered`: delivery is the vendor's claim, acceptance is the buyer's act, and it… |
listing_id | Uuid | Ya | UUIDv7 identifier — sortable by creation time (docs/02 §8). |
listing_title | string | Ya | — |
package_name | string | Ya | — |
delivery_days | integer | Tidak | — |
revisions_included | integer | Tidak | — |
revision_count | integer | Tidak | — |
billing_mode | MarketplaceBillingMode | Tidak | How an offer is charged (docs/82 §2a). A property of the OFFER, chosen by the seller from what the listing type permits — a $200 one-off audit and $150/month of link building si… |
billing_interval | object | Tidak | — |
period_index | integer | Tidak | — |
gross_minor | integer | Ya | What the buyer paid for this line, excluding tax. |
commission_bps | integer | Tidak | — |
commission_minor | integer | Tidak | — |
vendor_net_minor | integer | Tidak | gross - commission, always. Never a second independent rounding: a half-penny landing in neither figure is too small to find and too persistent to ignore. |
currency | CurrencyCode | Ya | ISO 4217 currency code (money is minor units + this code — CLAUDE.md §2.8). |
auto_accepts | boolean | Tidak | — |
accept_by | object | Tidak | — |
delivered_at | object | Tidak | — |
accepted_at | object | Tidak | — |
accepted_automatically | boolean | Tidak | — |
last_revision_reason | string | Tidak | What the buyer asked to be changed. The seller MUST be able to read this — it is the instruction, and a rejection without one produces a second rejection. |
last_revision_at | object | Tidak | — |
created_at | string | Tidak | — |
Ralat yang boleh dikembalikan oleh titik akhir ini
401 · 404 · 422