Alipay In-App-Zahlungen für Webservices API

  Zuletzt aktualisiert: 

 

CW36.png

Alipay ist ein chinesisches E-Wallet, das zu AntFinancial gehört, einer Tochtergesellschaft der Alibaba-Gruppe, dem größten E-Commerce-Unternehmen der Welt. Wenn Sie Alipay auswählen, werden die Kunden auf die von Ihnen gehosteten Seiten weitergeleitet, geben ihre persönlichen Daten ein und stimmen der Zahlung zu, bevor sie wieder auf Ihre Website weitergeleitet werden. Sobald der Vorgang abgeschlossen ist, erhalten Sie eine Bestätigung über URL-Benachrichtigung.

  Unterstützte Kundenländer   Keine Einschränkungen für Kundenländer.
  Unterstützte Währungen   AUD, CAD, CHF, DKK, EUR, GBP, HKD, JPY, KRW, NOK, NZD, SEK, SGD, THB, USD
  Rückerstattungen

  Vollständige und teilweise Erstattung möglich.

  Rückbuchungen

  Zahlungen sind von Rückbuchungen ausgeschlossen.

  Zero-authorisation

  Nicht unterstützt.

  Wiederkehrende Zahlungen

  Nicht unterstützt.

 

Konfiguration

Um Alipay für Ihr Konto zu aktivieren, wenden Sie sich bitte an Ihren Kundenbetreuer.
Ein Test-Sandbox-Konto wird zur Verfügung gestellt, das Sie zum Testen Ihrer Implementierung benötigen.

Bevor Sie mit der Verarbeitung von In-App-Zahlungen beginnen können, müssen Sie Alipay kontaktieren und beantragen, dass Ihr Konto für In-App-Zahlungen freigeschaltet wird.
Klicken Sie hier, um mehr über In-App-Zahlungen zu erfahren (Link zu externer Seite).

 

  Überblick über Alipay

  1. Initiieren Sie den Kunden
    • Der Kunde erklärt sich mit einer Zahlung über Alipay auf der App des Händlers einverstanden.
    • Der Händler sendet eine Anfrage an AUTH, um die Sitzung zu starten.
    • Der Händler erhält die Antwort AUTH, einschließlich signeddata.

  2. Weiterleiten zu Alipay
    • Der Händler verwendet das SDK von Alipay, um die App Alipay auf dem Gerät des Kunden zu öffnen (unter Verwendung der signeddata).
    • Der Kunde folgt den Anweisungen auf den von Alipay gehosteten Seiten, um die Zahlung zu autorisieren.
    • Der Kunde wird zur App des Händlers weitergeleitet und erhält eine verifystring Wert, der von Alipay bereitgestellt wird.

  3. Auth-Antwort verifizieren
    • Das VU stellt einen Antrag an VERIFYAUTHRESPONSE, der die verifystring.
    • Trust Payments wendet sich an Alipay , um das Ergebnis der von Alipay veranstalteten Sitzung abzufragen.
    • Der Händler erhält die Antwort VERIFYAUTHRESPONSE und verwendet diese, um dem Kunden die entsprechende Nachricht anzuzeigen.

  4. Abrechnung
    • Zu einem späteren Zeitpunkt wird Alipay Trust Payments kontaktieren, um zu bestätigen, dass das Geld überwiesen wurde.
    • Trust Payments sendet eine URL-Benachrichtigung an das System des Händlers, um zu bestätigen, dass der Betrag beglichen wurde.
    • Der Händler erhält die Benachrichtigung und antwortet auf Trust Payments, um den erfolgreichen Empfang zu bestätigen.

 

1. Initiieren Sie den Kunden

Wenn sich der Kunde für die Zahlung mit Alipay entscheidet, muss Ihr System eine AUTH -Anfrage durchführen und, falls erfolgreich, den Browser des Kunden auf die in der Antwort zurückgegebene URL umleiten.

 

AUTH Anfrage (In-App-Zahlungen)

Die folgende Beispielanfrage bezieht sich auf eine Alipay AUTH Anfrage unter Verwendung der Schnittstelle für In-App-Zahlungen:

