---
title: 複数通貨のインテグレーション
url: ja/amazon-pay-checkout/ja-multi-currency-integration.html
---

<div markdown="span" class="alert alert-info" role="alert"><i class="fa fa-info-circle"></i> <b>Note:</b> 複数通貨機能は、EURまたはGBPの通貨でアカウントに登録した事業者のみが使用できます。サポートしている国のリストについては<a href='https://pay.amazon.eu/help/201810860#_How_does_Amazon_q5' target='_blank' rel='noopener noreferrer'>こちら</a>をクリックしてください。</div>

デフォルトでは、Amazon Payからの支払いを受け取る通貨を使用してのみ購入者できます。別の[サポートされている通貨](#サポートされている通貨)を使用して購入者に請求するには、複数通貨機能を有効にする必要があります。




前提条件：

- EUまたはUKでAmazon Payアカウントを登録している必要があります。
- 購入者が請求するために使用する通貨を決定できる必要があります（presentationCurrency）。
- Amazon Payは通貨換算機能を提供していません。購入者に請求される通貨で、注文合計を計算できる必要があります。

*** 

* TOC
{:toc}
{::options toc_levels="3" /}

### インテグレーション手順

複数通貨の決済を有効にするには、次の3つの手順があります。

1. 決済の開始時に`presentmentCurrency`を設定する
2. 支払い`currencyCode`コードを設定する
3. Create Charge、Capture、およびRefundに`currencyCode`を設定する

#### 1. 決済の開始時にpresentmentCurrencyを設定する

`createCheckoutSessionConfig`パラメータに`presentmentCurrency`を設定します。これにより、購入者はVisaまたはMastercardのいずれからも発行されていないお支払い方法を選択できなくなります。詳細については、[購入者の決済体験：シナリオ＃1](#購入者の決済体験)を参照してください。

#### ペイロードの例

```
{
    "webCheckoutDetails": {
        "checkoutReviewReturnUrl":"https://a.com/merchant-review-page"
    },
    "storeId":"amzn1.application-oa2-client.8b5e45312b5248b69eeaStoreId",
    "paymentDetails": {
        "presentmentCurrency":"CHF"
    }
}   
```

#### 2. 支払いcurrencyCodeを設定する

支払い詳細に<a href="../amazon-pay-api-v2/checkout-session.md#update-checkout-session" target="_blank" rel="noopener noreferrer">Update Checkout Session</a>するときに`chargeAmount.currencyCode`パラメータを設定してください。このパラメータは、顧客への請求に使用される通貨を決定します。通貨の値が以前に設定された`presentmentCurrency`と異なる場合、 Create Checkout Sessionの呼び出し中に渡した`presentmentCurrency`パラメータも自動的に更新され、購入者がサポートされていないお支払い方法で決済を完了できないようにします。詳細については、[購入者の決済体験：シナリオ＃2](#購入者の決済体験)を参照してください。 `presentmentCurrency`パラメータを直接更新しようとしないでください。更新すると、エラーが発生します。

#### リクエスト

```
curl "https://pay-api.amazon.eu/:environment/:version/checkoutSessions/:checkoutSessionId" \
-X PATCH
-H "authorization:Px2e5oHhQZ88vVhc0DO%2FsShHj8MDDg%3DEXAMPLESIGNATURE"
-H "x-amz-pay-date:20201012T235046Z"
-d @request_body
```

#### リクエストボディ

```
{
    "webCheckoutDetails": {
        "checkoutResultReturnUrl":"https://a.com/merchant-confirm-page"
    },
    "paymentDetails": {
        "paymentIntent":"Authorize",
        "canHandlePendingAuthorization":false,
        "chargeAmount": {
            "amount":"1",
            "currencyCode":"CHF"
        }
     },
    "merchantMetadata": {
        "merchantReferenceId":"Merchant reference ID",
        "merchantStoreName":"Merchant store name",
        "noteToBuyer":"Note to buyer",
        "customInformation":"Custom information"
    },
    "platformId":"SPId"
}
```

#### 3. Create Charge、Capture、およびRefundにcurrencyCodeを設定する

<a href="../amazon-pay-api-v2/charge.md#create-charge" target="_blank" rel="noopener noreferrer">Create Charge</a>、<a href="../amazon-pay-api-v2/charge.md#capture-charge" target="_blank" rel="noopener noreferrer">Capture</a>および<a href="../amazon-pay-api-v2/refund.md#create-refund" target="_blank" rel="noopener noreferrer">Refunds</a>を実行するときに、`chargeAmount.currencyCode`と一致するように`currencyCode`パラメータに設定してください。別の通貨で売上請求または返金することはできません。

### よくあるインテグレーションエラー

次のエラーは、<a href="https://restfulapi.net/http-status-codes/" target="_blank" rel="noopener noreferrer">HTTP 400（Bad Request）ステータスコード</a>を返し、インテグレーションエラーがあることを示します。

#### presentmentCurrencyをサポートされていない値に設定する 

[サポートされている通貨](#サポートされている通貨)の表を確認してください。<a href="../amazon-pay-api-v2/checkout-session.md#create-checkout-session" target="_blank" rel="noopener noreferrer">Create Checkout Session</a>をサポートされていない`presentmentCurrency`で実行したり、サポートされていない`chargeAmount.currencyCode`でUpdate Checkout Sessionを実行した場合、次のエラーとなります。

```
{
    "reasonCode": "InvalidParameterValue",
    "message": "The value 'RMB' provided for 'presentmentCurrency' is invalid. It is not supported."
}
```

#### Update Checkout SessionでpresentmentCurrencyを更新しようとする

<a href="../amazon-pay-api-v2/checkout-session.md" target="_blank" rel="noopener noreferrer">Checkout Session</a>オブジェクトが作成されたら、 `chargeAmount.currencyCode`パラメータを使用して`presentmentCurrency`を更新する必要があります。`presentmentCurrency`パラメータを直接更新しようとすると、次のエラーが発生します。

```
{
    "reasonCode": "InvalidParameterValue",
    "message": "presentmentCurrency cannot be updated in updateCheckoutSession request, please update ChargeAmount instead."
}
```

#### 間違った通貨での売上請求または返金の実行

チェックアウトの時と同じ`chargeAmount.currencyCode`値を使用して、<a href="../amazon-pay-api-v2/charge.md#create-charge" target="_blank" rel="noopener noreferrer">Create Charge</a>や<a href="../amazon-pay-api-v2/refund.md#create-refund" target="_blank" rel="noopener noreferrer">Refunds</a>を実行しなければなりません。別の通貨でCreate Charge、CaptureまたはRefundを実行しようとすると、次のエラーが発生します。

```
{
    "reasonCode": "CurrencyMismatch",
    "message": "Currency code provided in [Charge/Refund] does not match the currency set during checkout"
}
```

### 購入者の決済体験

デフォルト以外の決済通貨が`presentmentCurrency`として指定されている場合、購入者はVisaまたはMastercardのいずれかによって発行されたお支払い方法を使用してのみ正常に決済できます。 Amazon Payは、サポートされていない支払い手段が​​関係するシナリオを次の方法で処理します。

* **シナリオ＃1：** 場所に基づいて購入者の通貨設定を自動検出するか、購入者が決済を開始する前に優先通貨を選択できるようにします。このシナリオでは、購入者がお支払い方法を選択する前に、決済の開始時にデフォルト以外の通貨が設定されます。購入者は、Amazon支払い方法からVisaまたはMastercardのいずれかを選択することしかできません。
* **シナリオ＃2：** 注文を完了する直前に、購入者が希望する通貨を選択できるようにします。このシナリオでは、デフォルト以外の通貨は、購入者がサポートされていないお支払い方法をすでに選択した後にのみ設定されます。 Amazon Payは、決済を完了する前に、Amazon支払い方法からVisaまたはMasterのいずれかを選択するように購入者に促します。
* **シナリオ＃3：** デフォルト以外の通貨が設定されていて、購入者がAmazon支払い方法にVisaまたはMastercardを持っていない場合、Amazon PayがホストするページにVisaまたはMastercardを追加するオプションが提供されます。

### サポートされている通貨

以下は、サポートされている通貨とそれに対応する通貨コードの表です。 

<table width="100%" border="1">
    <tbody>
        <tr id='YHS9CARVL4L'>
            <td id='s:YHS9CARVL4L;YHS9CAIfgIj' style='vertical-align: top; font-weight: bold; width: 50%;' class='bold'>通貨
                <br /></td>
            <td id='s:YHS9CARVL4L;YHS9CABsjZN' style='vertical-align: top; font-weight: bold; width: 50%;' class='bold'>通貨コード
                <br /></td>
        </tr>
        <tr id='YHS9CAVVvLt'>
            <td id='s:YHS9CAVVvLt;YHS9CAIfgIj' style=''>オーストラリアドル
                <br /></td>
            <td id='s:YHS9CAVVvLt;YHS9CABsjZN' style=''>AUD
                <br /></td>
        </tr>
        <tr id='YHS9CAdbRoA'>
            <td id='s:YHS9CAdbRoA;YHS9CAIfgIj' style=''>英国ポンド
                <br /></td>
            <td id='s:YHS9CAdbRoA;YHS9CABsjZN' style=''>GBP
                <br /></td>
        </tr>
        <tr id='YHS9CAMgf5g'>
            <td id='s:YHS9CAMgf5g;YHS9CAIfgIj' style=''>デンマーククローネ
                <br /></td>
            <td id='s:YHS9CAMgf5g;YHS9CABsjZN' style=''>DKK
                <br /></td>
        </tr>
        <tr id='YHS9CANDzIj'>
            <td id='s:YHS9CANDzIj;YHS9CAIfgIj' style=''>ユーロ
                <br /></td>
            <td id='s:YHS9CANDzIj;YHS9CABsjZN' style=''>EUR
                <br /></td>
        </tr>
        <tr id='YHS9CAr123K'>
            <td id='s:YHS9CAr123K;YHS9CAIfgIj' style=''>香港ドル
                <br /></td>
            <td id='s:YHS9CAr123K;YHS9CABsjZN' style=''>HKD
                <br /></td>
        </tr>
        <tr id='YHS9CAzElFp'>
            <td id='s:YHS9CAzElFp;YHS9CAIfgIj' style=''>日本円
                <br /></td>
            <td id='s:YHS9CAzElFp;YHS9CABsjZN' style=''>JPY
                <br /></td>
        </tr>
        <tr id='YHS9CALQB5O'>
            <td id='s:YHS9CALQB5O;YHS9CAIfgIj' style=''>ニュージーランドドル
                <br /></td>
            <td id='s:YHS9CALQB5O;YHS9CABsjZN' style=''>NZD
                <br /></td>
        </tr>
        <tr id='YHS9CAVRLdD'>
            <td id='s:YHS9CAVRLdD;YHS9CAIfgIj' style=''>ノルウェークローネ
                <br /></td>
            <td id='s:YHS9CAVRLdD;YHS9CABsjZN' style=''>NOK
                <br /></td>
        </tr>
        <tr id='YHS9CAGAlvL'>
            <td id='s:YHS9CAGAlvL;YHS9CAIfgIj' style=''>南アフリカランド
                <br /></td>
            <td id='s:YHS9CAGAlvL;YHS9CABsjZN' style=''>ZAR
                <br /></td>
        </tr>
        <tr id='YHS9CAUgzZF'>
            <td id='s:YHS9CAUgzZF;YHS9CAIfgIj' style=''>スウェーデンクローナ
                <br /></td>
            <td id='s:YHS9CAUgzZF;YHS9CABsjZN' style=''>SEK
                <br /></td>
        </tr>
        <tr id='YHS9CAyGtXd'>
            <td id='s:YHS9CAyGtXd;YHS9CAIfgIj' style=''>スイスフラン
                <br /></td>
            <td id='s:YHS9CAyGtXd;YHS9CABsjZN' style=''>CHF
                <br /></td>
        </tr>
        <tr id='YHS9CAv4w4j'>
            <td id='s:YHS9CAv4w4j;YHS9CAIfgIj' style=''>米ドル
                <br /></td>
            <td id='s:YHS9CAv4w4j;YHS9CABsjZN' style=''>USD
                <br /></td>
        </tr>
    </tbody>
</table>

