Sepetler ve Checkout
Kargo yöntemleri
Mağazanın aktif kargo yöntemlerini, belirli bir sepet için geçerli fiyatla birlikte listeleme.
Markdown olarak görüntüleKargo yöntemleri satıcı tarafından yapılandırılır. Her birinin sabit bir amount değeri ve opsiyonel bir free_over_amount eşiği vardır: sepetin brüt ürün toplamı eşiğe ulaştığında, o sepet için kargo ücretsizdir. Bu endpoint her yöntemi, effective_amount alanı verilen sepete göre önceden çözümlenmiş olarak döndürür; böylece storefront, ücretsiz kargo kuralını yeniden uygulamak zorunda kalmadan kargo seçim arayüzünü render edebilir.
Kargo yalnızca kargolanabilir satırlar içeren sepetler için geçerlidir: ürünü requires_shipping: true olan satırlar. shipping_method_id alanının ne zaman zorunlu olduğu için Checkout sayfasına bakın.
Kargo yöntemleri satıcı tarafından yapılandırılır. Her birinin sabit bir amount değeri ve opsiyonel bir free_over_amount eşiği vardır: sepetin brüt ürün toplamı eşiğe ulaştığında, o sepet için kargo ücretsizdir. Bu endpoint her yöntemi, effective_amount alanı verilen sepete göre önceden çözümlenmiş olarak döndürür; böylece storefront, ücretsiz kargo kuralını yeniden uygulamak zorunda kalmadan kargo seçim arayüzünü render edebilir.
Kargo yalnızca kargolanabilir satırlar içeren sepetler için geçerlidir: ürünü requires_shipping: true olan satırlar. shipping_method_id alanının ne zaman zorunlu olduğu için Checkout sayfasına bakın.
GET /v1/api/commerce/carts/{id}/shipping-methods
Mağazanın aktif kargo yöntemlerini, ada göre sıralı ve bu sepet için geçerli fiyatla birlikte listeler. commerce:read gerektirir. Sepet sahipliği uygulanır (Sepetler sayfasına bakın). Liste sayfalanmaz.
Parametreler
Path
| Ad | Tür | Zorunlu | Açıklama |
|---|---|---|---|
id | string (UUID) | evet | Sepet id'si. Arama için her durum kabul edilir, ancak fiyat bağlamı yalnızca active bir sepet için anlamlıdır. |
Header'lar
| Ad | Tür | Zorunlu | Açıklama |
|---|---|---|---|
X-Customer-Token | string | hayır | Sepet misafir olmayan bir müşteriye bağlıysa zorunludur. |
Response alanları
Zarf {"data": [...]} şeklindedir. Sepet ve sipariş para değerlerinin aksine buradaki tutarlar, para nesneleri değil, minör birim cinsinden düz tamsayılardır; para birimi, sepetin para birimidir (EUR).
| Ad | Tür | Zorunlu | Açıklama |
|---|---|---|---|
id | string (UUID) | her zaman | Kargo yöntemi id'si. Checkout'ta shipping_method_id olarak gönderin. |
name | string | her zaman | Görünen ad. |
amount | integer | her zaman | Minör birim cinsinden taban fiyat. |
free_over_amount | integer veya null | her zaman | Kargonun ücretsiz hale geldiği brüt ürün toplamı (minör birim) veya yöntem hiçbir zaman ücretsiz olmuyorsa null. |
effective_amount | integer | her zaman | Bu sepetin şu anda ödeyeceği fiyat: sepetin brüt ürün toplamı free_over_amount değerine ulaştığında 0, aksi halde amount. |
effective_amount, sepetin şu anki haline ilişkin bir anlık görüntüdür: sepet içeriğini değiştirmek onu değiştirebilir; bu nedenle kargo seçim arayüzü görünürken sepet değişikliklerinden sonra yeniden çekin.
Hatalar
| Durum | Gövde | Ne zaman |
|---|---|---|
| 404 | {"message": "..."} | Bilinmeyen sepet id'si veya başka bir mağazanın sepeti. |
| 403 | {"message": "This cart belongs to a customer."} | Sahiplik kontrolü başarısız. |
| 403 | scope, modül veya askıya alma gövdesi | Sepetler sayfasına bakın. |
| 429 | {"message": "Too Many Attempts."} | Rate limit aşıldı. |
curl https://api.borkol.com/v1/api/commerce/carts/9d3f2a10-6b7c-4e6d-9f21-8a54c1d2e3f4/shipping-methods \
-H "Authorization: Bearer {api_key}"const res = await fetch(
`https://api.borkol.com/v1/api/commerce/carts/${cartId}/shipping-methods`,
{ headers: { Authorization: `Bearer ${apiKey}` } }
);
const { data: methods } = await res.json();{
"data": [
{
"id": "3c4d5e6f-7a8b-4c9d-0e1f-2a3b4c5d6e7f",
"name": "Express",
"amount": 995,
"free_over_amount": null,
"effective_amount": 995
},
{
"id": "4d5e6f7a-8b9c-4d0e-1f2a-3b4c5d6e7f8a",
"name": "Standard",
"amount": 495,
"free_over_amount": 5000,
"effective_amount": 0
}
]
}GET /v1/api/commerce/carts/{id}/shipping-methods
Mağazanın aktif kargo yöntemlerini, ada göre sıralı ve bu sepet için geçerli fiyatla birlikte listeler. commerce:read gerektirir. Sepet sahipliği uygulanır (Sepetler sayfasına bakın). Liste sayfalanmaz.
Parametreler
Path
| Ad | Tür | Zorunlu | Açıklama |
|---|---|---|---|
id | string (UUID) | evet | Sepet id'si. Arama için her durum kabul edilir, ancak fiyat bağlamı yalnızca active bir sepet için anlamlıdır. |
Header'lar
| Ad | Tür | Zorunlu | Açıklama |
|---|---|---|---|
X-Customer-Token | string | hayır | Sepet misafir olmayan bir müşteriye bağlıysa zorunludur. |
Response alanları
Zarf {"data": [...]} şeklindedir. Sepet ve sipariş para değerlerinin aksine buradaki tutarlar, para nesneleri değil, minör birim cinsinden düz tamsayılardır; para birimi, sepetin para birimidir (EUR).
| Ad | Tür | Zorunlu | Açıklama |
|---|---|---|---|
id | string (UUID) | her zaman | Kargo yöntemi id'si. Checkout'ta shipping_method_id olarak gönderin. |
name | string | her zaman | Görünen ad. |
amount | integer | her zaman | Minör birim cinsinden taban fiyat. |
free_over_amount | integer veya null | her zaman | Kargonun ücretsiz hale geldiği brüt ürün toplamı (minör birim) veya yöntem hiçbir zaman ücretsiz olmuyorsa null. |
effective_amount | integer | her zaman | Bu sepetin şu anda ödeyeceği fiyat: sepetin brüt ürün toplamı free_over_amount değerine ulaştığında 0, aksi halde amount. |
curl https://api.borkol.com/v1/api/commerce/carts/9d3f2a10-6b7c-4e6d-9f21-8a54c1d2e3f4/shipping-methods \
-H "Authorization: Bearer {api_key}"const res = await fetch(
`https://api.borkol.com/v1/api/commerce/carts/${cartId}/shipping-methods`,
{ headers: { Authorization: `Bearer ${apiKey}` } }
);
const { data: methods } = await res.json();{
"data": [
{
"id": "3c4d5e6f-7a8b-4c9d-0e1f-2a3b4c5d6e7f",
"name": "Express",
"amount": 995,
"free_over_amount": null,
"effective_amount": 995
},
{
"id": "4d5e6f7a-8b9c-4d0e-1f2a-3b4c5d6e7f8a",
"name": "Standard",
"amount": 495,
"free_over_amount": 5000,
"effective_amount": 0
}
]
}effective_amount, sepetin şu anki haline ilişkin bir anlık görüntüdür: sepet içeriğini değiştirmek onu değiştirebilir; bu nedenle kargo seçim arayüzü görünürken sepet değişikliklerinden sonra yeniden çekin.
Hatalar
| Durum | Gövde | Ne zaman |
|---|---|---|
| 404 | {"message": "..."} | Bilinmeyen sepet id'si veya başka bir mağazanın sepeti. |
| 403 | {"message": "This cart belongs to a customer."} | Sahiplik kontrolü başarısız. |
| 403 | scope, modül veya askıya alma gövdesi | Sepetler sayfasına bakın. |
| 429 | {"message": "Too Many Attempts."} | Rate limit aşıldı. |