Python PHP cURL Rohes JSON Rohes XML
#!/usr/bin/python
import securetrading

stconfig = securetrading.Config()
stconfig.username = "webservices@example.com"
stconfig.password = "Password1^"
st = securetrading.Api(stconfig)

auth = {
"currencyiso3a": "EUR",
"paymenttypedescription": "ALIPAY",
"requesttypedescriptions": ["AUTH"],
"sitereference": "test_site12345",
"accounttypedescription": "ECOM",
"billingcountryiso2a": "DE",
"baseamount": "1050",
"orderreference": "My_Order_123",
"applicationtype": "APP",
"applicationsystem": "ios"
}

strequest = securetrading.Request()
strequest.update(auth)
stresponse = st.process(strequest) #stresponse contains the transaction response

Ersetzen Sie <DOMAIN> mit einer unterstützten Domäne. Klicken Sie hier für eine vollständige Liste.

 

Feldspezifikation

  Feld Format Beschreibung
X1-EN.png accounttypedescription
XPath: /operation/accounttypedescription
Alpha (20) Nur "ECOM" (E-Commerce) wird unterstützt.
X1-EN.png applicationsystem
XPath: /operation/applicationsystem
Alpha (7) Erforderlich, wenn applicationtype ist "APP". Definiert die Plattform, auf der die App ausgeführt wird. Unterstützte Werte sind "android" und "ios".
X1-EN.png applicationtype
XPath: /operation/applicationtype
Alpha (3) Bestimmt die Zahlungsschnittstelle, die dem Kunden angezeigt wird, nachdem er zur von Alipay gehosteten Kasse weitergeleitet wurde:

Wenn "APP" übermittelt wird - Die Transaktion wird über die Schnittstelle Alipay In-App Payments abgewickelt, die in erster Linie für die Verwendung innerhalb von mobilen Apps konzipiert ist.

Hinweis: Bevor Sie Transaktionen mit In-App-Zahlungen abwickeln können (sowohl über die Sandbox-Umgebung als auch mit Live-Zahlungen), müssen Sie sich an Alipay wenden und beantragen, dass die Funktion in Ihrem Alipay -Konto aktiviert wird.

X1-EN.png baseamount
XPath: /billing/amount
Numerisch (13) Der Betrag der Transaktion in Basiseinheiten, ohne Kommas oder Dezimalpunkte, d. h. €10 werden als €1000 übermittelt. Dieser Wert muss größer als Null sein. (Die maximale Länge kann je nach Bank variieren - weitere Informationen erhalten Sie von Ihrer Bank)
X1-EN.png currencyiso3a
XPath: /billing/amount/@currencycode
Alpha (3)

Die Währung , in der die Transaktion verarbeitet werden soll (im ISO3A-Format).

Eine Liste der Währung Codes, die von Alipay unterstützt werden, finden Sie in der Liste oben auf dieser Seite.

X1-EN.png orderreference
XPath: /merchant/orderreference
Alphanumerisch einschließlich Symbole (25)

 

Empfohlene Länge 25 Zeichen oder weniger (genaue Länge abhängig von der erwerbenden Bank). Die Nichteinhaltung dieser Anforderung kann dazu führen, dass der Text in der Transaktion abgeschnitten wird.

Ihre eindeutige Auftragsnummer, die im System Trust Payments gespeichert werden kann.
X1-EN.png paymenttypedescription
XPath: /billing/payment/@type
Alpha (20) Dieser Wert muss als "ALIPAY" angegeben werden.
X1-EN.png returnurl
XPath: /merchant/returnurl
URL (2048) Die URL, zu der der Kunde nach der Bearbeitung einer Zahlung mit Alipay zurückgeführt wird.
X1-EN.png requesttypedescription
XPath: /@type
Alpha (20) Der Wert in der Anfrage muss "AUTH" lauten.
X1-EN.png sitereference
XPath: /operation/sitereference
Alphanumerisch
& Unterstrich (50)
Die Website-Referenz bezieht sich auf Ihr individuelles Konto, das Sie bei der Einrichtung erhalten haben. Wenn Sie Ihre Website-Referenz nicht kennen, wenden Sie sich bitte an unser Support-Team.

 

