Postman-Collection
Payments Lesen

pixiPayGetOrdersToAuthorize

Liefert Aufträge mit Positionen im Status HAL, die für eine Zahlungsart zur Autorisierung anstehen, inklusive Beträgen, Karten- und Adressdaten.

Ermittelt Aufträge, die ein Zahlungsanbieter-Connector (z. B. für Kreditkarten) autorisieren soll, und liefert eine Zeile pro Auftrag.

Ablauf der Auswahl:

  1. Alle Aufträge mit mindestens einer Auftragsposition im Status HAL werden ermittelt.
  2. Berücksichtigt werden nur Aufträge, bei denen:
    • der Auftragskopf zuletzt vor mehr als 10 Minuten geändert wurde (updatedate), damit der Auftrag vollständig ist,
    • die Zahlungsart der Auftragsadresse (Addresses.aPayment) gleich PaymentCode ist,
    • mindestens eine Bedingung erfüllt ist: ccpNumOfTries <= 3, CCPReauthorizeYN = Y (Neuautorisierung angefordert), ShowAll = 1 oder ccpSetFailTries zwischen 1 und 3 und ccpSetFailLastTime älter als 10 Minuten,
    • der Kunde nicht gesperrt ist (Customers.SLocked ungleich Y).
  3. Die ersten RowCount Aufträge werden übernommen, sortiert nach ccpNumOfTries aufsteigend, dann OrderHeaderKey aufsteigend (Aufträge mit weniger Versuchen zuerst).
  4. Für diese Aufträge wird OrderLineAmount der Positionen in den Status ANG, HAL und AUS getrennt summiert (fehlende Status zählen als 0).

Das Ergebnis enthält Auftragssummen, Positionssummen je Status, Währung, Shop-ID, Karten- und Adressdaten der Auftragsadresse sowie die Autorisierungsfelder des Auftragskopfs. Die Ausgabe ist nach OrderHeaderKey aufsteigend sortiert.

Hinweise

  • Nur lesend; alle permanenten Tabellen werden WITH (NOLOCK) gelesen, daher können nicht festgeschriebene Daten geliefert werden.
  • Fallstrick: Die Spalte Addresses.eMail wird unter dem Alias CCPPaymentInfoOK ausgegeben (eine Spalte eMail gibt es nicht). Die Spalte enthält daher die E-Mail-Adresse der Auftragsadresse, kein Zahlungsstatus-Kennzeichen.
  • Die Spalten *_OrderCurr enthalten exakt dieselben Werte wie die gleichnamigen Spalten ohne Suffix (laut Kommentar zur Entfernung vorgesehen); es findet keine Währungsumrechnung statt.
  • Das Ergebnis enthält sensible Kartendaten (CardNumber, CardCVC, CardExpiration); entsprechend sorgfältig behandeln und übertragen.
  • ShowAll = 1 hebt nur die Bedingungen zur Anzahl der Versuche auf; Wartezeit von 10 Minuten, Zahlungsart, HAL-Position und Kundensperre gelten weiterhin.
  • RowCount begrenzt die Anzahl der Aufträge, nicht der Positionen.
  • Die 10-Minuten-Grenze basiert auf der Serverzeit (GETDATE()).

Parameter

Parameter Typ Standardwert Beschreibung
PaymentCode
Pflicht
char(1)
string
–

Kürzel der Zahlungsart; wird mit Addresses.aPayment der Auftragsadresse verglichen.

Beispiel: K

ShowAll
bit
boolean
0

Bei 1 werden Aufträge unabhängig von der Anzahl bisheriger Autorisierungsversuche geliefert.

Erlaubte Werte

  • 0 – Nur Aufträge mit höchstens 3 Versuchen, angeforderter Neuautorisierung oder 1–3 fehlgeschlagenen Abrechnungsversuchen älter als 10 Minuten.
  • 1 – Bedingungen zur Anzahl der Versuche ignorieren.

Beispiel: 0

RowCount
int 30

Maximale Anzahl gelieferter Aufträge.

Beispiel: 30

Antwort

Result-Set 1 · Immer (ggf. leer)

Eine Zeile pro zu autorisierendem Auftrag, sortiert nach OrderHeaderKey aufsteigend.

