- HTTP-Anfrage
- Anfragetext
- Antworttext
- CaptureResult
<ph type="x-smartling-placeholder">
- </ph>
- JSON-Darstellung
- CaptureResultCode
- RawResult
<ph type="x-smartling-placeholder">
- </ph>
- JSON-Darstellung
- CaptureResultNotificationResultCode
Benachrichtigen Sie Google über das Ergebnis einer Erfassung, nachdem ein capture- oder asynchronousCapture-Methodenaufruf durchgeführt wurde.
Der captureResult-Wert ist für diese captureRequestId idempotent. Daher kann sein Wert nicht durch einen nachfolgenden Aufruf dieser Methode geändert werden.
Wenn am Endpunkt bei der Verarbeitung der Anfrage ein Fehler auftritt, ist die Antwort dieses Endpunkts vom Typ .ErrorResponse
Die Antworten auf diese Abfrage sind möglicherweise leer, wenn diese Methode keinen HTTP 200-Fehler zurückgibt. Der Antworttext ist leer, wenn ein mit einer eindeutigen Beschreibung verwendet werden könnte, um einem Angreifer zu helfen, die Kennung des Zahlungsintegrators anderer Integratoren zu verstehen. In Situationen, in denen der Signaturschlüssel nicht übereinstimmt, die Zahlungsintegrator-ID nicht gefunden wurde oder der Verschlüsselungsschlüssel unbekannt war, gibt diese Methode einen HTTP 404-Fehler mit einem leeren Text zurück. Wenn die Anfragesignatur verifiziert werden konnte, werden im Antworttext zusätzliche Informationen zum Fehler zurückgegeben.ErrorResponse
Eine Beispielanfrage sieht so aus:
{
"requestHeader": {
"protocolVersion": {
"major": 1,
"minor": 1,
"revision": 0
},
"requestId": "KcgwSKrV76eVNDUbsZ4UA3",
"requestTimestamp": "1481852928293"
},
"paymentIntegratorAccountId": "InvisiCashUSA_USD",
"captureRequestId": "awNaC510cefae3IJdNEvW2",
"captureResult": {
"captureResultCode": "SUCCESS"
}
}
Eine Beispielantwort sieht so aus:
{
"responseHeader": {
"responseTimestamp": "1481852928324"
},
"result": "SUCCESS"
}
HTTP-Anfrage
POST https://vgw.googleapis.com/secure-serving/gsp/v1/captureResultNotification/:PIAID
Anfragetext
Der Anfragetext enthält Daten mit folgender Struktur:
| JSON-Darstellung |
|---|
{ "requestHeader": { object ( |
| Felder | |
|---|---|
requestHeader |
ERFORDERLICH: Gemeinsamer Header für alle Anfragen. |
paymentIntegratorAccountId |
ERFORDERLICH: Die Konto-ID des Zahlungsintegrators, für die die Erfassung erfolgte. |
captureRequestId |
ERFORDERLICH: Eine eindeutige Kennung für diese Transaktion. Das ist die Dieser String hat eine maximale Länge von 100 Zeichen und enthält nur die Zeichen „a–z“, „A–Z“, „0–9“, ":", „-“ und „_“. |
captureResult |
REQUIRED: Ergebnis dieser Aufnahme. |
paymentIntegratorTransactionId |
OPTIONAL: Diese Kennung ist für den Integrator spezifisch und wird vom Integrator generiert. Dies ist die Kennung, anhand derer der Integrator diese Transaktion erkennt. Der Einfachheit halber ist diese ID in den Überweisungsdetails enthalten. |
Antworttext
Antwortobjekt für die Methode captureResultNotification.
Bei Erfolg enthält der Antworttext Daten mit der folgenden Struktur:
| JSON-Darstellung |
|---|
{ "responseHeader": { object ( |
| Felder | |
|---|---|
responseHeader |
ERFORDERLICH: Gemeinsamer Header für alle Antworten. |
result |
REQUIRED: Ergebnis dieses Aufrufs. |
CaptureResult
Informationen zum Endergebnis einer Aufnahme.
| JSON-Darstellung |
|---|
{ "captureResultCode": enum ( |
| Felder | |
|---|---|
captureResultCode |
REQUIRED: Ergebniscode dieser Aufnahme. |
rawResult |
OPTIONAL: Rohergebnis dieser Aufnahme. Wird zur Verbesserung der Risikoanalyse und der Risikoanalyse von Google verwendet. Bei abgelehnten Codezuordnungen gehen Daten manchmal verloren. Der Integrator kann Google einen Rohcode zur Verfügung stellen. Beispielsweise kann ein Kreditkarten-Gateway (der Integrationspartner) dieses Feld verwenden, um Google den genauen Ablehnungscode mitzuteilen, der vom VISA-Netzwerk erhalten wurde. In diesem Fall wäre die Dieser Wert ist erforderlich, wenn |
Union-Feld Für |
|
transactionMaxLimit |
OPTIONAL: Wenn Dieser Wert entspricht Mikros desselben |
transactionMinLimit |
OPTIONAL: Wenn Dieser Wert entspricht Mikros desselben |
currentBalance |
OPTIONAL: Wenn das Ergebnis Dieser Wert muss dieselbe Währung haben wie die |
CaptureResultCode
Ergebniscodes für eine Aufnahme.
| Enums | |
|---|---|
UNKNOWN_RESULT |
Legen Sie diesen Standardwert niemals fest. |
SUCCESS |
Aufnahme erfolgreich. |
CHARGE_UNDER_TRANSACTION_LIMIT |
Der angeforderte Erfassungsbetrag entspricht nicht dem Mindestwert pro Transaktion des Integrators. Wenn dieser Code verwendet wird, geben Sie in das Feld transactionMinLimit den Mindesttransaktionsbetrag für Mitteilungen an Nutzer ein. |
CHARGE_EXCEEDS_TRANSACTION_LIMIT |
Der angeforderte Erfassungsbetrag überschreitet das Limit des Integrators pro Transaktion. Wenn dieser Code verwendet wird, geben Sie in das Feld transactionMaxLimit das Transaktionslimit für Mitteilungen an Nutzer ein. |
CHARGE_EXCEEDS_DAILY_LIMIT |
Das Nutzerkonto kann momentan nicht für Käufe verwendet werden, da das Tageslimit bereits überschritten wurde. |
CHARGE_EXCEEDS_MONTHLY_LIMIT |
Das Nutzerkonto kann momentan nicht für Käufe verwendet werden, da das monatliche Limit überschritten wurde. |
INSUFFICIENT_FUNDS |
Das Konto ist nicht ausreichend gedeckt, um diese Aufnahme zu garantieren. |
SUSPECTED_FRAUD |
Der Integrator hat Grund zur Annahme, dass diese Transaktion betrügerisch ist. |
ACCOUNT_CLOSED |
Das beim Integrator geführte Nutzerkonto wurde geschlossen. Dieser Rückgabewert führt dazu, dass das Zahlungsmittel des Nutzers mit Google geschlossen wird. Der Nutzer wird gezwungen, ein neues Zahlungsmittel hinzuzufügen. |
ACCOUNT_CLOSED_ACCOUNT_TAKEN_OVER |
Das Nutzerkonto beim Integrator wurde geschlossen, da eine Kontoübernahme vermutet wird. Dieser Rückgabewert führt dazu, dass das Zahlungsmittel des Nutzers mit Google geschlossen wird. Der Nutzer wird gezwungen, ein neues Zahlungsmittel hinzuzufügen. |
ACCOUNT_CLOSED_FRAUD |
Das Nutzerkonto beim Integrator wurde wegen Betrugs geschlossen. Dieser Rückgabewert führt dazu, dass das Zahlungsmittel des Nutzers mit Google geschlossen wird. Der Nutzer wird gezwungen, ein neues Zahlungsmittel hinzuzufügen. |
ACCOUNT_ON_HOLD |
Das Konto des Nutzers wurde auf „Hold“ gesetzt. |
OTP_NOT_MATCHED |
Das OTP stimmte nicht mit den vom Integrator gesendeten Informationen überein. |
OTP_ALREADY_USED |
OTP wurde bereits verwendet. |
CAPTURE_REQUEST_EXPIRED |
Es hat zu lange gedauert, bis der Integrator die Finanzmittel des Nutzers erfasst hat. Google betrachtet diese Ablehnung als endgültig. Daher muss der Integrator dafür sorgen, dass das Geld des Nutzers später nicht einbehalten wird oder dass der Nutzer im Falle einer erfolgreichen Erfassung automatisch eine Erstattung erhält. |
INVALID_PIN |
Der Nutzer hat eine ungültige PIN eingegeben. |
OS_LOCK_FAILED |
Für diesen Zahlungsablauf ist eine Sicherheitsabfrage des Betriebssystems erforderlich und der Nutzer konnte das Gerät nicht entsperren. |
PIN_ENTRY_ATTEMPTS_EXHAUSTED |
Für diesen Zahlungsablauf muss der Nutzer seine PIN eingeben. Der Nutzer hat die PIN-Eingabe so oft nicht eingegeben, dass keine Wiederholungsversuche mehr möglich waren. |
USER_EXITED_PAYMENT_FLOW |
Der Nutzer hat den gesamten Zahlungsversuch abgebrochen (entweder über die Betriebssystemsperre oder den PIN-Eingabebildschirm). |
MONTHLY_FREQUENCY_LIMIT_EXCEEDED |
Das Konto des Nutzers kann momentan nicht für Käufe verwendet werden, da das monatliche Limit für Transaktionsversuche überschritten wurde. |
DECLINED_BY_ISSUER |
Dieser Ablehnungscode sollte niemals im stabilen Zustand verwendet werden. Er ist als vorübergehender Catchall-Code gedacht, der verwendet wird, wenn der Integrator auf einen unbekannten Ablehnungscode vom zugrunde liegenden Aussteller des Zahlungsmittels des Nutzers stößt. Dieser Ergebniscode kann verwendet werden, während der Integrator einen besser geeigneten Ergebniscode ermittelt oder das Hinzufügen eines neuen Ergebniscodes zu dieser Spezifikation aushandelt. Wichtig ist, dass es sich bei diesem Ablehnungscode in erster Linie um eine reale Ablehnung handelt. Für Google ist dies ein dauerhafter Rückgang. Wenn der Integrator diese Antwort zurückgibt, muss er herausfinden, was der Code des Ausstellers wirklich bedeutet, und dem Nutzer eine Erstattung gewähren, wenn der Code tatsächlich Wenn dieser Ablehnungscode länger als eine bestimmte Anzahl von Tagen für denselben zugrunde liegenden Ablehnungscode verwendet wird, behandelt Google ihn als Fehler und verfolgt ihn im Hinblick auf Vertragsstrafen im Hinblick auf die Behebung von Fehlern entsprechend. |
RawResult
Rohergebnisobjekt.
| JSON-Darstellung |
|---|
{ "scope": string, "rawCode": string } |
| Felder | |
|---|---|
scope |
OPTIONAL: Gültigkeitsbereich von rawCode, kann leer sein. |
rawCode |
ERFORDERLICH: Rohcode vom Integrator oder den enthaltenen Subsystemen. |
CaptureResultNotificationResultCode
Ergebniscodes für die Methode captureResultNotification.
| Enums | |
|---|---|
UNKNOWN_RESULT |
Legen Sie diesen Standardwert niemals fest. |
SUCCESS |
Die Benachrichtigung über das Aufnahmeergebnis wurde verarbeitet. |