Ana içeriğe geç

Sipariş güncelleme

Mevcut bir sipariş kaydını güncellemek için bu endpoint kullanılır. Yalnızca değiştirmek istediğiniz alanları gönderirsiniz; gönderilmeyen alanlara dokunulmaz.

İstek

PATCH /api/orders/{id}
Accept: application/json
Authorization: Bearer YOUR_API_KEY
Content-Type: application/json

PUT de kabul edilir; davranış aynıdır.

Güncellenebilir alanlar

Tüm alanlar isteğe bağlıdır — ancak gönderdiğiniz alan geçerli bir değer taşımak zorundadır (örneğin platform_id gönderiyorsanız boş olamaz). sale_channel_id güncellenemez: sipariş oluşturulduğu kanala bağlı kalır.

AlanTipAçıklama
platform_idstringSizdeki sipariş numarası.
platform_d_idstringGörünen sipariş numarası.
platform_urlstringSiparişin sizdeki adresi.
platform_statusstringSipariş durumu.
platform_datestringSipariş tarihi.
totalnumberSipariş toplamı.
currencystringPara birimi.
payment_methodstringÖdeme yöntemi.
payment_platformstringÖdeme altyapısı.
payment_statusstringÖdeme durumu — bkz. Sabitler.
payment_datestringÖdeme tarihi.
platform_customer_idstringMüşterinin sizdeki ID’si.
platform_customer_emailstringMüşteri e-postası.
customer_notestringMüşteri notu.
invoice_urlstringHarici fatura adresi.
billingAddressobjectFatura adresi — aşağıdaki nesne kurallarına bakın.
shippingAddressobjectTeslimat adresi.
linesarraySipariş satırları — aşağıdaki uyarıya bakın.
shipmentobjectKargo bilgisi.
Nesne ve dizi alanları kısmi güncellenmez, değiştirilir

lines gönderirseniz mevcut tüm satırlar silinip gönderdikleriniz yeniden oluşturulur — bu yüzden satırların tamamını gönderin, yalnızca değişeni değil. Aynı şekilde billingAddress, shippingAddress ve shipment nesneleri de bütün olarak yazılır.

shippingAddress veya shipment alanını boş (null / []) gönderirseniz ilgili kayıt silinir.

billingAddress gönderirseniz

type, address, city, district, country ve tax_number alanları zorunlu olur. type: "company" ise title, type: "person" ise name ve surname da zorunludur.

lines[] gönderirseniz

Her satırda platform_id, name, quantity, unit, unit_price ve tax_rate zorunludur; sku, discount_type, discount ve description isteğe bağlıdır. En az bir satır bulunmalıdır. Alan açıklamaları için bkz. sipariş oluşturma.

Örnek istek gövdesi

{
"platform_status": "completed",
"payment_status": "paid",
"payment_date": "2026-07-31 09:20:00",
"total": 2499.90,
"lines": [
{
"platform_id": "LINE-1",
"sku": "SKU-001",
"name": "Mavi T-Shirt",
"quantity": 2,
"unit": "C62",
"unit_price": 1000,
"discount_type": "percentage",
"discount": 10,
"tax_rate": 20,
"description": "Beden: M"
},
{
"platform_id": "LINE-2",
"sku": "SKU-002",
"name": "Siyah Kot Pantolon",
"quantity": 1,
"unit": "C62",
"unit_price": 1500,
"discount_type": "amount",
"discount": 500,
"tax_rate": 20
}
],
"shipment": {
"company_title": "Yurtiçi Kargo",
"company_tax_number": "9860008925",
"delivery_date": "2026-08-02"
}
}

Örnek istekler

<?php
$body = ['platform_status' => 'completed', 'payment_status' => 'paid'];
$ch = curl_init('https://app.faturaentegrator.com/api/orders/30');
curl_setopt_array($ch, [
CURLOPT_CUSTOMREQUEST => 'PATCH',
CURLOPT_POSTFIELDS => json_encode($body),
CURLOPT_HTTPHEADER => [
'Accept: application/json',
'Authorization: Bearer YOUR_API_KEY',
'Content-Type: application/json',
],
CURLOPT_RETURNTRANSFER => true,
]);
$data = json_decode(curl_exec($ch), true);
curl_close($ch);

Örnek yanıt

Güncellenmiş sipariş, tek sipariş detayı ile aynı yapıda döner.