AUTH Antwort

Python PHP Rohes JSON Rohes XML
{
u'requestreference': u'An3ug1kap',
u'version': u'1.00',
u'responses': [{
u'transactionreference': u'23-86-113',
u'merchantname': u'Test Merchant',
u'paymenttypedescription': u'ALIPAY',
u'orderreference': u'My_Order_123',
u'settleduedate': u'2017-03-16',
u'baseamount': u'1050',
u'transactionstartedtimestamp': u'2020-03-16 16:25:08',
u'errormessage': u'Ok',
u'settlestatus': u'10',
u'accounttypedescription': u'ECOM',
u'errorcode': u'0',
u'requesttypedescription': u'AUTH',
u'operatorname': u'webservices@example.com',
u'livestatus': u'0',
u'currencyiso3a': u'EUR',
u'partner id': u'2088611221573217'
}]
}

 

Feldspezifikation

  Feld Format Beschreibung
X4-EN.png accounttypedescription
XPath: /operation/accounttypedescription
Alpha (20) Der zurückgegebene Wert ist "ECOM".
X4-EN.png baseamount
XPath: /billing/amount
Numerisch (13) Der Betrag der Transaktion in Basiseinheiten, ohne Kommas oder Dezimalpunkte, so dass €10 als 1000 zurückgegeben werden.
X4-EN.png currencyiso3a
XPath: /billing/amount/@currencycode
Alpha (3)

Die Währung, in der die Transaktion verarbeitet wurde (im ISO3A-Format).

Eine Liste der Währung Codes, die von Alipay unterstützt werden, finden Sie in der Liste oben auf dieser Seite.

X4-EN.png errorcode
XPath: /error/code
Numerisch (1-5) Die Fehlercode (errorcode) sollte verwendet werden, um festzustellen, ob die Anfrage erfolgreich war oder nicht.
  • Wenn die Fehlercode "0" ist, war die Transaktion erfolgreich.
  • Wenn die Fehlercode nicht "0" ist, war die Transaktion nicht erfolgreich.

Klicken Sie hier für eine vollständige Liste der errorcode und Nachrichtenwerte.

X4-EN.png errormessage
XPath: /error/message
Alphanumerisch (255) Dies ist die entsprechende Meldung zum obigen Code.

Klicken Sie hier für eine vollständige Liste der errorcode und Nachrichtenwerte.

X4-EN.png orderreference
XPath: /merchant/orderreference
Alphanumerisch einschließlich
Symbole (25)
Die eindeutige Auftragsreferenz, die im System von Trust Payments und Alipaygespeichert ist.
X4-EN.png partnerid
XPath: /merchant/partnerid
Numerisch (16) Eine eindeutige Kennung für Alipay Partner.
X4-EN.png paymenttypedescription
XPath: /billing/payment/@type
Alpha (20) Der zurückgegebene Wert ist "ALIPAY".
X4-EN.png requesttypedescription
XPath: /@type
Alpha (20) Der zurückgegebene Wert ist "AUTH".
X4-EN.png settlestatus
XPath: /settlement/settlestatus
Numerisch (3) Damit können Sie den Status der Zahlung ermitteln. Wie dieses Feld am besten zu interpretieren ist, erfahren Sie im Abschnitt Handhabung der Antwort weiter unten.
X4-EN.png signeddata
XPath: /other/signeddata
  Wird von Alipay zurückgegeben. Muss über das SDK übermittelt werden, wenn der Kunde auf die App Alipay weitergeleitet wird.
X2-EN.png errordata
XPath: /error/data
Alphanumerisch (255)

Zusätzliche Informationen zur Behebung des Fehlers.

Wird nur zurückgegeben, wenn ein Fehler aufgetreten ist.

 

Umgang mit der Antwort

