---
title: CV2へのアップグレード
url: ja/amazon-pay-checkout/ja-upgrading-to-v2-checkout.html
---

Amazon Pay Checkout v2(CV2)は、オーソリエラーのハンドリングとお支払い方法の更新を改善し合理化された決済エクスペリエンスを提供することにより、決済コンバージョン率を向上させます。 

* TOC
{:toc}

***

#### Checkout v1(CV1)とCheckout v2(CV2)で何が変わるか

* 購入者のエクスペリエンス - 支払い設定の選択とdeclineの処理は、Amazon Payがホストするページで完了します。 UXを変更せずに、既存のCV1インテグレーションを置き換えることは最適ではない場合があります。詳細については、 <a href="../amazon-pay-checkout/introduction.md#amazon-payの決済エクスペリエンス" target="_blank" rel="noopener noreferrer">Amazon Pay Checkout v2 購入者エクスペリエンス</a>をご覧ください。
* API - CV2では、新しいAPIとAPIオブジェクトを導入し、インテグレーションを簡素化します。最初に[CV2 APIを使用したCV1オブジェクトの管理](../amazon-pay-checkout/upgrading-to-v2-checkout.html#checkout-v2cv2-apiを使用したcheckout-v1cv1注文の管理)セクションを確認せずに、CV1の注文でCV2 APIをご利用しないでください。CV2 APIには、[APIスロットリング制限](../amazon-pay-api-v2/api-throttling-limits.html)が存在します。合わせてご参照下さい。
* インスタント支払い通知（IPN）- CV2 IPNには、セキュリティを向上させるためにトランザクションの詳細が少ない、異なるメッセージスキーマがあります。トランザクションのstateを判別するには、メッセージで指定されたトランザクションに対してGET APIを実行する必要があります。詳細については、<a href="../amazon-pay-checkout/set-up-instant-payment-notifications.md" target="_blank" rel="noopener noreferrer">インスタント支払通知を設定する</a>を参照してください。
* レポートAPI - CV2では、CV1と異なる新しいレポートAPIとなります。 もしCV1から既存のMWSレポートAPIを実装している場合は、[Reports API](../amazon-pay-api-v2/reports.html)を参照してCV2のAmazon PayレポートAPIにアップグレードして下さい。 合わせて[MWS Report APIからの移行](../amazon-pay-reports/migrate-from-mws.html)ページもご参照ください。レポートの項目については、CV1と同じになります。 
* 機能 - CV2では、デフォルトでは最初の注文金額以上の増額・追加請求は行えません。増額の設定方法についてはFAQをご覧ください。

#### Checkout v1(CV1)とCheckout v2(CV2)で変わらないもの

* Amazon Pay事業者アカウント - CV2にアップグレードするために、新しいAmazon Pay事業者アカウントに登録する必要はありません。
* 支払い - 決済期間と支払いプロセスは同じままです。
* レポート - CV1とCV2の注文は同じレポートに表示されます。
* セラーセントラル - セラーセントラルのインターフェースは同じままであり、引き続きそれを使用して、CV1の注文に対して行なっていたのと同じアクションを実行できます。



### 移行のベストプラクティス

アップグレードを成功させるには、次の推奨事項に従ってください。

1. インテグレーションを開始する前に、アップグレードを計画してください。 Amazon Pay CV2を新しい支払い方法のインテグレーションとして実装するか、既存のCV1注文を管理するために現在のインテグレーションを更新してCV2 APIを使用した移行コードを記述することができます。
    1. 新しい支払い方法としてのAmazon Pay CV2の実装 - CV1の注文にはCV1 APIを使用し、CV2の注文にはCV2 APIを使用します。新しい支払い方法を簡単に作成できる場合は、このオプションを選択してください。 CV1インテグレーションに影響を与えることなくCV2を安全に起動でき、各インテグレーションのコードを個別に保持することでトラブルシューティングを簡素化します。
    2. CV2 APIを使用するように現在のインテグレーションを更新する - CV2 APIを使用するようにインテグレーションを更新し、[CV2 APIを使用したCV1オブジェクトの管理](../amazon-pay-checkout/upgrading-to-v2-checkout.html#checkout-v2cv2-apiを使用したcheckout-v1cv1注文の管理)の説明に従って移行コードを記述します。新しい支払い方法を作成するのに多大な労力がかかる場合は、このオプションを選択してください。これにより、単一のAmazon Payインテグレーションを維持できますが、CV1の注文に対して売上請求までの処理または返金を行うには追加のコードを作成する必要があります。このアプローチを採用する予定の場合は、CV2のインテグレーションに問題があり、一時的にCV1に戻す必要がある場合に備えて、ロールバックプランを設定することをお勧めします。
2. インテグレーションを開始する前に、CV2の購入者エクスペリエンスを確認してください。既存のCV1インテグレーションを変更せずに置き換えることは、最適ではない場合があります。たとえば、CV1では異なるページに配送先住所とお支払い方法の情報を入力する複数ページの決済フローがある場合、CV2では購入者がAmazon Payでホストされているページで希望の配送先住所とお支払い方法を選択した後、最終レビューページに直接スキップする必要があります。
3. A / Bテストを実行します。 CV2の相対的なパフォーマンスが低いことは、インテグレーションエラーの指標である可能性があります。



### Checkout v2(CV2) APIを使用したCheckout v1(CV1)注文の管理

CV2にアップグレードした後、新たなCV1の注文を作成しないでください。CV1で作成された古い注文に対してCV2 APIで処理する場合は、下記の表を参考に該当する処理を実行してください。

#### ワンタイムペイメントAPI

<table width="100%" border="1">
    <tbody>
        <tr id='BXb9CApb7QH'>
            <td id='s:BXb9CApb7QH;BXb9CAXSCtR' style='font-weight: bold; width: 30%;'>CV1 API
                <br /></td>
            <td id='s:BXb9CApb7QH;BXb9CAelk6G' style='font-weight: bold; width: 70%;'>CV2移行手順
                <br /></td>
        </tr>
        <tr id='BXb9CAzqjLc'>
            <td id='s:BXb9CAzqjLc;BXb9CAXSCtR' style='vertical-align: top;'>Authorize
                <br /></td>
            <td id='s:BXb9CAzqjLc;BXb9CAelk6G' style='vertical-align: top;'>CV1の<code>AmazonOrderReferenceId</code>を使用した<a href="../amazon-pay-api-v2/charge.md#create-charge" target="_blank" rel="noopener noreferrer">Create Charge</a>。 Order Reference objectはOpen状態である必要があります。<br><br>同じトランザクションを使用して支払いを売上請求するするには、<code>captureNow</code>をtrueに設定します。オーソリを同期にするか非同期にするかを指定するには<code>CanHandlePendingAuthorization</code>パラメータを使用してください。
                <br /></td>
        </tr>
        <tr id='BXb9CA46rUc'>
            <td id='s:BXb9CA46rUc;BXb9CAXSCtR' style='vertical-align: top;'>Cancel OrderReference
                <br /></td>
            <td id='s:BXb9CA46rUc;BXb9CAelk6G' style='vertical-align: top;'> CV1の<code>AmazonOrderReferenceId</code>を使用した<a href="../amazon-pay-api-v2/charge-permission.md#close-charge-permission" target="_blank" rel="noopener noreferrer">Close Charge Permission</a>。<code>cancelPendingCharges</code>をTrueに設定します。
                <br /></td>
        </tr>
        <tr id='BXb9CAQ8hnr'>
            <td id='s:BXb9CAQ8hnr;BXb9CAXSCtR' style='vertical-align: top;'>Capture
                <br /></td>
            <td id='s:BXb9CAQ8hnr;BXb9CAelk6G' style='vertical-align: top;'>次の手順を実行します:<br>1. CV1の<code>AmazonAuthorizationId</code>の21番目の文字を文字「A」から文字「C」に変更します。例：S01-5797829-1888777-A043451からS01-5797829-1888777-C043451。<br>2. 変更された値を使用して<a href="../amazon-pay-api-v2/charge.md#capture-charge" target="_blank" rel="noopener noreferrer">Capture Charge</a>を実行します。
                <br /></td>
        </tr>
        <tr id='BXb9CAzQvhu'>
            <td id='s:BXb9CAzQvhu;BXb9CAXSCtR' style='vertical-align: top;'>Close Authorization
                <br /></td>
            <td id='s:BXb9CAzQvhu;BXb9CAelk6G' style='vertical-align: top;'>次の手順を実行します:<br>1. CV1の<code>AmazonAuthorizationId</code>の21番目の文字を文字「A」から文字「C」に変更します。例：S01-5797829-1888777-A043451からS01-5797829-1888777-C043451。<br>2. 変更された値を使用して<a href="../amazon-pay-api-v2/charge.md#cancel-charge" target="_blank" rel="noopener noreferrer">Cancel Charge</a>を実行します。
                <br /></td>
        </tr>
        <tr id='BXb9CACqs0O'>
            <td id='s:BXb9CACqs0O;BXb9CAXSCtR' style='vertical-align: top;'>Close OrderReference
                <br /></td>
            <td id='s:BXb9CACqs0O;BXb9CAelk6G' style='vertical-align: top;'>CV1のAmazonOrderReferenceIdを使用した<a href="../amazon-pay-api-v2/charge-permission.md#close-charge-permission" target="_blank" rel="noopener noreferrer">Close Charge Permission</a>。<code>cancelPendingCharges</code>をFalseに設定します。
                <br /></td>
        </tr>
        <tr id='BXb9CAnTPJf'>
            <td id='s:BXb9CAnTPJf;BXb9CAXSCtR' style='vertical-align: top;'>Get AuthorizationDetails
                <br /></td>
            <td id='s:BXb9CAnTPJf;BXb9CAelk6G' style='vertical-align: top;'>次の手順を実行します:<br>1. CV1の<code>AmazonAuthorizationId</code>の21番目の文字を文字「A」から文字「C」に変更します。例：S01-5797829-1888777-A043451からS01-5797829-1888777-C043451。<br>2. 変更された値を使用して<a href="../amazon-pay-api-v2/charge.md#get-charge" target="_blank" rel="noopener noreferrer">Get Charge </a>を実行します。<br><br>CV1 Authorizationの状態とCV2 Chargeの状態の対応は次の通りです:<br>Pending = AuthorizationInitiated<br>Open = Authorized<br>Closed =  <code>ReasonCode</code>がMaxAmountCapturedの場合はCaptured, その他の全ての<code>ReasonCode</code>の場合は、Canceled<br>Declined = Declined
                <br /></td>
        </tr>
        <tr id='BXb9CAteurI'>
            <td id='s:BXb9CAteurI;BXb9CAXSCtR' style='vertical-align: top;'>Get CaptureDetails
                <br /></td>
            <td id='s:BXb9CAteurI;BXb9CAelk6G' style='vertical-align: top;'>CV1の<code>AmazonCaptureId</code>を使用した<a href="../amazon-pay-api-v2/charge.md#get-charge" target="_blank" rel="noopener noreferrer">Get Charge</a>。<br><br>CV1 Captureの状態とCV2 Chargeの状態の対応は次の通りです:<br>Pending = CaptureInitiated<br>Completed = Captured<br>Closed = Canceled<br>Declined = Declined
                <br /></td>
        </tr>
        <tr id='BXb9CAUiaJh'>
            <td id='s:BXb9CAUiaJh;BXb9CAXSCtR' style='vertical-align: top;'>Get OrderReferenceDetails
                <br /></td>
            <td id='s:BXb9CAUiaJh;BXb9CAelk6G' style='vertical-align: top;'> CV1の<code>AmazonOrderReferenceId</code>を使用した<a href="../amazon-pay-api-v2/charge-permission.md#get-charge-permission" target="_blank" rel="noopener noreferrer">Get Charge Permission</a>。<br><br>CV1 ObjectReference状態とCV2 ChargePermisionの状態の対応は次の通りです:<br>Open =  Captureの成功前は、Chargeable。Captureの成功後は、Closed<br>Closed = Closed<br>Canceled = Closed<br>Suspended = NonChargeable
                <br /></td>
        </tr>
        <tr id='BXb9CAem4fx'>
            <td id='s:BXb9CAem4fx;BXb9CAXSCtR' style='vertical-align: top;'>Get RefundDetails
                <br /></td>
            <td id='s:BXb9CAem4fx;BXb9CAelk6G' style='vertical-align: top;'>CV1の<code>AmazonRefundId</code>を使用した<a href="../amazon-pay-api-v2/refund.md#get-refund" target="_blank" rel="noopener noreferrer">Get Refund</a>。<br><br>CV1 Refundの状態とCV2 Refundの状態の対応は次の通りです:<br>Pending = RefundInitiated<br>Completed = Refunded<br>Declined = Declined
                <br /></td>
        </tr>
        <tr id='BXb9CAyLtgO'>
            <td id='s:BXb9CAyLtgO;BXb9CAXSCtR' style='vertical-align: top;'>Refund
                <br /></td>
            <td id='s:BXb9CAyLtgO;BXb9CAelk6G' style='vertical-align: top;'>CV1の<code>AmazonCaptureId</code>を使用した<a href="../amazon-pay-api-v2/refund.md#create-refund" target="_blank" rel="noopener noreferrer">Create Refund</a>。 CaptureオブジェクトはCompleted状態である必要があります。
                <br /></td>
        </tr>
    </tbody>
</table>

#### Auto Pay API

<table width="100%" border="1">
    <tbody>
        <tr id='BXb9CApb7QH'>
            <td id='s:BXb9CApb7QH;BXb9CAXSCtR' style='font-weight: bold; width: 30%;'>CV1 API
                <br /></td>
            <td id='s:BXb9CApb7QH;BXb9CAelk6G' style='font-weight: bold; width: 70%;'>CV2 移行手順
                <br /></td>
        </tr>
        <tr id='ZRI9CA11bsK'>
            <td id='s:ZRI9CA11bsK;ZRI9CAUpWJq' style='vertical-align: top;'>AuthorizeOnBillingAgreement
                <br /></td>
            <td id='s:ZRI9CA11bsK;ZRI9CARfRyz' style='vertical-align: top;'> CV1の<code>AmazonBillingAgreementId</code>を使用した<a href="../amazon-pay-api-v2/charge.md#create-charge" target="_blank" rel="noopener noreferrer">Create Charge</a>。Billing AgreementオブジェクトはOpen状態である必要があります。 <br><br>同じトランザクションを使用して支払いを売上請求するするには、<code>captureNow</code>をtrueに設定します。オーソリを同期にするか非同期にするかを指定するには<code>CanHandlePendingAuthorization</code>パラメータを使用してください。
                <br /></td>
        </tr>
        <tr id='ZRI9CAxqkfw'>
            <td id='s:ZRI9CAxqkfw;ZRI9CAUpWJq' style='vertical-align: top;'>CloseBillingAgreement
                <br /></td>
            <td id='s:ZRI9CAxqkfw;ZRI9CARfRyz' style='vertical-align: top;'>CV1の<code>AmazonBillingAgreementId</code>を使用した<a href="../amazon-pay-api-v2/charge-permission.md#close-charge-permission" target="_blank" rel="noopener noreferrer">Close Charge Permission</a>。<code>cancelPendingCharges</code>をFalseに設定してください.
                <br /></td>
        </tr>
        <tr id='ZRI9CA1I68A'>
            <td id='s:ZRI9CA1I68A;ZRI9CAUpWJq' style='vertical-align: top;'>CreateOrderReferenceForId
                <br /></td>
            <td id='s:ZRI9CA1I68A;ZRI9CARfRyz' style='vertical-align: top;'>CV2では同等のAPIを提供していません。<br><br>このAPIを将来のオーソリ取得するためにOrder Reference objectの生成で利用している場合は、CV1の<code>AmazonBillingAgreementId</code>を使用した<a href="../amazon-pay-api-v2/charge.md#create-charge" target="_blank" rel="noopener noreferrer">Create Charge</a>を実行するようにコードをリファクタリングしてください。<br><br>このAPIを即時のオーソリや売上請求のために使用している場合は、<code>AmazonBillingAgreementId</code>を使用した<a href="../amazon-pay-api-v2/charge.md#create-charge" target="_blank" rel="noopener noreferrer">Create Charge</a>を実行してください。
                <br /></td>
        </tr>
        <tr id='ZRI9CAJrIuJ'>
            <td id='s:ZRI9CAJrIuJ;ZRI9CAUpWJq' style='vertical-align: top;'>GetBillingAgreementDetails
                <br /></td>
            <td id='s:ZRI9CAJrIuJ;ZRI9CARfRyz' style='vertical-align: top;'>CV1の <code>AmazonBillingAgreementId</code>を使用した<a href="../amazon-pay-api-v2/charge-permission.md#get-charge-permission" target="_blank" rel="noopener noreferrer">Get Charge Permission</a>。<br><br>CV1 Billing Agreementの状態とCV2 Charge Permisionの状態の対応は次の通りです:<br>Open = Chargeable <br>Closed = Closed<br>Canceled = Closed<br>Suspended = NonChargeable
                <br /></td>
        </tr>
        <tr id='ZRI9CADc7i5'>
            <td id='s:ZRI9CADc7i5;ZRI9CAUpWJq' style='vertical-align: top;'>SetBillingAgreementDetails
                <br /></td>
            <td id='s:ZRI9CADc7i5;ZRI9CARfRyz' style='vertical-align: top;'>CV1の<code>AmazonBillingAgreementId</code>を使用した<a href="../amazon-pay-api-v2/charge-permission.md#update-charge-permission" target="_blank" rel="noopener noreferrer">Update Charge Permission</a>。 
                <br /></td>
        </tr>
        <tr id='ZRI9CAQkYAs'>
            <td id='s:ZRI9CAQkYAs;ZRI9CAUpWJq' style='vertical-align: top;'>ValidateBillingAgreement
                <br /></td>
            <td id='s:ZRI9CAQkYAs;ZRI9CARfRyz' style='vertical-align: top;'>CV2では同等のAPIを提供していません。 Amazon PayはCharge Permissionオブジェクトが作成されるときに、それに関連付けられている支払い方法を自動的に検証します。このAPIリクエストはコードから削除する必要があります。.<br><br><br><br>
                <br /></td>
        </tr>
    </tbody>
</table>

