POST tokens/{id}/withdrawBalance?balanceToWithdraw={balanceToWithdraw}&pin={pin} · Web API v3 · Deutsch
POST tokens/{id}/withdrawBalance?balanceToWithdraw={balanceToWithdraw}&pin={pin}
/tokens/{id}/withdrawBalance?balanceToWithdraw={balanceToWithdraw}&pin={pin}Hiermit können Sie einen Betrag vom Guthaben des Tokens abheben. Ist der abzuhebende Betrag größer als das Guthaben, wird der Call abgewiesen.
Bitte bilden Sie zum '{id}_{balanceToWithdraw}' (z.B. 'card123_1.99') eine Checksumme (siehe Security-Token) und geben Sie diese im SecurityToken-Header an.
Parameter
idstringErforderlichGeben Sie hier den von einem Trägermedium ausgelesenen Token an.
'cardId123'balanceToWithdrawdecimalErforderlich1.99pinstringDie optionale PIN, im Fall dass die Ressource GET tokens/{id}/info das Feld RequiresPin auf true gesetzt hat. Die PIN ist üblicherweise auf der Karte gedruckt.
'PQ123'Request-Header
DevKey{Ihr Key}TrackingUnitId{trackingUnitId}SecurityToken{checksumme über '{id}_{balanceToWithdraw}'} (in diesem Beispiel über 'card123_1.99')Kontext: tokens
Tokens sind beliebig geartete, jedoch stets voneinander unterschiedliche, nicht wiederholbare Strings, welche sowohl zur Identifikation
eines Konsumenten ( consumer ) als auch zur Identifikation eines Guthabens ( balance ) verwendet werden können. In der Regel werden
diese Tokens auf einem beliebigen Trägermedium gespeichert und an einen Konsumenten in Form einer Kundenkarte oder Geschenkkarte
ausgehändigt. Der Konsument wird bei seinen nächsten Käufen dieses Trägermedium am POS vorzeigen müssen, um auf das darin gespeicherte
Guthaben zugreifen zu können bzw. die menio-Rewards angerechnet zu bekommen.
Originaler Blueprint-Ausschnitt
### POST tokens/{id}/withdrawBalance?balanceToWithdraw={balanceToWithdraw}&pin={pin} [POST]
Hiermit können Sie einen Betrag vom Guthaben des Tokens abheben. Ist der abzuhebende Betrag größer als das Guthaben,
wird der Call abgewiesen.
*Bitte bilden Sie zum* **'{id}_{balanceToWithdraw}'** *(z.B. 'card123_1.99') eine Checksumme (siehe [Security-Token](#introduction/grundlegendes/secutiry-token)) und geben Sie diese im `SecurityToken`-Header an.*
+ Parameters
+ id (string, `'cardId123'`) ... Geben Sie hier den von einem Trägermedium ausgelesenen Token an.
+ balanceToWithdraw (decimal, `1.99`) .. Geben Sie hier den abzuhebenden Betrag an. Negative Beträge sind nicht erlaubt
+ pin (optional, string, `'PQ123'`) ... Die optionale PIN, im Fall dass die Ressource GET tokens/{id}/info das Feld `RequiresPin` auf `true` gesetzt hat. Die PIN ist üblicherweise auf der Karte gedruckt.
+ Request
+ Headers
DevKey: {Ihr Key}
TrackingUnitId: {trackingUnitId}
SecurityToken: {checksumme über '{id}_{balanceToWithdraw}'} (in diesem Beispiel über 'card123_1.99')
+ Body
{
"ReceiptPdfUrl":"https://..."
}
+ Response 200
{
"oldBalance":3.49
"newBalance":1.5
}
+ Response 500
// HTTP-InternalServerError: Ein unbekannten Problem bei der Verarbeitung aufgetreten
{
"ErrorMessage":"some explanation"
"StackTrace":"text"
}
+ Response 403
// HTTP-Forbidden: trackingUnitId ist noch nicht vom Merchant aktiviert
+ Response 401
// HTTP-Unauthorized: DevKey, trackingUnitId oder SecurityToken nicht angegeben/falsch
+ Response 400
{
"ErrorId":123,
"ErrorText":"Details zum Fehler"
}
// hier alle möglichen ErrorCodes inkl. Texte für diese Ressource
// 13001: token unbekannt
// 13004: token ist gesperrt, keine weitere Aktion möglich
// 13005: Es sind nur positive Werte zum Aufladen bzw. Abheben erlaubt
// 13006: Limit zum Abheben/Aufladen überschritten
// 13010: Guthabenzahlung im Store noch nicht eingerichtet
// 13012: Guthaben nicht ausreichend
// 13015: PIN ist falsch [nur wenn PIN als Query-Parameter mit angegeben]