Bei der Bearbeitung der Antwort AUTH für die Zahlungen von Alipay geben wir folgende Empfehlungen ab Kontrollen zur Durchführung folgender Zahlungen müssen weiterhin befolgt werden, mit Ausnahme der Behandlung der settlestatus die an verschiedene Bedingungen geknüpft ist, die im Folgenden erläutert werden:

Die settlestatus die in der Antwort AUTH zurückgegeben wird, wird verwendet, um den Status der Zahlung Alipay zu bestimmen:

  Wenn die settlestatus 10" ist, ist die Zahlung ausstehend Abrechnung

  • Das Geld ist noch nicht auf Ihrem Bankkonto eingegangen.
  • Der nächste Schritt besteht darin, das Gerät des Kunden über das SDK auf die App Alipay umzuleiten, um die Zahlung fortzusetzen.

Das Geld wird erst dann auf Ihr Konto überwiesen, wenn der Kunde auf die App von Alipay weitergeleitet wird, um die Zahlung abzuschließen. Lesen Sie weiter für weitere Informationen.

  • Wenn es eine Aktualisierung der Abrechnungsstatus der AUTH gibt, erhalten Sie eine URL-Benachrichtigung , um Sie darüber zu informieren, dass die settlestatus wurde entweder auf "3" oder "100" aktualisiert.
  • Weitere Informationen zu den Notifizierungen finden Sie weiter unten.

  Wenn die settlestatus ist "3", wurde die Zahlung storniert

  • Die Zahlung wurde abgelehnt, oder es ist ein Fehler aufgetreten.
  • Um mehr darüber zu erfahren, warum die Zahlung fehlgeschlagen ist, müssen Sie sich die errorcode. z.B. "70000" bedeutet, dass die Zahlung abgelehnt wurde. Klicken Sie hier, um eine vollständige Liste der Fehlercodes zu erhalten.
  • In seltenen Fällen kann die settlestatus kann von "3" auf "100" aktualisiert werden (was bedeutet, dass die Zahlung erfolgreich abgewickelt wurde). In diesem Fall erhalten Sie eine weitere Mitteilung an URL-Benachrichtigung . Dies kann z. B. darauf zurückzuführen sein, dass der Kunde sich direkt an Alipay wendet, um ein Problem auf seinem Konto zu lösen, das die erfolgreiche Abwicklung der Zahlung verhindert hat.

 

2. Weiterleitung zur Alipay App

Nachdem Sie die Antwort von AUTH überprüft haben, müssen Sie, falls die Anfrage erfolgreich war, das Gerät des Kunden mit Hilfe des SDK auf die App Alipay umleiten, einschließlich der signeddata die in der Antwort AUTH zurückgegeben wird.

Weitere Informationen darüber, wie die signierten Daten analysiert und mit Hilfe des SDK übermittelt werden, finden Sie in der technischen Dokumentation vonAlipay(Link zu externer Seite).

Sobald der Kunde auf der App ist, wird er aufgefordert, weitere Informationen einzugeben, um die Zahlung abzuschließen. Zu einem späteren Zeitpunkt, wenn der Kunde die erforderlichen Schritte in der App Alipay erfolgreich abgeschlossen hat, wird das Gerät des Kunden wieder zu Ihrer App zurückgeleitet.

  Beim Testen wird Ihnen die von Alipay bereitgestellte Sandbox angezeigt. Um eine Testtransaktion durchzuführen, müssen Sie den Anweisungen auf dem Bildschirm folgen. Bitte wenden Sie sich an Ihren Kundenbetreuer, um die Test-Zugangsdaten zu erhalten, die Sie in der Sandbox eingeben müssen.

 

3. Auth-Antwort verifizieren

Um zu überprüfen, ob die Zahlung erfolgreich abgewickelt wurde, während der Kunde die App Alipay verwendet hat, müssen Sie eine VERIFYAUTHRESPONSE Anfrage an Trust Payments senden:

 

VERIFYAUTHRESPONSE Anfrage

Python PHP cURL Rohes JSON Rohes XML
#!/usr/bin/python
import securetrading

stconfig = securetrading.Config()
stconfig.username = "webservices@example.com"
stconfig.password = "Password1^"
st = securetrading.Api(stconfig)

