- HTTP-Anfrage
- Anfragetext
- Antworttext
- MandateDetails
- MandateWithNotificationDetails
- CaptureContext
- CaptureResultCode
Initiiert eine Geldbewegung zwischen dem bei Google geführten Kundenkonto eines Kunden und dem Zahlungsabwickler. Die Kombination aus requestId
im Header und paymentIntegratorAccountId
ist der Idempotenzschlüssel und identifiziert diese Transaktion eindeutig. Alle Mutationen zu dieser Transaktion (Erstattungen) enthalten den Wert requestId
im Feld captureRequestId
.
Wenn am Endpunkt bei der Verarbeitung der Anfrage ein Fehler auftritt, sollte der Antworttext dieses Endpunkts vom Typ
sein.ErrorResponse
Eine Beispielanfrage sieht so aus:
{
"requestHeader": {
"protocolVersion": {
"major": 1,
"minor": 0,
"revision": 0
},
"requestId": "bWVyY2hhbnQgdHJhbnNhY3Rpb24gaWQ",
"requestTimestamp": "1502220196077"
},
"paymentIntegratorAccountId": "InvisiCashUSA_USD",
"googlePaymentToken": "ZXhhbXBsZSB1bmlxdWUgcGF5bWVudCB0b2tlbiB2YWx1ZQ",
"transactionDescription": "Google - Music",
"currencyCode": "INR",
"amount": "728000000",
"captureContext": {}
}
Eine Beispielantwort sieht so aus:
{
"responseHeader": {
"responseTimestamp": "1481900013178"
},
"result": "SUCCESS",
"paymentIntegratorTransactionId": "aW50ZWdyYXRvciB0cmFuc2FjdGlvbiBpZA"
}
HTTP-Anfrage
POST https://www.integratorhost.example.com/v1/capture
Anfragetext
Der Anfragetext enthält Daten mit folgender Struktur:
JSON-Darstellung |
---|
{ "requestHeader": { object ( |
Felder | |
---|---|
requestHeader |
ERFORDERLICH: Allgemeiner Header für alle Anfragen. |
paymentIntegratorAccountId |
ERFORDERLICH: Dies ist die Zahlungsintegrations-Konto-ID, die vertragliche Beschränkungen bezüglich dieser Transaktion angibt. |
transactionDescription |
ERFORDERLICH: Die Beschreibung der Transaktion, die auf dem Kontoauszug des Kunden angegeben werden kann. Lokalisiert in das userLocale-Format in |
currencyCode |
ERFORDERLICH: Dreistelliger Währungscode gemäß ISO 4217 |
amount |
ERFORDERLICH: Der Betrag des Kaufs in Mikros der Währungseinheit. |
captureContext |
REQUIRED: Kontext zu dieser Aufnahme. |
Union-Feld fopDetails . REQUIRED: Transaktionsdetails für diese Erfassungstransaktion. Für fopDetails ist nur einer der folgenden Werte zulässig: |
|
googlePaymentToken |
Token, mit dem beide Unternehmen das Konto für Käufe miteinander identifizieren. |
mandateDetails |
Zahlungsdetails speziell für Einzugsermächtigungen. |
mandateWithNotificationDetails |
Zahlungsdetails speziell für Einzugsermächtigungen, bei denen eine |
Union-Feld Für |
|
authenticationRequestId |
OPTIONAL: In diesem Fall wurde der Nutzer unmittelbar vor diesem Anruf oder bei der Einrichtung eines automatischen Zahlungsablaufs authentifiziert. |
otpVerification |
OPTIONAL: Daten, die zur Bestätigung eines über |
Antworttext
Antwortobjekt für die Erfassungsmethode.
Bei Erfolg enthält der Antworttext Daten mit der folgenden Struktur:
JSON-Darstellung |
---|
{ "responseHeader": { object ( |
Felder | |
---|---|
responseHeader |
REQUIRED: Allgemeiner Header für alle Antworten. |
paymentIntegratorTransactionId |
OPTIONAL: Diese Kennung ist spezifisch für den Integrator und wird vom Integrator generiert. Dies ist die Kennung, anhand derer der Integrator diese Transaktion kennt. Diese Kennung ist in den Überweisungsdetails enthalten. |
userMessage |
EINGESTELLT: Eine Beschreibung des Ergebnisses, die dem Nutzer angezeigt wird, wenn das Ergebnis nicht |
result |
REQUIRED: Ergebnis dieser Aufnahme. |
rawResult |
OPTIONAL: Rohergebnis dieser Aufnahme. Wird verwendet, um die Risiko-Engine und Analysen von Google zu informieren. Bei abgelehnten Codezuordnungen gehen Daten manchmal verloren. Der Integrator kann Google einen Rohcode zur Verfügung stellen. Beispielsweise kann ein Kreditkarten-Gateway (der Integrator) dieses Feld verwenden, um Google den genauen Ablehnungscode zu senden, der vom VISA-Netzwerk erhalten wurde. In diesem Fall wäre die Dieser Wert ist erforderlich, wenn |
transactionLimit |
OPTIONAL: Wenn das Ergebnis Dies muss ein Limit bezogen auf den |
currentBalance |
OPTIONAL: Wenn das Ergebnis Dieser Wert muss in derselben Währung wie der |
MandateDetails
Details zum Lastschriftmandat, von dem Daten erhoben werden sollen
JSON-Darstellung |
---|
{ "mandateId": string } |
Felder | |
---|---|
mandateId |
ERFORDERLICH: Die von Google generierte Lastschriftmandat-ID, die während des |
MandateWithNotificationDetails
Details zum Lastschriftmandat, aus dem Daten erhoben werden sollen, sowie die erforderlichen Benachrichtigungsdetails.
JSON-Darstellung |
---|
{ "mandateId": string, "upcomingTransactionNotificationId": string } |
Felder | |
---|---|
mandateId |
ERFORDERLICH: Die von Google generierte Lastschriftmandat-ID, die während des |
upcomingTransactionNotificationId |
ERFORDERLICH: Die |
CaptureContext
Dieses Objekt liefert Kontext dazu, wie die Erfassung angefordert wurde.
JSON-Darstellung |
---|
{ "userIpAddress": string } |
Felder | |
---|---|
userIpAddress |
OPTIONAL: Dies ist die IP-Adresse des Geräts des Nutzers, wenn der Kauf von einem Nutzer in einer Sitzung getätigt wurde. Wenn der Nutzer nicht an einer Sitzung teilgenommen hat, bleibt dieses Feld leer. Wenn dies laut Vertrag nicht vorgesehen ist, bleibt es immer leer. |
CaptureResultCode
Ergebniscodes für die Erfassung.
Enums | |
---|---|
UNKNOWN_RESULT |
Legen Sie diesen Standardwert niemals fest! |
SUCCESS |
Erfolgreiche Aufnahme, Lieferung der Waren. |
CHARGE_EXCEEDS_TRANSACTION_LIMIT |
Der amount dieser Erfassungsanfrage überschreitet das Transaktionslimit. Wenn dieser Code verwendet wird, wird das Feld „transactionLimit“ für Nutzermitteilungen ausgefüllt. |
CHARGE_EXCEEDS_DAILY_LIMIT |
Dieses Konto kann derzeit nicht für Käufe verwendet werden, da das Tageslimit überschritten wurde. |
CHARGE_EXCEEDS_MONTHLY_LIMIT |
Dieses Konto kann derzeit nicht für Käufe verwendet werden, da das monatliche Limit überschritten wurde. |
CHARGE_UNDER_LIMIT |
Der amount dieser Erfassungsanfrage entspricht nicht dem Mindesttransaktionsbetrag. |
INSUFFICIENT_FUNDS |
Das Konto ist nicht ausreichend gedeckt, um diese Erfassung zu garantieren. |
ACCOUNT_DOES_NOT_SUPPORT_CURRENCY |
Die angeforderte Währung wird von diesem Konto nicht unterstützt. |
ACCOUNT_CLOSED |
Das beim Integrator gesperrte Nutzerkonto wurde geschlossen. Durch die Rückgabe dieses Werts wird das Zahlungsmittel des Nutzers bei Google geschlossen. Der Nutzer wird gezwungen, ein neues Instrument hinzuzufügen, indem er den Verknüpfungsablauf noch einmal durchläuft. |
ACCOUNT_CLOSED_ACCOUNT_TAKEN_OVER |
Das Konto des Nutzers beim Integrator wurde geschlossen. Grund dafür ist eine mögliche Kontoübernahme. Durch die Rückgabe dieses Werts wird das Zahlungsmittel des Nutzers bei Google geschlossen. Der Nutzer wird gezwungen, ein neues Instrument hinzuzufügen, indem er den Verknüpfungsablauf noch einmal durchläuft. |
ACCOUNT_ON_HOLD |
Das Konto wurde vorübergehend deaktiviert. |
ACCOUNT_CLOSED_FRAUD |
Das beim Integrator geführte Konto des Nutzers wurde aufgrund eines Betrugs geschlossen. Durch die Rückgabe dieses Werts wird das Zahlungsmittel des Nutzers bei Google geschlossen. Der Nutzer wird gezwungen, ein neues Instrument hinzuzufügen, indem er den Verknüpfungsablauf noch einmal durchläuft. |
GOOGLE_PAYMENT_TOKEN_INVALIDATED_BY_USER |
Das Konto ist aktiv, aber das GPT wurde vom Nutzer aufseiten des Integrators ungültig gemacht. Durch die Rückgabe dieses Werts wird das Zahlungsmittel des Nutzers bei Google geschlossen. Der Nutzer wird gezwungen, ein neues Instrument hinzuzufügen, indem er den Verknüpfungsablauf noch einmal durchläuft. |
TOKEN_REFRESH_REQUIRED |
Bei der Rückgabe muss der Nutzer einen Aktualisierungsvorgang durchlaufen. |
OTP_NOT_MATCHED |
Das OTP entsprach nicht dem, was der Integrator gesendet hat. |
OTP_ALREADY_USED |
OTP wurde bereits verwendet. |
RISK_DECLINED |
Die Transaktion wurde aufgrund einer Risikoprüfung seitens des Integrators abgelehnt. Dies ist ein dauerhafter Ausfall der Zahlung, führt jedoch nicht dazu, dass das Zahlungsmittel des Nutzers bei Google geschlossen wird. |
NO_GOOD_FUNDING_SOURCE_AVAILABLE |
Der Nutzer hat in seinem Konto keine funktionierende Zahlungsquelle konfiguriert, mit der er die Transaktion bezahlen kann. |
FUNDING_SOURCE_UNAVAILABLE |
Der zugrunde liegende Aussteller oder die Zahlungsquelle ist nicht verfügbar. Ein neuer Versuch mit dieser Zahlung ist nicht erfolgreich. Google wiederholt Zahlungen, wenn ein Partner einen 4xx- oder 5xx-Antwortcode zurückgibt. Aus diesem Grund sollten Partner normalerweise einen dieser Antwortcodes zurückgeben, wenn ein Wiederholungsversuch derselben Zahlung erfolgreich sein könnte, wenn die zugrunde liegende Zahlungsquelle wieder verfügbar ist. Falls die Zahlung aus technischen Gründen weiterhin fehlschlägt, kann der Partner „FUNDING_SOURCE_UNAVAILABLE“ zurückgeben, um Google mitzuteilen, dass die Zahlung nicht wiederholt werden soll. Hinweis: Google kann diese Zahlung möglicherweise noch einmal mit einer anderen Anfrage-ID wiederholen. Diese Zahlungsanforderung wird jedoch als „Abgelehnt“ markiert. |
MANDATE_NOT_ACTIVE |
Das für diese Aufnahme verwendete Lastschriftmandat ist nicht mehr aktiv. Dieser Rückgabewert führt dazu, dass das Lastschriftmandat des Nutzers bei Google geschlossen wird. |
UPCOMING_TRANSACTION_NOTIFICATION_EXPIRED |
Die Benachrichtigung, die an den Nutzer zu einer wiederkehrenden Einzugsermächtigung gesendet wurde, ist abgelaufen. |