Konfiguration für Amazon Pay
Es gibt zwei nutzbare Optionen, je nachdem, ob Sie ein neuer oder ein bestehender Kunde sind.
Bestehende Kunden
Bereits bestehende Kunden müssen sich bei ihren Konten anmelden und einen neuen Satz von API-Schlüsseln erzeugen, die mit Amazon Pay Checkout Version.2 verwendet werden.
Wir haben bereits die erforderlichen Daten für Ihre Konten für den ursprüngliche Checkout v.1 erzeugt.
Bitte beachten Sie unten die "Anleitung zum Erstellen von API-Schlüsseln".
Neuer Kunde
Vor der Nutzung von Amazon Pay müssen Sie sich unter https://pay.amazon.de/signup registrieren.
Eine Alternative ist die Anmeldung bei Amazon basierend auf dem Land mit folgenden Schritten;
- folgen Sie der obigen URL
- wählen Sie das nötige Land anhand der Landesflagge oben rechts aus:
Wenn Sie an der Amazon Verkäuferzentrale angemeldet sind, sollten Sie 2 Konten haben, zwischen denen Sie umschalten können:
- Sandbox
- Produktion
Die erforderlichen Daten für das Onboarding sind die folgenden:
Amazon Cv.2 | Anmerkung |
---|---|
Ländercode* | Code des verwendeten Amazon-Marktes (DE=EU, UK, JP und US) |
MerchantID | aus der Amazon Verkäuferzentrale |
MWS Autorisierungs-Token | Beispiel: amzn.mws.a4a8d852-3d9e-f441-0674-d042baa3cf6452 |
merchant Store Name | Name des Geschäfts |
StoreID | Beispiel: amzn1.application-oa2-client.7150fff45acf49f8acd519fa485142a2 |
- Wenn Sie mehrere Märkte haben, müssen Sie uns diese Informationen für jeden benötigten Markt geben.
Bitte befolgen Sie nachstehende Anleitung, um die nötigen API-Schlüssel zu erzeugen.
Wichtig: Wenn Sie die Option zum Erzeugen von API-Schlüsseln nicht sehen, müssen Sie zuerst einen Shop anlegen und dann die API-Schlüssel erzeugen.
Unter der "Integrationszentrale" ganz unten können Sie dies über den dortigen Link tun:
MWS Autorisierungs-Token
Ein wichtiger Teil der nötigen Daten ist das MWS Autorisierungs-Token von Amazon, das Computop die Erlaubnis gibt, Transaktionen für Ihren Shop durchzuführen.
Der zweite Schritt ist das Generieren eines MWS Auth Token. Das sind die benötigten Daten:
Deutsch/EU:
- Developer name: CT_Sandbox_EU
- Developer account number: 0143-6461-8727
Anleitung
Wenn Sie in der Verkäuferzentrale von Amazon angemeldet sind, gehen Sie oben rechts auf die Seite, klicken auf Einstellungen und wählen "Benutzerberechtigungen":
Dies führt Sie zur Seite "Benutzerberechtigungen", die Ihnen die aktuellen Benutzer anzeigt. Hier können Sie Ihrem Konto einen externen Entwickler hinzufügen und klicken dafür bitte auf "Ihre Apps verwalten öffnen":
Dies führt zu einer neuen Seite, auf der Sie Entwickler sehen können, die Zugriff haben. Hier können Sie Berechtigungen hinzufügen, löschen und erneuern. Bitte klicken Sie auf "Neuen Entwickler autorisieren":
Auf der neuen Seite müssen Sie den oben angegebenen Entwicklernamen und die ID hinzufügen. Füllen Sie die Informationen aus und klicken auf "Weiter":
Auf der letzten Seite müssen Sie den Geschäftsbedingungen zustimmen, um einem Entwickler Zugriff auf das Konto zu gewähren.
Wenn Sie auf „Weiter“ klicken, wird eine Erfolgsseite mit Informationen angezeigt:
Mit dem letzten Klick auf „Weiter“ gelangen Sie zurück zur ursprünglichen „Benutzerberechtigung“, wo nun der Entwickler angezeigt wird:
Hier können Sie nun auf „Anzeigen“ klicken und auf den „MWS Authorization Token“ zugreifen und diesen auch kopieren.
Dann senden Sie das erhaltene MWS Autorisierungs-Token auf einem sicheren Weg an den Computop Helpdesk zur Konfiguration.
Anleitung zum Erzeugen von API-Schlüsseln
Um neue API-Schlüssel zu erzeugen, wählen Sie oben auf der Seite eines Ihrer Konten aus, entweder Produktion oder Sandbox. Der Vorgang muss für beide Konten durchgeführt werden. Die Amazon-Beschreibung finden Sie hier.
Klicken Sie bitte links auf das Symbol mit den 3 horizontalen Strichen.
Im erscheinenden Menü gehen Sie bitte zu "Integration" und wählen "Integrationszentrale".
In der Integrationszentrale gehen Sie zum Abschnitt "API-Schlüssel erzeugen" und klicken dort auf die Schaltfläche.
Es erscheint ein Popup-Fenster, in dem Sie "API-Zugangsdaten erzeugen" wählen müssen. Hier müssen Sie den Schlüsseln auch einen eindeutigen Namen geben:
Die neu erstellten Schlüssel sind sofort in der "Integrationszentrale" sichtbar. Dort wählen Sie die Option "Details anzeigen":
Bei den Details können Sie die Daten ansehen oder im JSON-Format herunterladen:
JSON-Beispiel:
Wichtig:
- Diese Daten werden für Ihr Onboarding benötigt und müssen zur Konfiguration auf sicherem Weg an den Computop Helpdesk gesendet werden.
- Der gleiche Vorgang muss für das zweite Konto wiederholt werden, je nachdem, welches Sie zuerst ausgeführt haben.
Benachrichtigungs-URL
Kunden müssen auch die folgende Paygate Benachrichtungs-URL speichern/konfigurieren.
URL: https://www.computop-paygate.com/amazonpaycomplete.aspx
Gehen Sie zum Menü oben links:
Im erscheinenden Menü gehen Sie bitte zu "Integration" und wählen "MWD Access Key":
Unten auf der Seite sehen Sie die Option für IPN (Instant Payment Notification):
Nach einem Klick auf den blauen Link öffnen sich weitere Seiten mit Integrationseinstellungen:
Klicken Sie hier bitte auf die Schaltfläche "Bearbeiten":
- Fügen Sie hier bitte die folgende URL zur Integrator-URL hinzu und klicken auf die Schaltfläche "Aktualisieren".
https://www.computop-paygate.com/amazonAPAV2Notify.aspx
2. Der Händler kann auf Wunsch auch eine eigene Benachrichtigungs-URL hinterlegen. Computop fragt bei der Anfrage auch nach der NotifyURL.
Wichtig: Bitte achten Sie darauf, die per Server-zu-Server gesendeten Benachrichtigungen zu verwenden und sich nicht nur auf die SuccessURLs/FailureURLs zu verlassen.
Schritte im Ablauf
Der grundsätzliche Ablauf einer Bezahlung mit Amazon setzt sich aus mehreren Schritten zusammen:
Schritt | Beschreibung | |
---|---|---|
1 | Schaltfläche Amazon Pay anzeigen | Die Schaltfläche Amazon Pay muss auf der Seite des Webshops ordnungsgemäß implementiert sein und bei jedem Zahlungsvorgang aufgerufen werden. Nachfolgend finden Sie das Code-Snippet als Beispiel. |
2 | Zahlung über amazonAPA.aspx initialisieren (Server-zu-Server) | Sie rufen den Paygate-Endpunkt https://www.computop-paygate.com/amazonapa.aspx gemäß nachstehender Beschreibung auf. Das Paygate antwortet mit Parametern, mit denen Sie die Schaltfläche Amazon Pay aktualisieren müssen. |
3 | Weiterleitung zu Amazon | Nach dem Aktualisieren der Schaltfläche Amazon Pay wird der Kunde zu Amazon weitergeleitet. |
4 | Redirect zurück zu Ihrem Webshop | Nach Bestätigung des bevorzugten Zahlungsmittels des Kunden und optional der Lieferadresse auf der von Amazon Pay gehosteten Seite wird der Kunde zur Bestellübersichtsseite in Ihrem Webshop zurückgeleitet. |
5 | Abschluss des Kaufes | Nachdem der Kunde die Bestellung bestätigt hat, leiten Sie ihn an die Amazon-URL weiter, die Sie als Antwort vom Paygate erhalten haben. |
6 | Redirect zurück zu Ihrem Webshop | Nachdem der Kunde die Zahlung auf der Amazon-Seite abgeschlossen hat, wird er basierend auf dem Ergebnis der Zahlung (URLSuccess / URLFailure) zu Ihrer definierten URL zurückgeleitet. |
7 | Benachrichtigung von Computop wird per S2S gesendet | Stellen Sie bitte sicher, dass Sie die NotifyURL einrichten und verwenden, um eine endgültige Bestätigung über den Erfolg/Fehler der Anfrage zu erhalten. |
Wichtig
Bitte stellen Sie sicher, dass Sie die 2 Hauptaufgaben für Händler einplanen:
- Hinzufügen der neuen Schaltfläche Amazon Cv.2 (Schritt 1)
- Bei der Rückleitung zum Shop (Schritt 2), wo Änderungen stattfinden können, muss der Händler sicherstellen, dass Adresse (falls zutreffend) und Zahlungsmethode geändert werden können. Auch die Möglichkeit einer Betragsänderung sollte mit einem Anruf an das Paygate weitergegeben werden.
Schaltfläche Amazon Pay integrieren
Der folgende Beispiel-Code zeigt, wie Sie die Schaltfläche Amazon Pay button in Ihren Webshop integrieren.
Wenn der Kunde auf diese Schaltfläche klickt, rufen Sie das Paygate auf, um zusätzliche Daten zu erhalten, die für die Aktualisierung der Schaltfläche Amazon Pay nötig sind.
var amazonPayButton = amazon.Pay.renderButton('#AmazonPayButton', {
merchantId: 'xxxxx',
publicKeyId: 'SANDBOX-xxxxxxxxxx',
ledgerCurrency: 'EUR',
checkoutLanguage: 'en_GB',
productType: 'PayAndShip',
placement: 'Cart',
buttonColor: 'Gold'
});
amazonPayButton.onClick(function(){
const [payload, signature, publicKeyId] = your_call_to_paygate();
amazonPayButton.initCheckout({
createCheckoutSessionConfig: {
payloadJSON: payload,
signature: signature,
publicKeyId: publicKeyId
}
});
});
In diesem Fall müssen folgende Parameter in der Schaltfläche vorhanden sein:
Parameter | Beschreibung | Wert |
---|---|---|
merchantId | Von Amazon vergebene SellerId | |
ledgerCurrency | Ihre Hauptbuchwährung. Für EU/UK-Konten kann eine andere Darstellungswährung für die Authentifizierung/Buchung verwendet werden. | Zulässige Werte:
|
placement | Platzierung der Schaltfläche | Zulässige Werte: Cart |
buttonColor | Der Parameter buttonColor definiert die Farbe der Schaltfläche | Zulässige Werte: Gold, LightGray, DarkGray |
productType | Der Parameter productType definiert, ob die Transaktion für physische oder digitale Güter erfolgt. Der Standardwert ist PayAndShip. | Zulässige Werte:
|
checkoutLanguage | Der Parameter checkoutLanguage ist option, um die Sprache im Checkout-Prozcess festzulegen. Das ist insbesondere in einer mehrsprachigen Shopumgebung hilfreich. Ohne Angabe des Sprach-Parameters verwendet Amazon automatisch die am besten geeignete Sprache für den Checkout. | Zulässige Werte:
|
estimatedOrderAmount | Dies ist der geschätzte Bestellbetrag an der Kasse. Er muss nicht mit dem endgültigen Bestellbetrag übereinstimmen, wenn der Käufer seine Bestellung nach dem Start der Kasse aktualisiert. Amazon Pay verwendet diesen Wert, um das Transaktionsrisiko einzuschätzen und zu verhindern, dass Käufer Zahlungsmethoden auswählen, die nicht zur Bearbeitung der Bestellung verwendet werden können Verwenden Sie updateButtonInfo(), um den estimatedOrderAmount zu aktualisieren, wenn sich der geschätzte Bestellwert ändert, z. B. wenn der Käufer etwas aus seinem Warenkorb entfernt oder ihm etwas hinzufügt. Diese Funktion kann die Benutzeroberfläche der Schaltfläche aktualisieren und der neue estimatedOrderAmount wird verwendet, um festzustellen, ob die Bestellung den Mindestbestellwert des Ratenzahlungsanbieters trifft. Funktion Beispiel: <script type="text/javascript" charset="utf-8"> | Beispiel: { "amount": "50.99", "currencyCode":"USD"}, |
Weitere Informationen finden Sie in der Dokumentation von Amazon Pay.
Review Page
Bei Verwendung der vollständigen Kaufabwicklung von Amazon Pay v2 ist die Bewertungsseite auf der Seite des Händlers zu verwenden, um eine:
- Änderung der Adresse
- Änderung der Zahlungsmethode
Eine Änderung von einem oder beiden ist möglich.
Review Page Beispiel
Computop Data
Dies sind die Computop-Daten, die dem Händler für die Review-Page geliefert werden
- mid
- PayID
- XID
- TransID
- Status=REQUEST
- Code=0
- AmountAuth=0
- AmountCap=0
- AmountCred=0
- bdaddrstreet2
- bdaddrcity
- bdaddrcountrycode
- bdaddrname
- bdphonenumber
- bdaddrzip
- AddrStreet
- AddrCity
- AddrCountryCode
- addrname
- phonenumber
- AddrZip
- addrstate
- amazonmerchantid
- rtf=onetime
- amazonstatus=Open
- amazonpayredirecturl
- amazoncheckoutsessionid
- amazonpaymentdescriptor
JS Beispiel
Dies ist ein Beispiel für das Java Script, das Händler verwenden können, um gegebenenfalls Änderungen vorzunehmen
let session = document.getElementById('sessionId').value; let link = document.getElementById('redirectUrl').value; let buyNow = document.getElementById('buy-now'); buyNow.addEventListener('click', () => { window.location = link; }) amazon.Pay.bindChangeAction('#change-paymethod', { amazonCheckoutSessionId: session, changeAction: 'changePayment' }); amazon.Pay.bindChangeAction('#change-shipping', { amazonCheckoutSessionId: session, changeAction: 'changeAddress' });
Die Amazon-Beschreibung finden Sie hier:
Betrag aktualisieren
Wenn der Betrag sich während des Review-Prozesses ändert, muss der folgende Request ans Paygate gesendet werden:
Request URL:
https://www.computop-paygate.com/amazonAPA.aspx |
Request Parameter: Amount=999& Currency=EUR& CountryCode=EU& eventToken=UpdateAuthorizeAmount& PayId=be30427125a94801a4c3757f4ea2111 Response Parameter: mid=ct_teamtest PayID=be30427125a94801a4c3757f4ea21111 TransID=n/a Status=AUTHORIZE_REQUEST Code=0 XID=d1708fcca09945e6b3e195156848b2f8 AmountAuth=0 AmountCap=0 AmountCred=0
Diagrammm zum Prozessablauf
- Version mit möglichen Änderungen an Lieferadresse, Zahlungsmittel oder Betrag.
- Gültig für OTP (einmalige Zahlungen) oder für EInrichtung wiederkehrender Zahlungen (RTF=I)
Nachfolgende wiederkehrende Zahlungen
Nachfolgende Aktionen
Buchung einer Zahlung
Gutschrift einer Zahlung
Storno einer Bestellung
Paygate-Schnittstelle
a alphabetisch as alphabetisch mit Sonderzeichen n numerisch an alphanumerisch ans alphanumerisch mit Sonderzeichen ns numerisch mit Sonderzeichen bool Bool’scher Ausdruck (true oder false) 3 feste Länge mit 3 Stellen/Zeichen ..3 variable Länge mit maximal 3 Stellen/Zeichen enum Aufzählung erlaubter Werte dttm ISODateTime (JJJJ-MM-TTThh:mm:ss) CND Bedingung (condition) M Pflicht (mandatory) O optional C bedingt (conditional) Hinweis: Bitte beachten Sie, dass die Bezeichnungen der Parameter in Groß- oder Kleinbuchstaben zurückgegeben werden können.Definitionen
Datenformate
Format Beschreibung Abkürzungen
Abkürzung Beschreibung Kommentar Wenn ein Parameter Pflicht ist, dann muss er vorhanden sein Wenn ein Parameter optional ist, dann kann er vorhanden sein, ist aber nicht erforderlich Wenn ein Parameter bedingt ist, dann gibt es eine Bedingungsregel, die angibt, ob er Pflicht oder optional ist
Amazon Pay Schnittstelle initialisieren
Um eine Zahlung mit Amazon Pay zu initialisieren, verwenden Sie bitte folgende URL:
https://www.computop-paygate.com/amazonAPA.aspx |
Hinweis: Aus Sicherheitsgründen lehnt das Paygate alle Zahlungsanfragen mit Formatfehlern ab. Bitte übergeben Sie deshalb bei jedem Parameter den korrekten Datentyp. Die folgende Tabelle beschreibt die verschlüsselten Übergabeparameter:
Verschlüsselte Parameter zum Initialisieren einer Zahlung mit Amazon Pay
Adressbeschränkung
Händler können Beschränkungen festlegen, ob Adressen, die der Beschränkungskonfiguration entsprechen, beschränkt werden sollen oder nicht.
Um eine Adressbeschränkung zu senden, verwenden Sie den Parameter addressRestriction – json base64-codiert. Nachfolgend finden Sie die Übersicht der Datenelemente und das Schema:
Schema
{ "type": "Allowed",
"restrictions": { "US":{ "statesOrRegions": ["WA"], "zipCodes": ["95050", "93405"] },
"GB":{ "zipCodes": ["72046", "72047"] },
"IN":{ "statesOrRegions": ["AP"] },
"JP": {}
}
}
The above data should be base64 encoded and passed in the parameter
addressRestriction=
eyAidHlwZSI6ICJBbGxvd2VkIiwgInJlc3RyaWN0aW9ucyI6IHsgIlVTIjoKCnsgInN0YXRlc09yUmVnaW9ucyI6IFsiV0EiXSwgInppcENvZGVzIjogWyI5NTA1MCIsICI5MzQwNSJdIH0KCiwgIkdCIjoKCnsgInppcENvZGVzIjogWyI3MjA0NiIsICI3MjA0NyJdIH0KCiwgIklOIjoKCnsgInN0YXRlc09yUmVnaW9ucyI6IFsiQVAiXSB9CgosICJKUCI6IHt9IH0gfQ==
Zwischenantwort mit zusätzlichen Parametern der Schaltfläche
Die folgende Tabelle beschreibt die Parameter, die das Paygate als Antwort zurückgibt: es können jederzeit neue Parameter hinzugefügt bzw. die Reihenfolge geändert werden die Parameter (z.B. MerchantId, RefNr) sollten nicht auf Groß-/Kleinschreibung geprüft werden
Antwortparameter nach dem Initialisieren einer Zahlung mit Amazon Pay
Der folgende Beispielcode zeigt die aktualisierte und vollständige Amazon-Pay-Schaltfläche, die den Kunden zu Amazon weiterleitet.
<div id="AmazonPayButton"></div>
<script src="https://static-na.payments-amazon.com/checkout.js"></script>
<script type="text/javascript" charset="utf-8">
var amazonPayButton = amazon.Pay.renderButton('#AmazonPayButton', {
merchantId: 'xxxxx',
ledgerCurrency: 'EUR',
checkoutLanguage: 'en_GB',
productType: 'PayAndShip',
placement: 'Cart',
buttonColor: 'Gold'
});
amazonPayButton.onClick(function(){
// Here you need to call your shop server, which creates the initial Call towards Paygate
// and then returns the required data payloadJSON, signature, publicKeyId from the response
var buttonData = getSignedButtonData()
amazonPayButton.initCheckout({
createCheckoutSessionConfig: {
payloadJSON: buttonData.payloadJSON,
signature: buttonData.signature,
publicKeyId: buttonData.publicKeyId
}
});
</script>
Zwischenantwort mit Kundeninformationen an Ihre ShopUrl
Die folgende Tabelle beschreibt die Parameter, die das Paygate als Antwort zurückgibt: es können jederzeit neue Parameter hinzugefügt bzw. die Reihenfolge geändert werden die Parameter (z.B. MerchantId, RefNr) sollten nicht auf Groß-/Kleinschreibung geprüft werden
Antwortparameter nach dem Initialisieren einer Zahlung mit Amazon Pay
Amazon Pay Zahlung buchen
Um eine autorisierte Zahlung mit Amazon Pay zu buchen, verwenden Sie bitte folgende URL:
https://www.computop-paygate.com/capture.aspx |
Die folgenden Tabellen beschreiben die Übergabeparameter und Rückgabewerte, die über die Socket-Verbindung ausgetauscht werden. Der Ablauf der Server-zu-Server-Kommunikation ist im Handbuch Programmiergrundlagen beschrieben.
Hinweis: Aus Sicherheitsgründen lehnt das Paygate alle Zahlungsanfragen mit Formatfehlern ab. Bitte übergeben Sie deshalb bei jedem Parameter den korrekten Datentyp. Die folgende Tabelle beschreibt die verschlüsselten Übergabeparameter:
Verschlüsselte Parameter zur Buchung einer autorisierten Amazon-Pay-Zahlung
Die folgende Tabelle beschreibt die Parameter, die das Paygate als Antwort zurückgibt: es können jederzeit neue Parameter hinzugefügt bzw. die Reihenfolge geändert werden die Parameter (z.B. MerchantId, RefNr) sollten nicht auf Groß-/Kleinschreibung geprüft werden
Antwort-Parameter nach Buchung einer autorisierten Amazon-Pay-Zahlung
Nach einer Buchung erhalten Sie eine Benachrichtigung an die angegebene URLNotify mit den folgenden Parametern:
Antwort-Parameter für URLNotify nach Buchung einer autorisierten Amazon-Pay-Zahlung
Amazon Pay Zahlung gutschreiben
Um eine gebuchte Zahlung mit Amazon Pay wieder gutzuschreiben, verwenden Sie bitte folgende URL:
https://www.computop-paygate.com/credit.aspx |
Die folgenden Tabellen beschreiben die Übergabeparameter und Rückgabewerte, die über die Socket-Verbindung ausgetauscht werden. Der Ablauf der Server-zu-Server-Kommunikation ist im Handbuch Programmiergrundlagen beschrieben.
Hinweis: Aus Sicherheitsgründen lehnt das Paygate alle Zahlungsanfragen mit Formatfehlern ab. Bitte übergeben Sie deshalb bei jedem Parameter den korrekten Datentyp. Die folgende Tabelle beschreibt die verschlüsselten Übergabeparameter:
Verschlüsselte Parameter zur Gutschrift einer Amazon-Pay-Zahlung
Die folgende Tabelle beschreibt die Parameter, die das Paygate als Antwort zurückgibt: es können jederzeit neue Parameter hinzugefügt bzw. die Reihenfolge geändert werden die Parameter (z.B. MerchantId, RefNr) sollten nicht auf Groß-/Kleinschreibung geprüft werden
Antwort-Parameter nach Gutschrift einer autorisierten Amazon-Pay-Zahlung
Nach einer Gutschrift erhalten Sie eine Benachrichtigung an die angegebene URLNotify mit den folgenden Parametern:
Antwort-Parameter für URLNotify nach Gutschrift einer Amazon-Pay-Zahlung
Amazon Pay Bestellung stornieren
Um eine komplette Bestellung mit Amazon Pay mit der Funktion „CancelOrderReference“ zu stornieren, verweden Sie bitte folgende URL:
https://www.computop-paygate.com/reverse.aspx |
Die folgenden Tabellen beschreiben die Übergabeparameter und Rückgabewerte, die über die Socket-Verbindung ausgetauscht werden. Der Ablauf der Server-zu-Server-Kommunikation ist im Handbuch Programmiergrundlagen beschrieben.
Hinweis: Aus Sicherheitsgründen lehnt das Paygate alle Zahlungsanfragen mit Formatfehlern ab. Bitte übergeben Sie deshalb bei jedem Parameter den korrekten Datentyp. Die folgende Tabelle beschreibt die verschlüsselten Übergabeparameter:
Verschlüsselte Parameter zum Stornieren einer Amazon-Pay-Zahlung
Die folgende Tabelle beschreibt die Parameter, die das Paygate als Antwort zurückgibt: es können jederzeit neue Parameter hinzugefügt bzw. die Reihenfolge geändert werden die Parameter (z.B. MerchantId, RefNr) sollten nicht auf Groß-/Kleinschreibung geprüft werden
Antwort-Parameter nach Stornierung einer Amazon-Pay-Zahlung