verifyAuthResponse = {
"requesttypedescriptions": ["VERIFYAUTHRESPONSE"],
"parenttransactionreference": "44-86-102",
"sitereference": "test_site12345",
"verifystring": "ALIPAY SYNC RESPONSE STRING"
}

strequest = securetrading.Request()
strequest.update(verifyAuthResponse)
stresponse = st.process(strequest) #stresponse contains the transaction response

 

Feldspezifikation

  Feld Format Beschreibung
X1-EN.png parenttransactionreference
XPath: /operation/parenttransactionreference
Alphanumerisch
& Bindestriche (25)
Die transactionreference die in der Antwort AUTH zurückgegeben wird.
X1-EN.png requesttypedescriptions
XPath: /@type
Alpha (20) Sie müssen "VERIFYAUTHRESPONSE" eingeben, wie im Beispiel des Antrags gezeigt.
X1-EN.png sitereference
XPath: /operation/sitereference
Alphanumerisch
& Unterstrich (50)
Identifiziert Ihre Website auf dem System Trust Payments .

Wenn Sie Ihre Website-Referenz nicht kennen, wenden Sie sich bitte an unser Support-Team.

X1-EN.png verifystring
XPath: /operation/verifystring
  Wird zurückgegeben, wenn der Kunde von der App Alipay zurückgeleitet wird.

 

VERIFYAUTHRESPONSE Antwort

Die in der Antwort VERIFYAUTHRESPONSE zurückgegebenen Informationen sollten verwendet werden, um die Nachricht zu bestimmen, die dem Kunden nach seinem Zahlungsversuch angezeigt wird.

Python PHP Rohes JSON Rohes XML
{
u'requestreference': u'An3ug1kap',
u'version': u'1.00',
u'response': [{
u'transactionstartedtimestamp': u'2020-03-16 16:25:08',
u'errormessage': u'Ok',
u'errorcode': u'0',
u'requesttypedescription': u'VERIFYAUTHRESPONSE',
}]
}

 

Feldspezifikation

  Feld Format Beschreibung
X4-EN.png errorcode
XPath: /error/code
Numerisch (1-5) Die Fehlercode (errorcode) sollte verwendet werden, um festzustellen, ob die Anfrage erfolgreich war oder nicht.
  • Wenn die Fehlercode "0" ist, war die Transaktion erfolgreich.
  • Wenn die Fehlercode nicht "0" ist, war die Transaktion nicht erfolgreich.

Klicken Sie hier für eine vollständige Liste der errorcode und Nachrichtenwerte.

X4-EN.png errormessage
XPath: /error/message
Alphanumerisch (255) Dies ist die entsprechende Meldung zum obigen Code.

Klicken Sie hier für eine vollständige Liste der errorcode und Nachrichtenwerte.

X4-EN.png requesttypedescription
XPath: /@type
Alpha (20) Der zurückgegebene Wert ist "VERIFYAUTHRESPONSE".
X4-EN.png transactionstartedtimestamp
XPath: /timestamp
Datum Uhrzeit JJJJ-MM-TT hh:mm:ss  Der Zeitpunkt, zu dem die Anfrage bearbeitet wurde.

 

4. Abschluss der Zahlung

Nach Erhalt der Antwort VERIFYAUTHRESPONSE müssen Sie die zurückgegebenen Daten verwenden, um die entsprechende Antwortmeldung mit dem Ergebnis der Zahlung (z. B. Erfolg/Fehler) anzuzeigen.

Falls konfiguriert, wird unser System eine URL-Benachrichtigung übermitteln, um Sie über das Ergebnis Autorisierung zu informieren. Nach Autorisierung werden die Gelder zu einem späteren Zeitpunkt abgerechnet, wie von Alipay festgelegt.

  Der Abrechnung Prozess für Alipay unterscheidet sich von dem Standardprozess bei kartenbasierten Zahlungsmethoden.

  Die Meldung Abrechnung darf nicht unmittelbar nach der Bearbeitung der Anfrage gesendet werden. AUTH

