Bezahlen über Amazon 16.11.2011 Dr. Hermann Schloss Confidential © 1996-2011, Amazon.com, Inc. or its affiliates. All rights reserved.
Integrationsmöglichkeiten: Standard-Checkout Inline-Checkout Gegenüberstellung der Integrationsmöglichkeiten Bestell-Management Testen und Integration Integrations-Support Agenda 16.11.2011
Integrationsmöglichkeiten Übersicht Die Wahl der Integrationsmethode ist von Ihren Anforderungen abhängig! Standard Checkout Die Bestellung wird mit wenigen Klicks im Pop-Up-Fenster platziert Inline Checkout „Bezahlen über Amazon“ ist in Ihren Bestellvorgang integriert Nutzen Sie unseren Empfehlungsassistenten in Seller Central um die für Sie richtige Integrationsmethode auszuwählen. 16.11.2011
Integrationsmöglichkeiten Standard-Checkout (Integration der CBA-Schaltfläche) Einbindung der CBA-Schaltfläche durch dynamisch generierten HTML-JavaScript-Code. Die Schaltfläche enthält bereits den Warenkorb und sendet diesen an Amazon. 16.11.2011
Integrationsmöglichkeiten Standard-Checkout (Integration der CBA-Schaltfläche) 1. Exportieren des Warenkorbes nach XML Beispiel für einen Warenkorb in XML: <Order xmlns="http://payments.amazon.com/checkout/2008-06-15/"> <Cart><Items> <Item> <SKU>katzeimsack</SKU> <MerchantId>YOUR_MERCHANT_ID</MerchantId> <Title>Die Katze im Sack</Title> <Description>Ein Sack mit unbekanntem Inhalt</Description> <Price> <Amount>11.50</Amount><CurrencyCode>EUR</CurrencyCode> </Price> <Quantity>1</Quantity> </Item> </Items> </Cart> </Order> 16.11.2011
Integrationsmöglichkeiten Standard-Checkout (Integration der CBA-Schaltfläche) ) 2. Einfügen des JavaScript-Codes für CBA Signieren und kodieren Sie den XML-Warenkorb Fügen Sie den XML-Warenkorb und die Signatur in von Amazon vorgegebenen HTML/JavaScript-Code ein <script src="https://static-eu.payments-amazon.com/cba/js/de/sandbox/PaymentWidgets.js"> <div id="cbaButton1"/> <script> new CBA.Widgets.StandardCheckoutWidget({ merchantId:'AEIOU1234AEIOU', orderInput: {format: "XML",value: "type:merchant-signed-order/aws-access-key/1; signature:0nppbXTktfoV80Kh41GK7ruUhq8= Order:PD94X834mds23…=; aws-access-key-id:19G7E7X2QE2V45LET"} }).render("cbaButton1"); </script> 16.11.2011
Integrationsmöglichkeiten Standard-Checkout (Anmeldung) 16.11.2011
Integrationsmöglichkeiten Standard-Checkout (Versandkosten und –optionen) 16.11.2011
Integrationsmöglichkeiten Standard-Checkout (Versandkosten und –optionen) Global in Seller Central Konfiguration anhand der von Amazon vorgegebenen Versandregionen und Versandkostenmodelle (wie bei M@) Im XML-Code für den Warenkorb Konfiguration auf der Ebene von Artikeln und einzelnen Ländern Geeignet wenn einige Artikel andere Versandkosten haben (z.B. Sperrgut) oder wenn die Versandregionen in Seller Central zu grobgranular sind. Über Callbacks Nur empfehlenswert, wenn die exakte Adresse des Kunden zur Berechnung nötig ist (und das Land nicht ausreicht) Beispiel: Abholung oder versandkostenfreie Lieferung soll nur Kunden aus Berlin angeboten werden 16.11.2011
Integrationsmöglichkeiten Standard-Checkout (Definition von Werbeaktionen) 16.11.2011
Integrationsmöglichkeiten Standard-Checkout (Bestellbestätigung von Amazon) 16.11.2011
Integrationsmöglichkeiten Standard-Checkout („Vielen Dank“-Seite) 16.11.2011
Integrationsmöglichkeiten Inline-Checkout (Assistent für die Inline-Integration) Unser Assistent für die Inline-Integration führt Sie interaktiv durch die im Folgenden beschriebenen Schritte Alle Code-Fragmente können durch den Assistenten generiert werden Für die gängigsten Programmiersprachen stellt der Assistent Code-Beispiele zur Verfügung, um eine Bestellung an Amazon zu übertragen 16.11.2011
Integrationsmöglichkeiten Inline-Checkout Einbindung der CBA-Schaltfläche (mit von Amazon zur Verfügung gestelltem HTML/JavaScript) 16.11.2011
Integrationsmöglichkeiten Inline-Checkout (Integration der CBA-Schaltfläche) Binden Sie den vom Assistenten generierten JavaScript-Code in Ihren HTML-Code ein: <script type='text/javascript‘ src='https://static-eu.payments-amazon.com/cba/js/de/sandbox/PaymentWidgets.js'> <div id="AmazonInlineCheckoutWidget"></div> <script> new CBA.Widgets.InlineCheckoutWidget({ merchantId: "ABCDE1234ABCDE", onAuthorize: function(widget) { window.location = 'https://www.mydomain.com/?session=' + widget.getPurchaseContractId(); } }).render("AmazonInlineCheckoutWidget"); </script> Die „onAuthorize“-Funktion wird aufgerufen, sobald der Kunde eingeloggt und die CBA-Session erstellt ist. 16.11.2011
Integrationsmöglichkeiten Inline-Checkout (Anmeldung) 16.11.2011
Integrationsmöglichkeiten Inline-Checkout (Einbindung des Adressbuches) Einbindung des „AmazonAddressWidgets“ (von Amazon bereit gestellter JavaScript-Code) Über die API„GetPurchaseContract“ kann u.a. die Versandadresse abgefragt werden. Mithilfe dieser können Sie die verfügbaren Versandarten anzeigen (mittels Ihres eigenen HTML-Codes) 16.11.2011
Integrationsmöglichkeiten Inline-Checkout (Einbindung des Adressbuches) Binden Sie den vom Assistenten generierten JavaScript-Code in Ihren HTML-Code ein: <div id="AmazonAddressWidget"></div> <script> new CBA.Widgets.AddressWidget({ merchantId: "ABCDE1234ABCDE", onAddressSelect: function(widget) { document.getElementById("continue_button").disabled=false; } }).render("AmazonAddressWidget"); </script> Die optionale Methode “onAddressSelect” wird automatisch aufgerufen, wenn eine Adresse ausgewählt wurde. 16.11.2011
Integrationsmöglichkeiten Inline-Checkout (GetPurchaseContract-API) Rufen Sie die GetPurchaseContract-API auf: $purchaseContractId="PURCHASE_CONTRACT_ID_DER_BESTELLUNG"; // Bezahlen über Amazon Bibliothek initialisieren $lib = new CheckoutByAmazon_Service_CBAPurchaseContract(); // Die ausgewählten Adressen werden von getAddress zurückgeliefert // Hinweis: Wenn der Kunde in Ihrem Bestellprozess nur eine Adresse auswählen kann, // dann hat die Liste nur einen Eintrag $addressList = $lib->getAddress($purchaseContractId); // Anzeigen der Address-Details foreach( $addressList as $address) { echo("Postleitzahl: ".$address->getPostalCode()); echo("Stadt/Ort: ".$address->getCity()); echo("Ländercode: ". $address->getCountryCode()); } 16.11.2011
Integrationsmöglichkeiten Inline-Checkout (Einbindung der Zahlungsmethoden) Einbindung des „AmazonWalletWidgets“ (von Amazon bereit gestellter Javascript-Code) 16.11.2011
Integrationsmöglichkeiten Inline-Checkout (Einbindung der Zahlungsmethoden) Binden Sie den vom Assistenten generierten JavaScript-Code in Ihren HTML-Code ein: <div id="AmazonWalletWidget"></div> <script> new CBA.Widgets.WalletWidget({ merchantId: "ABCDE1234ABCDE", onPaymentSelect: function(widget) { document.getElementById("continue_button").disabled=false; } }).render("AmazonWalletWidget"); </script> Die optionale Methode “onPaymentSelect” wird automatisch aufgerufen, wenn eine Zahlungsart ausgewählt wurde. 16.11.2011
Integrationsmöglichkeiten Inline-Checkout (Bestellung abschicken) Nachdem die Bestellung bestätigt wurde, müssen folgende APIs aufgerufen werden: „SetPurchaseItems“ (Senden der Artikel und Preise) „SetContractCharges“ (Senden von Versandkosten) 3. „CompletePurchaseContract“ (Abschluss der Bestell-Session) 16.11.2011
Integrationsmöglichkeiten Inline-Checkout (Artikeln übermitteln) Übermitteln von Artikeln und Preisen (SetPurchaseItems) $purchaseContractId="PURCHASE_CONTRACT_ID_DER_BESTELLUNG"; // Bezahlen über Amazon Bibliothek initialisieren $lib = new CheckoutByAmazon_Service_CBAPurchaseContract(); // Artikelliste anlegen $itemList = new CheckoutByAmazon_Service_Model_ItemList(); // Die folgenden Schritte müssen für alle Artikel im Einkaufswagen durchgeführt werden // Artikel anlegen (der erste Artikel ist hier im Beispiel eine Katze im Sack) $physicalItemObject = new CheckoutByAmazon_Service_Model_PurchaseItem(); $physicalItemObject->createPhysicalItem('sku_katze','Die Katze im Sack',3.24,'Standard'); // Artikel zur Artikelliste hinzufügen $itemList->addItem($physicalItemObject); // Artikel an Amazon ermitteln. $setItemsStatus = $lib->setItems($purchaseContractId,$itemList); 16.11.2011
Integrationsmöglichkeiten Inline-Checkout (Versandkosten übermitteln) Übermitteln von Versandkosten (SetContractCharges) 16.11.2011
Integrationsmöglichkeiten Inline-Checkout (Bestellung abschließen) Bestellung abschließen (CompletePurchaseContract) //Überprüfen ob setItems und setContractCharges erfolgreich waren if((($setContractChargesStatus == 1) || is_null($setContractChargesStatus)) && ($setItemsStatus == 1)) { // Folgender Aufruf schließt die Bestellung ab // $purchaseContractID enthält die generierten Amazon Bestellnummern $orderIdList = $lib->completeOrder($purchaseContractId); } else // Fehlerbehandlung } 16.11.2011
Integrationsmöglichkeiten Inline-Checkout („Vielen Dank“-Seite) 16.11.2011
Gegenüberstellung der Integrationsmöglichkeiten Übersicht Standard Inline Fachkenntnisse HTML, JavaScript, Dynamic Web Programing (PHP, Java-Servlets, etc.) , XML HTML, JavaScript, Dynamic Web Programing (PHP, Java-Servlets, etc.) , Web-Services Erforderliche Anpassungen Nur Warenkorb-Seite Warenkorb-Seite sowie der gesamte Bestellprozess Versandkosten Berechnung basiert auf der SellerCentral-Konfiguration ODER: Im Warenkorb (XML) ODER: Callbacks Berechnung erfolgt auf der Seite des Händlers. Übermittlung am Ende des Bestellprozesses. Geschenk-Gutscheine Anpassungen Nicht möglich Möglich Komplexität = Flexibilität - + 16.11.2011
Optionen für das Bestell-Management Übersicht Kunde nutzt CBA in Ihrem Webshop Händler wird be- nachrichtigt, wenn die Bestellung verschickt werden kann Händler erfüllt Bestellung Händler bestätigt Versand Amazon zieht Geld vom Kunden ein Automatische Bestellbestätigung (per Email) Benachrichtigung des Händlers Versandbestätigung Amazon überweist Erlöse (minus Kommission) Optionen für das Bestell-Management Manuell (Seller Central) Automatisiert (MWS APIs + optional IOPN) Eine bereits existierende MWS-Integration für „Verkaufen auf Amazon” kann wiederverwendet werden 16.11.2011
Testen und Integration Sandbox Produktionsumgebung Testumgebung „CBA-Sandbox“ Testen der Übergabe des Warenkorbes und der Preise Führen Sie kleinere Testbestellungen durch, um sicherzustellen, dass Bestellung korrekt übermittelt werden In der „Sandbox“ werden Bestellungen nicht von Amazon bestätigt und somit kein Geld eingezogen. Um den Bestellprozess zu testen, müssen Sie die Produktionsumgebung verwenden. Hier können Sie auch Bestellungen als „versendet“ melden und den Geldfluss (sowie Rückerstattungen) testen Freischaltung von CBA auf Ihrer Webseite Machen Sie CBA erst dann für die Öffentlichkeit verfügbar, wenn alles funktioniert 16.11.2011
Integrations-Support Wo finden Sie Hilfe? https://sellercentral.amazon.de Dokumentation und Beispiel-Code unter „Hilfe“ abrufbar https://payments.amazon.de/business/resources#cba Weiterführende Dokumentation https://payments.amazon.de/business „Kontaktieren Sie uns“-Formular https://payments.amazon.de/personal/directory Liste der Integrationspartner Wann immer Sie Fragen haben, zögern Sie bitte nicht unser Support zu kontaktieren! 16.11.2011