Takip numarasıyla gönderim (fulfillment) oluşturma
Bir siparişin açık fulfillment order’larını okuyun, ardından fulfillmentCreate ile kargo firması, takip numarası ve URL’siyle gönderim oluşturun.
- API
- Admin GraphQL API
- İşlemler
- order.fulfillmentOrders, fulfillmentCreate
- Erişim yetkileri
- write_merchant_managed_fulfillment_orders, write_assigned_fulfillment_orders ya da write_third_party_fulfillment_orders
- Yerini aldığı REST çağrısı
- POST /admin/api/fulfillments.json
- API sürümü
- 2026-10
- Son kontrol
Kısaca
Ürünleri gönderildi olarak işaretlemek için siparişin durumu OPEN olan fulfillmentOrders’ını okuyun, ardından fulfillmentCreate’i lineItemsByFulfillmentOrder (fulfillment order ID’si ile satır ID’leri ve adetleri) ve trackingInfo (company, number, url) ile çağırın. Kargo e-postasının gitmesi için notifyCustomer’ı açın. O fulfillment order’daki her şeyi göndermek için satırları boş bırakın.
Nasıl kullanılır
- OpenFulfillmentOrders’ı sipariş ID’siyle gönderin. Her fulfillment order, siparişin bir lokasyona düşen kısmıdır.
- Göndereceğiniz fulfillment order satırlarını ve adetlerini (en fazla remainingQuantity kadar) seçin.
- ShipWithTracking’i kargo firması adı, takip numarası ve takip URL’siyle gönderin.
- Her koli için tekrarlayın; kısmi gönderim, fulfillment order’ın kalanını açık bırakır.
Kod
fulfillment-orders.graphqlquery OpenFulfillmentOrders($orderId: ID!) {
order(id: $orderId) {
id
name
fulfillmentOrders(first: 10, query: "status:OPEN") {
nodes {
id
status
assignedLocation {
name
}
lineItems(first: 50) {
nodes {
id
sku
remainingQuantity
}
}
}
}
}
}
fulfillment-orders.variables.json{
"orderId": "gid://shopify/Order/1234567890"
}
fulfillment-orders.response.json{
"data": {
"order": {
"id": "gid://shopify/Order/1234567890",
"name": "#1001",
"fulfillmentOrders": {
"nodes": [
{
"id": "gid://shopify/FulfillmentOrder/1111111111",
"status": "OPEN",
"assignedLocation": {"name": "Main warehouse"},
"lineItems": {
"nodes": [
{"id": "gid://shopify/FulfillmentOrderLineItem/2222222221", "sku": "LS-M", "remainingQuantity": 2},
{"id": "gid://shopify/FulfillmentOrderLineItem/2222222222", "sku": "WS-01", "remainingQuantity": 1}
]
}
}
]
}
}
}
}
fulfillment-create.graphqlmutation ShipWithTracking($fulfillment: FulfillmentInput!) {
fulfillmentCreate(fulfillment: $fulfillment) {
fulfillment {
id
status
trackingInfo(first: 5) {
company
number
url
}
}
userErrors {
field
message
}
}
}
fulfillment-create.variables.json{
"fulfillment": {
"notifyCustomer": true,
"trackingInfo": {
"company": "DHL Express",
"number": "1234567890",
"url": "https://www.dhl.com/track?tracking-id=1234567890"
},
"lineItemsByFulfillmentOrder": [
{
"fulfillmentOrderId": "gid://shopify/FulfillmentOrder/1111111111",
"fulfillmentOrderLineItems": [
{"id": "gid://shopify/FulfillmentOrderLineItem/2222222221", "quantity": 2}
]
}
]
}
}
fulfillment-create.response.json{
"data": {
"fulfillmentCreate": {
"fulfillment": {
"id": "gid://shopify/Fulfillment/1234567890",
"status": "SUCCESS",
"trackingInfo": [
{
"company": "DHL Express",
"number": "1234567890",
"url": "https://www.dhl.com/track?tracking-id=1234567890"
}
]
},
"userErrors": []
}
}
}
Lintel tarafından yazıldı. MIT lisansı: kendi mağazanızda da müşteri işlerinizde de ücretsiz kullanabilirsiniz.
Sınırlar ve özel durumlar
- Gönderimler sipariş satırlarına değil fulfillment order’lara karşı oluşturulur. LineItem ID’lerini değil FulfillmentOrderLineItem ID’lerini kullanın.
- Hangi yetkinin gerektiği, gönderimi kimin yaptığına bağlıdır: mağazanın kendi lokasyonları, bir fulfillment service uygulaması ya da üçüncü bir taraf.
- trackingInfo, birden fazla kolili gönderimler için numbers ve urls listelerini de alır.
- Shopify’ın takip linkini kendisi oluşturması için company’yi desteklenen kargo firmaları listesindeki yazımla aynen gönderin; listede olmayan firmalar için url’yi mutlaka verin.
Sık sorulan sorular
- GraphQL ile bir Shopify siparişine takip numarası nasıl eklenir?
- Gönderimi fulfillmentCreate ve trackingInfo ile oluşturun. Mevcut bir gönderimin takip bilgisini değiştirmek için fulfillmentTrackingInfoUpdate’i kullanın.
- Fulfillment order nedir?
- Siparişin, bir lokasyonun ya da fulfillment service’in göndereceği kısmıdır. Ürünleri iki ayrı depoda olan bir siparişin iki fulfillment order’ı olur.
- fulfillmentCreate müşteriye e-posta gönderir mi?
- Yalnızca notifyCustomer true ise. Bu durumda kargo onay e-postasında takip linki de yer alır.
Shopify belgeleri
- Gösterilen tarihte, 2026-10 sürümünün Admin veya Storefront API şemasıyla doğrulandı. İstek adresinizdeki sürümü kontrol edin.
- Örneklerdeki ID’ler ve mağaza adresleri yer tutucudur. Kendi değerlerinizle değiştirin.
- Admin API çağrıları uygulamanızdan bir erişim anahtarı (access token) ister. Admin API anahtarını asla vitrine ya da temaya koymayın.
- MIT lisansı. Kodu kendi mağazanızda da müşteri işlerinizde de kullanabilirsiniz.
Mağazanız için kurulmasını, test edilmesini ve bakımını isterseniz: API entegrasyonları.
