pixiGetInvoicesByOrderNr
Liefert alle Rechnungen, die Positionen des angegebenen Auftrags enthalten, mit Zahlungs-, Bank-/Kreditkarten-, Versand- und Währungsdaten.
Ermittelt alle Rechnungen, die über ihre Rechnungspositionen mit dem Auftrag OrderNr verknüpft sind: Die Auftragspositionen des Auftrags werden mit den Rechnungspositionen (OrderLineRef) verbunden, und jede referenzierte Rechnung wird einmal geliefert.
Je Rechnung werden geliefert:
- Rechnungsdaten: Nummer, Datum, IDs von Zahlungs- und Lieferadresse, Gesamtbetrag.
- Zahlungsdaten:
- der Zahlungsartcode und dessen Text aus den Zahlungsarten. Fehlt ein Text, wird der Code selbst als Text geliefert.
- Zahlungsdatum und bezahlte Summe.
- ein berechnetes Kennzeichen
Paid.
- Bank- und Kreditkartendaten der Zahlungsadresse (
AddrRef). - Versanddaten: Tracking-ID, Scan-Out-Datum als Versanddatum und die Mahnstufe.
- Auftragsdaten:
OrderNrsowieOrderNrExternalohne führende und nachgestellte Leerzeichen. - Währung: der ISO-Code (
CodeA) der Rechnungswährung.
Paid ist 1, wenn PayedSum (NULL als 0 gewertet) gleich total ist, sonst 0.
Das Ergebnis hat keine definierte Sortierung.
Hinweise
- Alle Tabellen werden mit
NOLOCKgelesen, daher können nicht festgeschriebene Daten erscheinen. - Rechnungen werden nur geliefert, wenn die Zahlungsadresse in
Addressesund die Währung inCurrencyexistieren. Beides sind Inner Joins. Paidist auch bei überzahlten Rechnungen0, da auf Gleichheit geprüft wird und nicht auf 'bezahlte Summe ≥ Gesamtbetrag'.- Ist
totalNULL, istPaidgleich1. - Tragen die Auftragspositionen unterschiedliche
OrderNrExternal-Werte, wird für alle Rechnungen der Maximalwert geliefert. - Das Ergebnis enthält sensible Zahlungsdaten (Kontonummer, Kreditkartennummer); die Ausgabe ist entsprechend zu behandeln.
Parameter
| Parameter | Typ | Standardwert | Beschreibung |
|---|---|---|---|
OrderNr
Pflicht
|
int | – |
Pixi-Auftragsnummer, deren Rechnungen geliefert werden. Beispiel: |
Antwort
Result-Set 1 · Immer; leer, wenn keine Rechnungspositionen auf Auftragspositionen des Auftrags verweisen.
Eine Zeile je mit dem Auftrag verknüpfter Rechnung.
| Spalte | Typ | Beschreibung |
|---|---|---|
InvoiceNr
Kann leer sein |
string |
Rechnungsnummer. |
InvoiceDate
Kann leer sein |
dateTime |
Rechnungsdatum ( |
PaymentAddressId
|
int |
Schlüssel der Zahlungs-/Rechnungsadresse ( |
ShipmentAddressId
Kann leer sein |
int |
Schlüssel der Lieferadresse ( |
total
Kann leer sein |
decimal |
Rechnungsgesamtbetrag. |
PaymentCode
Kann leer sein |
string |
Zahlungsartcode der Rechnung. |
PaymentText
Kann leer sein |
string |
Text der Zahlungsart. Existiert kein Text, wird der Zahlungsartcode geliefert. |
PaymentDate
Kann leer sein |
dateTime |
Zahlungsdatum ( |
Paid
|
bit boolean |
1, wenn die bezahlte Summe dem Gesamtbetrag entspricht, sonst 0. |
TotalToPay
Kann leer sein |
decimal |
Zu zahlender Betrag. Gleicher Wert wie |
PaidSum
Kann leer sein |
decimal |
Bisher bezahlte Summe ( |
CcCardType
Kann leer sein |
string |
Kreditkartentyp der Zahlungsadresse. |
CcCardNr
Kann leer sein |
string |
Kreditkartennummer der Zahlungsadresse. |
CcCardName
Kann leer sein |
string |
Name des Kreditkarteninhabers. |
CcCardExp
Kann leer sein |
string |
Ablaufdatum der Kreditkarte. |
Account
Kann leer sein |
string |
Kontonummer der Zahlungsadresse. |
Blz
Kann leer sein |
string |
Bankleitzahl (BLZ). |
BankName
Kann leer sein |
string |
Name der Bank. |
AccountName
Kann leer sein |
string |
Name des Kontoinhabers. |
TrackingID
Kann leer sein |
string |
Sendungsverfolgungsnummer der Rechnung. |
ShipDate
Kann leer sein |
dateTime |
Scan-Out-Datum der Sendung ( |
ReminderLevel
Kann leer sein |
int |
Mahnstufe der Rechnung. |
OrderNr
Kann leer sein |
int |
Pixi-Auftragsnummer (entspricht der Eingabe). |
OrderNrExternal
Kann leer sein |
string |
Externe Auftragsnummer (z. B. Shop-Bestellnummer), ohne Leerzeichen am Anfang und Ende. |
OrderCurrencyCode
Kann leer sein |
string |
Währungscode der Rechnung ( |
Beispielantwort
<SqlRowSet1>
<row>
<InvoiceNr>R2024001234</InvoiceNr>
<InvoiceDate>2024-03-15T10:22:00</InvoiceDate>
<PaymentAddressId>45821</PaymentAddressId>
<ShipmentAddressId>45822</ShipmentAddressId>
<total>129.90</total>
<PaymentCode>PP</PaymentCode>
<PaymentText>PayPal</PaymentText>
<PaymentDate>2024-03-15T10:25:00</PaymentDate>
<Paid>true</Paid>
<TotalToPay>129.90</TotalToPay>
<PaidSum>129.90</PaidSum>
<CcCardType/>
<CcCardNr/>
<CcCardName/>
<CcCardExp/>
<Account/>
<Blz/>
<BankName/>
<AccountName/>
<TrackingID>00340434161094042557</TrackingID>
<ShipDate>2024-03-15T16:40:00</ShipDate>
<ReminderLevel>0</ReminderLevel>
<OrderNr>123456</OrderNr>
<OrderNrExternal>SHOP-100045</OrderNrExternal>
<OrderCurrencyCode>EUR</OrderCurrencyCode>
</row>
</SqlRowSet1>
Beispiele
POST https://apigateway.descartes.com/tms/pixi/
Content-Type: text/xml; charset=utf-8
Authorization: Basic BASE64(USERNAME:PASSWORD)
<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="https://apigateway.descartes.com/tms/pixi/">
<SOAP-ENV:Body>
<ns1:pixiGetInvoicesByOrderNr>
<OrderNr>123456</OrderNr>
</ns1:pixiGetInvoicesByOrderNr>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
curl -X POST 'https://apigateway.descartes.com/tms/pixi/' \
--user 'USERNAME:PASSWORD' \
--header 'Content-Type: text/xml; charset=utf-8' \
--data-binary @- <<'XML'
<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="https://apigateway.descartes.com/tms/pixi/">
<SOAP-ENV:Body>
<ns1:pixiGetInvoicesByOrderNr>
<OrderNr>123456</OrderNr>
</ns1:pixiGetInvoicesByOrderNr>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
XML
<?php
$soapClient = new SoapClient(null, [
'login' => 'USERNAME',
'password' => 'PASSWORD',
'location' => 'https://apigateway.descartes.com/tms/pixi/',
'uri' => 'https://apigateway.descartes.com/tms/pixi/',
]);
$arguments = [
'OrderNr' => '123456',
];
$soapArguments = [];
foreach ($arguments as $name => $value) {
$soapArguments[] = new SoapVar($value, XSD_STRING, '', '', $name);
}
$response = $soapClient->__soapCall('pixiGetInvoicesByOrderNr', $soapArguments);
Verwendete Tabellen
- SQL-Objekt:
- dbo.pipiGetInvoicesByOrderNr