延期されたトランザクションを管理する

決済でオーソリまたは売上請求を延期することを選択できます。たとえば、入荷待ちの商品で出荷が可能になったタイミングでオーソリする、または出荷後に売上請求をするなどです。


延期されたオーソリ

前提条件:この操作を実行するにはChargeable状態のCharge PermissionのChargePermissionIdが必要です。Chargeable状態のCharge Permissionは、paymentIntentにConfirmを設定したCheckout Sessionに対してComplete Checkout Sessionを実行した際、または、totalOrderAmountで設定した金額がまだ全額売上請求されていない場合に発生します。また、Chargeable状態のCharge Permissionは180日後に期限切れになることに注意してください。

Create Chargeを呼び出してオーソリを確保します。CaptureNowを使用して、同じトランザクションで支払いを売上請求するかどうかを指定できます。 OneTimeのCharge Permissionの場合、売上請求された合計金額がamountLimit超えない、かつ作成できる有効なChargeの数は25個となります。amountBalanceがゼロに達すると、Charge Permissionは自動的にClosed 状態に移行します。

Create Chargeが201 レスポンスを返却した場合、オーソリは正常に取得されています。canHandlePendingAuthorizationがtrueの場合は、非同期オーソリのリクエストが正常に受け付けられています。 もしCreate Chargeがそれ以外のHTTPステータスコードを返却した場合は、以下のようにレスポンスの理由コード(reasonCode)を確認してCreate Chargeを再試行すべきか購入者に別の支払い方法を利用してもらうべきかを判断します。

  • もしreasonCodeがSoftDeclinedまたはProcessingFailureの場合、以下のことを行います:
    1. Get Charge Permissionを呼び出して、ChargePermissionがChargeableステータスにあることを確認します
    2. Create Chargeを呼び出して、購​​入者に請求します
  • 上記以外のreasonCodeだった場合、購入者に連絡し、別の支払い方法で再度決済を行ってもらうようご案内します

リクエスト

リクエストボディ

{
    "chargePermissionId": "P21-1111111-1111111",
    "chargeAmount": {
        "amount": "14.00",
        "currencyCode": "USD"
    },
    "captureNow": true, // default is false
    "softDescriptor": "Descriptor",
    "canHandlePendingAuthorization": false //default is false
}

リクエストパラメータ

名前
ロケーション
説明
x-amz-pay-idempotency-key
(必須)

Type: string
Header
安全なリトライリクエストするための冪等キー 
chargePermissionId
(必須)

Type: string
Body
Charge Permission識別子
chargeAmount
(必須)

Type: price
Body
請求金額
captureNow

Type: boolean
Body
オーソリが成功した直後にChargeを売上請求された必要があるかどうかを示すブール値

デフォルト値:false
softDescriptor

Type: string
Body
CaptureNowがtrueに設定されている場合、購入者のお支払い方法ステートメントに表示される説明。 CaptureNowがfalseに設定されている場合は、この値を設定しないでください。

日本では利用できません。固定値が表示されます。

デフォルト:「AMZ * <SELLER_NAME> pay.amazon.co.jp」
最大長:16文字/バイト
canHandlePendingAuthorization

Type: boolean
Body
事業者が非同期レスポンスを処理できるかどうかを示すブール値

falseに設定すると、US、EU、UKの地域では最大15秒以内、JPでは最大30秒以内に応答します。 trueに設定すると、Amazon Payはオーソリを非同期で処理し、24時間以内にレスポンスを受け取ります。詳細については、 非同期処理を参照してください。
merchantMetadata

Type: merchantMetadata
Body
販売者が提供する注文の詳細。このパラメーターは、RecurringのCharge Permissionオブジェクトを使用して作成された料金に対してのみ設定できます。
providerMetadata

Type: providerMetadata
Body
決済サービスプロバイダー(PSP)- 提供された注文の詳細

PSPのみがこれらのフィールドを使用する必要があります
platformId

Type: string
Body
ソリューションプロバイダー(SP)の事業者識別子

SPのみがこれらのフィールドを使用する必要があります

レスポンス