Spalte Typ Beschreibung
OrderNr int

Pixi-Auftragsnummer.

OrderNrExternal
Kann leer sein
string

Externe (Shop-)Auftragsnummer.

OrderTotal
Kann leer sein
decimal

Auftragssumme aus dem Auftragskopf.

OrderLinesTotal
Kann leer sein
decimal

Positionssumme aus dem Auftragskopf.

OrderLinesDiscount
Kann leer sein
decimal

Rabatt auf die Positionen.

ShipCost
Kann leer sein
decimal

Versandkosten.

OrderLinesTotalANG decimal(19,4)
decimal

Summe OrderLineAmount der Positionen im Status ANG (0, falls keine).

OrderLinesTotalHAL decimal(19,4)
decimal

Summe OrderLineAmount der Positionen im Status HAL.

OrderLinesTotalAUS decimal(19,4)
decimal

Summe OrderLineAmount der Positionen im Status AUS (0, falls keine).

OrderLinesTotal_OrderCurr
Kann leer sein
decimal

Gleicher Wert wie OrderLinesTotal.

OrderLinesTotalANG_OrderCurr decimal(19,4)
decimal

Gleicher Wert wie OrderLinesTotalANG.

OrderLinesTotalHAL_OrderCurr decimal(19,4)
decimal

Gleicher Wert wie OrderLinesTotalHAL.

OrderLinesTotalAUS_OrderCurr decimal(19,4)
decimal

Gleicher Wert wie OrderLinesTotalAUS.

ShipCost_OrderCurr
Kann leer sein
decimal

Gleicher Wert wie ShipCost.

OrderCurrency
Kann leer sein
string

Währungskürzel (Currency.CodeA) des Auftrags.

ShopID
Kann leer sein
string

Shop des Kunden (Customers.CustomerOf).

CardOwner
Kann leer sein
string

Karteninhaber aus der Auftragsadresse.

CardNumber
Kann leer sein
string

Kartennummer aus der Auftragsadresse.

CardExpiration
Kann leer sein
string

Ablaufdatum der Karte.

CardCVC
Kann leer sein
string

Kartenprüfnummer.

Anrede
Kann leer sein
string

Anrede.

CareOf
Kann leer sein
string

c/o- bzw. Firmenzeile.

FirstName
Kann leer sein
string

Vorname.

LastName
Kann leer sein
string

Nachname.

Address
Kann leer sein
string

Straße und Hausnummer.

City
Kann leer sein
string

Ort.

ZIP
Kann leer sein
string

Postleitzahl.

Country
Kann leer sein
string

Land.

Phone
Kann leer sein
string

Telefonnummer.

CCPPaymentInfoOK
Kann leer sein
string

Enthält Addresses.eMail (E-Mail-Adresse der Auftragsadresse) aufgrund eines fehlenden Kommas im Code.

CCPLastAuthCode
Kann leer sein
string

Letzter Autorisierungscode.

CCPNumOfTries
Kann leer sein
int

Bisherige Anzahl Autorisierungsversuche.

CCPReauthorizeYN
Kann leer sein
string

Y, wenn eine Neuautorisierung angefordert wurde.

ccpPayID
Kann leer sein
string

Zahlungs-ID beim Zahlungsanbieter.

ccpSetFailLastTime
Kann leer sein
dateTime

Zeitpunkt des letzten fehlgeschlagenen Abrechnungsversuchs.

ccpSetFailTries
Kann leer sein
int

Anzahl fehlgeschlagener Abrechnungsversuche.

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:pixiPayGetOrdersToAuthorize>
      <PaymentCode>K</PaymentCode>
      <!-- <ShowAll>0</ShowAll> -->
      <!-- <RowCount>30</RowCount> -->
    </ns1:pixiPayGetOrdersToAuthorize>
  </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Verwendete Tabellen

Orderlines · Lesen Orderheader · Lesen Addresses · Lesen Customers · Lesen Currency · Lesen
SQL-Objekt:
dbo.pipiPayGetOrdersToAuthorize
Prozedur zuletzt geändert am 2026-10-05
Dokumentation von claude-opus-5-5 am 2026-10-30 geschrieben