# Amazon Hosted Pageの「キャンセルして ＊＊＊に戻る」リンクの遷移先の仕様を知りたいです。

Amazon Hosted Pageの「キャンセルして ＊＊＊に戻る」をクリックしていただくと、Amazon Payは以下のロジックでリダイレクトします。

![image](https://d2squ3eekfa1zc.cloudfront.net/image/QA-147.jpg)


* Amazon Payボタンおよび変更ボタンクリック（amazon.Pay.bindChangeActionの実行）からの支払い方法およびお届け先住所選択ページ → ボタンレンダーページとして取得したリファラーURLにリダイレクトします。ただしリファラーのドメインがcheckoutReviewReturnUrlと異なる場合はcheckoutReviewReturnUrlにリダイレクトします。
※モーダルビューの場合は、モーダルが閉じる挙動となります。

* オーソリ失敗ページ → checkoutResultReturnUrlへリダイレクトします。


ただしAmazon Payボタンを表示するjavascript内のPayloadに、"checkoutCancelUrl"を設定することで、リンク押下後の遷移先を制御することができます。
※モーダルビューの場合は設定していただいても、モーダルが閉じる挙動となります。

```
    amazon.Pay.renderButton('#AmazonPayButton', {
        merchantId: 'XXXXXXXXXXXXXXXX',
        ledgerCurrency: 'JPY', // Amazon Pay account ledger currency
        sandbox: true, // dev environment
        checkoutLanguage: 'ja_JP', // render language
        productType: 'PayAndShip', // checkout type
        placement: 'Cart', // button placement
        createCheckoutSessionConfig: {
            payloadJSON: '{"webCheckoutDetails":{"checkoutCancelUrl":"https://www.amazon.co.jp/cart", *****}', 
            //                                   ↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑
            signature: '<signature>', // signature generated in step 3
            publicKeyId: 'XXXXXXXXXXXXXXXX' ,
            algorithm : 'AMZN-PAY-RSASSA-PSS-V2'
        }
    }); 
```


## 参考
* [インテグレーションガイド](https://developer.amazon.com/ja/docs/amazon-pay-api-v2/checkout-session.html#type-webcheckoutdetails)
