T-SOFT/Admin API/Gönderiler ve Kargo

Gönderiler ve Kargo

Kapsam: gönderileri okumak read_orders, oluşturmak ve güncellemek write_fulfillments; kargo firması, ücret ve bölge tanımları read_shipping / write_shipping.

Bu uçlar kargo entegrasyonu yapan uygulamalar içindir: siparişten gönderi açmak, kargo firmasından gelen hareketi mağazaya işlemek ve mağazanın kargo tanımlarını okumak.

Gönderiler

UçMetotKapsam
order/shipmentsGETread_orders
order/shipmentsPOSTwrite_fulfillments
order/shipments/{id}PATCH, DELETEwrite_fulfillments
order/shipments/{id}/-actions/logPOSTwrite_fulfillments

Listeleme bir sipariş filtresi ister; filtresiz istek 400 döner:

GET /order/shipments
curl 'https://magaza.com/api/v3/admin/2026-01/order/shipments?filter[orderId]=1042' \
  -H 'Authorization: Bearer <access_token>' \
  -H 'Accept: application/vnd.api+json'

Filtreler: orderId, cargoKey. Başlıca alanlar:

AlanAçıklama
orderId, orderNumberSipariş
cargoKeyGönderinin kargo anahtarı
cargoCompanyId, cargoCompanyKargo firması
cargoTrackingNo, cargoTrackingUrlTakip numarası ve adresi
status, statusDescriptionGönderi durumu
receiver, receiverAddress, receiverPhone1, cityAlıcı bilgisi
cargoCount, weight, volumetricWeightKoli sayısı, ağırlık ve desi
invoiceNumber, waybillNumberFatura ve irsaliye numarası
shipmentType0 gönderi, 1 iade gönderisi
shippedDate, deliveryDateKargoya veriliş ve teslim zamanı

Gönderi oluşturma

POST /order/shipments
curl -X POST 'https://magaza.com/api/v3/admin/2026-01/order/shipments' \
  -H 'Authorization: Bearer <access_token>' \
  -H 'Accept: application/vnd.api+json' \
  -H 'Content-Type: application/vnd.api+json' \
  -d '{
    "data": {
      "type": "shipments",
      "attributes": {
        "orderId": 1042,
        "cargoCompanyId": 3,
        "carryOrderProduct": [{"id": 5521, "count": 1}, {"id": 5522, "count": 2}],
        "weight": [1.2],
        "volumetricWeight": [2]
      }
    }
  }'
AlanZorunluAçıklama
orderIdEvetSipariş
cargoCompanyIdEvetKargo firması (Kargo firmaları)
carryOrderProductEvetGönderiye girecek sipariş kalemleri: kalem kimliği (id, Sipariş kalemleri) ve adet (count)
weight, volumetricWeightHayırKoli başına ağırlık ve desi
cargoCountHayırKoli sayısı

Kargo hareketi bildirme

Kargo firmasından gelen hareketi gönderiye işler. Teslim ve kargoya veriliş kodları siparişin durumunu da ilerletir.

POST /order/shipments/{id}/-actions/log
curl -X POST 'https://magaza.com/api/v3/admin/2026-01/order/shipments/881/-actions/log' \
  -H 'Authorization: Bearer <access_token>' \
  -H 'Accept: application/vnd.api+json' \
  -H 'Content-Type: application/json' \
  -d '{"messageCode": "IQU001", "cargoTrackingNo": "TRK123456", "cargoTrackingUrl": "https://kargo.example.com/TRK123456"}'
messageCodeAnlamıSiparişe etkisi
IQU001, IQU002, IQU003, IQU004Kargoya verildi / yoldaSipariş "Kargoya verildi" durumuna geçer
IQU009Teslim edildiSipariş "Teslim edildi" durumuna geçer
IQU007, IQU099Kargo firmasının olumsuz yanıtıYalnız gönderinin durumu güncellenir
Diğer kodlarBilgiTakip numarası, şube ve tutar alanları işlenir

Diğer alanlar (hepsi isteğe bağlı): messageText, cargoTrackingNo, cargoTrackingUrl, realTotalDesi, realCargoAmount, shipperBranchOffice, receiverBranchOffice, cargoLastMovement, cargoStatusDate. Gövde düz JSON'dur.

Durumu ilerleten kodlar, sipariş durumunu değiştirmeyle aynı kurala bağlıdır: siparişin mevcut durumu uygulamaların değiştiremeyeceği bir durumsa 422 döner (Sipariş durumunu değiştirme).

Kargo firmaları

order/cargo-companies: okuma read_shipping, yazma write_shipping.

AlanAçıklama
nameFirma adı
wsCodeEntegrasyon kodu
integrationBağlı kargo entegrasyonu
isCustomerActive, isVendorActiveMüşteriye ve bayiye açık mı
isDefaultCargoVarsayılan firma
customerFreeCargoLimit, vendorFreeCargoLimitÜcretsiz kargo alt sınırı
isRegionalShippingActiveBölgesel gönderim açık mı (Kargo bölgeleri)
returnableİade gönderisinde kullanılabilir mi

Filtreler: id, name, isCustomerActive, isVendorActive, isRegionalShippingActive; tam eşleşme için exact. öneki.

Kargo ücretleri

order/shipping-costs: okuma read_shipping, yazma write_shipping. Her kayıt bir firmanın bir desi aralığındaki ücretidir.

AlanAçıklama
companyIdKargo firması
lowerLimit, upperLimitDesi aralığı
inCitySum, outOfCitySum, globalSumŞehir içi, şehir dışı ve yurt dışı ücret
additionalPricePerCbmAralığın üstündeki her desi için ek ücret

Filtre: companyId. Oluştururken companyId, lowerLimit, upperLimit ve üç ücret alanı zorunludur; upperLimit, lowerLimit'ten büyük olmalıdır.

Kargo bölgeleri

order/cargo-regions: bir bölgeye (il, ilçe) hangi kargo firmalarının gidebileceği. Okuma read_shipping, yazma write_shipping.

AlanAçıklama
regionTypeBölge türü
regionCodeBölge kodu (Bölgeler)
cargoIdsBu bölgeye gönderim yapan firmalar
defaultCargoIdBölgenin varsayılan firması

cargoIds yazılırken dizinin tamamı gönderilir; tek firma eklemek için mevcut listeyi okuyup yeni firmayı ekleyin. Listedeki firmaların bölgesel gönderimi açık olmalıdır.