Folgende Werte werden für die Einrichtung von AmazonPay über Amazon benötigt:
- MerchantId
- PublicKey siehe 'API Key für collana pay anlegen (PublicKey/PrivateKey)'
- PrivateKeyId siehe 'API Key für collana pay anlegen (PublicKey/PrivateKey)'
- StoreId
Amazon Notifications konfigurieren
- Integrator Url (STG-V2): https://sandbox.collanapay.com/v2/notifications/amazon
- Integrator Url (PRD-V2): https://live.collanapay.com/v2/notifications/amazon
In der Seller Central unter Configuration -> Instant payment notifications (IPN) können die URLs für die Notifications festgelegt werden (https://developer.amazon.com/de/docs/amazon-pay-checkout/set-up-instant-payment-notifications.html ). An die URLs, die an der Merchant Url bzw. Integrator Url (bevorzugt) hinterlegt sind, werden dann die Notifications gesendet.
Javascript Origin hinzufügen (nur für produktive Umgebungen und nur bei Shopanbindung)
Für die checkoutReviewReturnUrl muss im Produktiveinsatz unsere verwendete collana pay-URL hinzugefügt werden. Dafür muss die collana pay URL als JavaScript Origins URL festgelegt werden (siehe Dokumentation).
Die JavaScript Origins unter
Konfiguration -> Integration Central -> Client-IDs/Store-IDs verwalten -> Client-IDs/Store-IDs anzeigen -> Bearbeiten -> JavaScript Ursprünge
(https://developer.amazon.com/de/docs/amazon-pay-checkout/get-set-up-for-integration.html#2-add-domains-to-seller-central ) öffnen.
Hier muss die URL eingetragen werden, unter der das JavaScript ausgeführt wird. Im Regelfall ist das die URL des Shops.
API Key für collana pay anlegen (PublicKey/PrivateKey)
Im Integration Central können bei Amazon neue API Keys erzeugt werden. Diese enthalten die Informationen, die wir als PublicKey und .pem File für die Einrichtung unseres ProviderAccounts benötigen. Bei der Erzeugung eines API Keys (Name ist frei wählbar, z.B. "collana pay") wird eine .pem Datei erzeugt, die gespeichert werden soll, da im Nachhinein nicht mehr auf diese .pem Datei zugegriffen werden kann. An der gleichen Stelle im Integral Central können zudem die Informationen zur StoreId und MerchantId ausgelesen werden.
Um den die PrivateKeyId aus dem .pem File zu generieren, muss der Inhalt der Datei Base64 codiert werden (alles markieren inkl. -----BEGIN PRIVATE KEY----- und -----END PRIVATE KEY-----). Dazu kann man z.B. Notepad++ benutzen über Erweiterungen -> MIME Tools -> Base64 Encode with padding.
Kommunikationsablauf (End-of-Checkout-Variante)
Transaction Api |
Amazon |
Create |
- |
Prepare |
- |
Reserve |
Create CheckoutSession Step 2: Add the Amazon Pay button Complete CheckoutSession Step 5: Verify & complete checkout CreateCharge [AutoCapture durch PaymentIntent: AuthorizeWithCapture] |
Capture |
CaptureCharge |
Refund |
CreateRefund |
Void |
Close ChargePermission |
Kommunikationsablauf (Express-Variante)
Transaction Api |
Amazon |
Create |
- |
Prepare |
Create CheckoutSession (Step 2: Add the Amazon Pay button) |
Reserve |
Update CheckoutSession + Complete CheckoutSession [Step 4: Set payment info + Step 5: Verify & complete checkout] |
Capture |
CaptureCharge bzw. CreateCharge [AutoCapture durch PaymentIntent: AuthorizeWithCapture] |
Refund |
CreateRefund |
Void |
Close ChargePermission |
Besonderheiten
Fixe Billing Customer Daten
AmazonPay verwendet den User Liam Barker als Billing Customer in der Sandbox. Siehe hier.