Aus diesem Grund sollten Sie dem Kunden sofort eine Erfolgs- oder Fehlermeldung anzeigen, wenn er von den gehosteten Seiten von Alipayzurückkehrt, und nicht auf diese Benachrichtigung warten.

Für den unwahrscheinlichen Fall, dass die Zahlung nach 7 Tagen immer noch aussteht Abrechnung (settlestatus "10"), wird dies zur Untersuchung eingeplant und wir werden Sie mit weiteren Informationen kontaktieren.

Bevor Sie mit dem Testen beginnen, empfehlen wir Ihnen, sich mit unserem Support-Team in Verbindung zu setzen und zu beantragen, dass in Ihrem Konto Regeln aktiviert werden, die URL-Benachrichtigungen in den folgenden Szenarien an Ihr System übermittelt:

  • Wenn eine Zahlung genehmigt wird.
  • Wenn die Gelder abgewickelt sind.

 

Konfigurieren der Benachrichtigung Autorisierung

Wir empfehlen, mindestens die folgenden Felder in Ihre Autorisierung Meldung aufzunehmen:

  • Basisbetrag (baseamount) (z.B. £10.50 ist "1050")*
  • Hauptbetrag (mainamount) (z.B. £10.50 ist "10.50")*
  • Rechnungsland (billingcountryiso2a)
  • Währung (currencyiso3a)
  • Fehlercode (errorcode)
  • Live-Status (livestatus)
  • Bestellnummer (orderreference)
  • Zahlungsart (paymenttypedescription)
  • Anforderungstyp (requesttypedescription)
  • Abrechnungsstatus (settlestatus)
  • Website-Referenz (sitereference)
  • Transaktionsnummer (transactionreference)
  • Zeitstempel Transaktionsstart (transactionstartedtimestamp)

*Bitte wählen Sie Ihr bevorzugtes Format.

 

Konfigurieren der Benachrichtigung Abrechnung

Wir empfehlen, die folgenden Felder in die URL-Benachrichtigungen auf Abrechnung aufzunehmen:

  • Abrechnungsstatus (settlestatus)
  • Website-Referenz (sitereference)
  • Transaktionsnummer (transactionreference)

 

Prüfen Sie die Benachrichtigung

Sie müssen den Inhalt jeder eingegangenen Meldung prüfen und entsprechend reagieren, indem Sie die in unserer Website beschriebenen Verfahren befolgen. URL-Benachrichtigungen Dokumentation. Insbesondere müssen Sie sich die aktualisierte settlestatus Wert:

  • Auf Autorisierung: Wenn die settlestatus 0", "1" oder "10" ist, wurde die Zahlung autorisiert und Sie müssen zu diesem Zeitpunkt keine weiteren Maßnahmen ergreifen. Werte von "2" oder "3" bedeuten jedoch, dass die Mittel nicht geplant für Abrechnung (ausgesetzt und storniert, bzw.).
  • Auf Abrechnung: Wenn die settlestatus auf "100" aktualisiert wurde, bedeutet dies, dass der Betrag beglichen wurde. Wurde der Wert auf "3" aktualisiert, bedeutet dies, dass ein Problem aufgetreten ist und die Zahlung daraufhin storniert wurde.

 

Rückerstattungen

Nach der Abwicklung einer Zahlung mit Alipay ist es möglich, dem Kunden eine Rückzahlung zu gewähren, indem Sie eine Anfrage an REFUND senden.

Erstattungen für Alipay werden sofort abgerechnet (settlestatus "100").

 

Voraussetzungen

  • Sie können eine Zahlung erst dann erstatten, wenn die AUTH abgewickelt wurde (settlestatus ist "100").
  • Sie können keinen höheren Betrag erstatten, als ursprünglich abgerechnet wurde.

Die REFUND Anfrage und die Antwort für Alipay Zahlungen folgen der gleichen Feldspezifikation, wie sie in unserer Standarddokumentation REFUND beschrieben ist. Klicken Sie hier für weitere Informationen.

War dieser Artikel hilfreich?
0 von 0 Personen fanden dies hilfreich