Ana içeriğe geç

cancelSalesOrderXML

Genel Bilgi

Özellik Değer
Endpoint Adı cancelSalesOrderXML
SOAPAction urn:WebticariService#cancelSalesOrderXML
Açıklama Satış sipariş ve satış rezervasyonlarını iptal eder. Silme işleminden farklı olarak kayıt sistemde kalır, durumu "iptal" olarak güncellenir.
Kimlik Doğrulama Gerektirir Evet (token)

İstek Parametreleri

Parametre Tip Zorunlu Açıklama
token xsd:string Evet login endpoint'inden alınan oturum token'ı
salesOrders xsd:string Evet İptal edilecek siparişlerin bilgilerini içeren XML

Yanıt Parametreleri

Parametre Tip Açıklama
return xsd:string İşlem sonucu

salesOrders XML Yapısı

<siparisler>
  <siparis>
    <sipsat_id>999</sipsat_id>
  </siparis>
  <!-- Birden fazla sipariş iptal edilebilir -->
  <siparis>
    <sipsat_id>1000</sipsat_id>
  </siparis>
</siparisler>
Alan Tip Zorunlu Açıklama
sipsat_id integer Evet İptal edilecek siparişin sunucu ID'si (importSalesOrderXML yanıtından alınan server_id)

Yanıt XML Yapısı

<transactions>
  <transferreds>
    <transaction>
      <server_id>999</server_id>
    </transaction>
  </transferreds>
  <transposeds>
    <transaction>
      <errorno>-1</errorno>
      <errormessage>Sipariş bulunamadı.</errormessage>
    </transaction>
  </transposeds>
</transactions>
Alan Açıklama
transferreds Başarıyla iptal edilen siparişler; server_id = sipsat_id
transposeds Başarısız olanlar; errormessage hata açıklaması

Örnek SOAP İstek

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
                  xmlns:tns="urn:WebticariService">
  <soapenv:Header/>
  <soapenv:Body>
    <tns:cancelSalesOrderXML>
      <token>abc123tokendeğeri</token>
      <salesOrders><![CDATA[
        <siparisler>
          <siparis>
            <sipsat_id>999</sipsat_id>
          </siparis>
        </siparisler>
      ]]></salesOrders>
    </tns:cancelSalesOrderXML>
  </soapenv:Body>
</soapenv:Envelope>

Hata Durumları

Durum Açıklama
Invalid Token Token geçersiz veya süresi dolmuş (30 dakika). transposeds içinde döner.
Sipariş bulunamadı sipsat_id tabloda mevcut değil

Notlar

  • İptal işlemi (satisSiparisIptal) siparişi sistemden silmez; sipariş durumunu iptal olarak günceller (soft cancel).
  • İptal edilen siparişler raporlarda görünmeye devam eder.
  • deleteSalesOrderXML ile farkı: o endpoint kaydı tamamen siler, bu endpoint yalnızca durumu günceller.
  • Satış rezervasyonları da aynı endpoint ile iptal edilebilir.
  • sipsat_id, importSalesOrderXML yanıtındaki server_id değeridir.