Amazon Pay FAQ

AdditionalPaymentButton(APB)機能について知りたいです。

AdditionalPaymentButton(APB)機能をご利用いただくと、決済手段の一つとしてAmazon Payをご利用頂けます。APB機能では通常のAmazon Pay機能とは異なり、注文確認画面を挟まずに Amazon Pay で管理する画面からスムーズに支払い完了のフローを構築することができます。

この機能は Onetime(都度支払い)およびRecurring(継続支払い)でご利用頂くことができ、配送の伴う商材・デジタル商材ともにご利用頂くことが可能です。

注意:配送の伴う商材で当機能を用いた場合は、Amazonアカウントの住所をご利用頂くことができません。事業者様のサイトに入力された住所情報を決済時にAmazon Payにご連携いただく形となります。

処理フロー

image

※HTTPステータスコード 2xx 正常系 ベースの処理フローでの記載です。
Amazon Pay APIのレスポンス受信後、HTTPステータスコードが正常系であることを確認後に、処理フローへ進むよう実装してください。

ご利用方法

ボタン描画時のPayloadに下記サンプルのように"checkoutMode": "ProcessOrder"、金額、住所情報(配送を伴う商材の場合)、継続支払い情報(Recurringの場合)を設定頂くことで、ご利用頂けます。設定項目についてはの詳細はインテグレーションガイドを参照してください。

{
    "storeId": "xxx",
    "webCheckoutDetails": {
        "checkoutResultReturnUrl": "https://merchant1/xxxxxxxx",
        "checkoutMode": "ProcessOrder"
    },
    "paymentDetails": {
        "paymentIntent": "Confirm",
        "chargeAmount": {
            "amount": "1",
            "currencyCode": "JPY"
        }
    },
    //recurring case
    "chargePermissionType": "Recurring", 
    "recurringMetadata": {
        "frequency": { 
            "unit": "Month", 
            "value": "1" 
        },
        "amount": { 
            "amount": "10",
            "currencyCode": "JPY"
        }
    },
    "addressDetails": {
        "stateOrRegion":"%E6%9D%B1%E4%BA%AC%E9%83%BD",
        "addressLine1": "%E7%9B%AE%E9%BB%92%E5%8C%BA%E4%B8%8B%E7%9B%AE%E9%BB%92",
        "addressLine2": "%EF%BC%91%EF%BC%8D%EF%BC%94%EF%BC%8D%EF%BC%91",
        "addressLine3": "%E3%82%A2%E3%83%89%E3%83%AC%E3%82%B9%E3%83%A9%E3%82%A4%E3%83%B3%EF%BC%93",
        "name": "%E5%90%8D%E5%89%8D%E3%80%80%E3%83%86%E3%82%B9%E3%83%88%EF%BC%91%EF%BC%92%EF%BC%93",
        "countryCode": "JP",
        "postalCode": "1560064",
        "phoneNumber": "0333333333"
    }
}

住所情報(addressDetails)に関する補足

・住所情報の設定必須項目については、インテグレーションガイドをご参照ください。
・各項目の最大桁については、下部インテグレーションガイドをご参照ください。
・マルチバイト文字列を設定する場合は、UTF-8のURLエンコードを行い、設定する必要があります。(全角数字、全角アルファベットもご利用頂けます。)
・マルチバイト文字列ご利用時の留意点は以下のとおりです。
1.郵便番号に6文字以上のマルチバイト文字を設定した場合、自動的にシングルバイトに変換されます。
2.住所1、2、3に20文字以上のマルチバイト文字を設定した場合、自動的にシングルバイトに変換されます。
3.氏名に16文字以上のマルチバイト文字を設定した場合、自動的にシングルバイトに変換されます。
4.電話番号にマルチバイト文字を設定した場合、自動的にシングルバイトに変換されます。

PlatformIdをご利用の場合

APBのフローにはUpdateCheckoutSessionを実行しないため、
2 step checkoutと同じくUpdateCheckoutSession時にPlatformIdを設定することができません。
ただし、Payloadの一部としてご設定いただけます。(設定後、GetCheckoutSessionに設定結果の確認ができます。)

Payloadの例:

{
    "storeId":"xxx",
    "webCheckoutDetails":{
        "checkoutResultReturnUrl":"https://merchant1/xxxxxxxx",
        "checkoutMode": "ProcessOrder"
    },
    "paymentDetails":{
        "paymentIntent":"Authorize",
        "chargeAmount":{
            "amount":"1000",
            "currencyCode":"JPY"
            }
        },
    "platformId":"XXXXX"
};

参考