{
     "chargeId": "P21-1111111-1111111-C111111",
     "chargePermissionId": "P21-1111111-1111111",
     "chargeAmount": {
         "amount": "14.00",
         "currencyCode": "USD"
     },
     "captureAmount": {
         "amount": "14.00",
         "currencyCode": "USD"
     },
     "refundedAmount": {
         "amount": "0.00",
         "currencyCode": "USD"
     },
     "convertedAmount": "14.00",
     "conversionRate": "1.00",
     "softDescriptor": "Descriptor",
     "merchantMetadata": null,
     "providerMetadata": {
         "providerReferenceId": null
     },
     "statusDetails":{
         "state": "Captured",
         "reasonCode": null,
         "reasonDescription": null,
         "lastUpdatedTimestamp": "20190714T155300Z"
     },
     "creationTimestamp": "20190714T155300Z",
     "expirationTimestamp": "20190715T155300Z",
     "releaseEnvironment": "Sandbox"
}

延期された売上請求

前提条件: Authorized状態のChargeオブジェクトのChargeIdが必要です。Checkout SessionにpaymentIntent にAuthorizeにセットしてComplete Checkout Sessionを実行、またはCreate ChargecaptureNow false設定でAuthorized状態でChargeが作成されている必要があります。Authorized状態でのChargeは30日後に期限が切れることに注意してください。

Capture Chargeを使用すると、Authorized状態のChargeへ売上請求を実施できます。支払いがAuthorizedされた時と支払売上請求要求がされたときの時間の間隔および金額に応じて、異なった処理をします。

売上請求の状態
説明
7日以内
キャプチャ要求は同期的に処理されます。ChargeはCaptured状態になります。詳細については、以下のCharge状態の説明を参照してください。
7日後
キャプチャ要求は非同期で処理されます。ChargeはCaptureInitiated状態になります。詳細については、以下のChargestateの説明を参照してください。
30日後
Authorized stateから30日経過し、Chargeが期限切れになりました。ChargeはCanceled状態にあり、もはや売上請求に、このChargeを使用することはできません。

Charge PermissionがChargeable stateの場合は、新しいChargeの作成を試みことが可能です。それ以外の場合は、購入者に連絡してお支払い方法を再度設定依頼するか、別の支払い方法を設定してください

Charge stateの説明

Charge state
説明
AuthorizationInitiated
オーソリは保留中です。詳細については、 非同期処理のセクションを参照してください。
Authorized
正常にオーソリされています。詳細については、 遅延トランザクションを参照してください。
CaptureInitiated
正常にオーソリされており、売上請求処理は保留です。詳細については、 非同期処理のセクションを参照してください。
Captured
正常にオーソリされ、売上請求もされました。
Declined
支払いは拒否されました。Chargeが オーソリに失敗した理由コードを参照してください。購入者に再度連絡して、もう一度決済するように依頼する必要があります。

リクエスト

リクエストボディ

{
    "captureAmount": {
        "amount": "14.00",
        "currencyCode": "USD"
    },
    "softDescriptor": "Descriptor"
}

リクエストパラメータ

名前
ロケーション
説明
x-amz-pay-idempotency-key
(必須)

Type: string
Header
安全なリトライリクエストするための冪等キー 
chargeId
(必須)

Type: string
Path Parameter
Charge識別子
captureAmount
(必須)

Type: price
Body
請求金額
softDescriptor

Type: string
Body
CaptureNowがtrueに設定されている場合、購入者のお支払い方法ステートメントに表示される説明。 CaptureNowがfalseに設定されている場合は、この値を設定しないでください。

日本では利用できません。固定値が表示されます。

デフォルト:「AMZ * <SELLER_NAME> pay.amazon.co.jp」
最大長:16文字/バイト

レスポンス

{
     "chargeId": "P21-1111111-1111111-C111111",
     "chargePermissionId": "P21-1111111-1111111",
     "chargeAmount":{
         "amount": "14.00",
         "currencyCode": "USD"
     },
     "captureAmount": {
         "amount": "14.00",
         "currencyCode": "USD"
     },
     "refundedAmount": {
         "amount": "0.00",
         "currencyCode": "USD"
     },
     "convertedAmount": "14.00",
     "conversionRate": "1.00",
     "softDescriptor": "Descriptor",
     "merchantMetadata": null,
     "providerMetadata": {
         "providerReferenceId": null
     },
     "statusDetails":{
         "state": "Captured",
         "reasonCode": null,
         "reasonDescription": null,
         "lastUpdatedTimestamp": "20190714T155300Z"
     },
     "creationTimestamp": "20190714T155300Z",
     "expirationTimestamp": "20190715T155300Z",
     "releaseEnvironment": "Sandbox"
}