Amazonのチェックアウト・ワークフローとは

この記事は次のブログに引っ越しました。

Amazon ログイン& ペイメント インテグレーションガイドにあるチェックアウトとは アマゾン・ペイメントを導入しようと、提供された導入ガイドを読んでみると大変わかりにくい。その原因となっている1つは、使用する用語が古いものと新しいものを混在して記載していることです。その最たる用語が「チェックアウト」です。 選択したインテグレーションボタンのオプションに応じて、購入者はセラーのサイトでチェックアウトプロセスを開始する前、開始中、または開始した後に認証できます。 購入者が住所と支払いをそれぞれのウィジェットから選択したことを確認するまで、チェックアウトワークフローを無効にすることをお勧めします。 上記のような記載があるのですが、ガイドを1つ1つこなしていくと「ん?ん?」となってしまいます。 これは「チェックアウト」とは何かの説明もないまま話が進んでしまうからです。 プログラマからしてみると、バージョン管理システムなどで使われるチェックアウト的な何かと思ってしまうわけですが、どうにもピンとこない。 チェックアウトとは 結局、米アマゾンのサイトに行って探してみたところ、「チェックアウト」とは"CBA"(Checkout by Amazon)と呼ばれる2017年4月1日に廃止予定の「Amazonログイン&ペイメントの前出のサービス」由来の用語でした。 「チェックアウト」はホテルを出る時のチェックアウトと考えるとわかりやすいと思います。つまりAmazon決済で(ホテルを)チェックアウトして精算するイメージです。「お会計お願いします」を英語言うと"Check(out) please."というのとも同じです。ここはプログラム用語のチェックアウトが理解の邪魔をしていたところでした。 しかし、ネーミングの分かりづらさ、対応する国を増やす際の決済に関する法務的な理由、より汎用的な導入(インテグレーション)方法の採用と言った理由などから、名前を変え別のサービスとして再スタートさせたものが「Amazon ログイン&ペイメント」のようです。 どちらも「販売している物理的・電子的商品をAmazonアカウントでの決済手段」と、サービス内容は同じなのですが提供機能は別であるためセラー(出品者)はアカウントを別途セラー・セントラルよりアマゾン・ペイメントのサービスに登録しないといけません。 つまり、完全に仕切り直しなサービスなわけですが、提供されるガイドは「アマゾン・チェックアウト」から「アマゾン・ペイメント」への移行ガイドをベースにしているためか、新規に始める人には「??」となるわけです。 基本的にはガイドの随所で言われる「チェックアウト」を「Amazonペイメント決済」と読み替えると若干わかりやすくなります。 前述の表記を自分なりに噛み砕いて書いてみると以下のようになるのですが、いかがでしょう。 選択したインテグレーションボタンのオプションに応じて、購入者はセラーのサイトでチェックアウトプロセスを開始する前、開始中、または開始した後に認証できます。 ↓ 導入(インテグレーション)を行う際に、指定したボタンのオプションに応じてAmazonにログインする認証のタイミングを決められます。ログインのタイミングは、購入者がセラー(出品者)のサイトでAmazonペイメントによる決済を開始する前、開始中、開始した後の3パターンで認証を行わせることができます。 購入者が住所と支払いをそれぞれのウィジェットから選択したことを確認するまで、チェックアウトワークフローを無効にすることをお勧めします。 ↓ 購入者が住所と支払いをそれぞれのウィジェットから選択したことを確認するまで、Amazonペイメントの決済手順を行わないことをお勧めします。 ちなみに、インテグレーション・ガイドに記載されているプログラムも間違いが多く、プログラムをよくわからない人が翻訳やチェックを行っていると感じました。(クラスからオブジェクトを作成する際に"new"がないなど) GoogleAPIもしかりですが、APIを提供する側はもう少しユーザー・フレンドリーになれないものでしょうか。確かに英語がわかる方がいいとは思うのですが、それはマニュアル人間うんぬんとは別の話だと思います。