こんにちは!最近、Yandex.Checkoutで、VisaとMastercardの支払いシステムとともに、eコマース、つまりオンラインコマースの支払いをトークン化する新しいテクノロジーを立ち上げました。誰かが考えるかもしれません:Apple Pay、Google Pay、およびその他の* Payのリリースですでにわかっているカードのトークン化の何が問題になっていますか。しかし、いいえ、ここには何か新しいものがあります。また、この春にロシアでパートナーストア向けにこのテクノロジーを発表した最初の会社でもありました。ぜひ共有してください。
アメリカとヨーロッパでは、このテクノロジーは少し前に登場しました。NetflixやAmazonなどのサービスのユーザーは、すでに知らないかもしれませんが、すでにEコマーストークンを支払います。次に、このプロジェクトの開発者とチームリーダーの観点から、それが外部(パートナーとカード所有者の場合)だけでなく内部でもどのように機能するかを説明します。あなたが興味があるなら-猫の下でウェルシュ。
Apple Pay Google Pay
, , Apple Pay Google Pay ( — *Pay), .
, *Pay , . , , . , , , . — — , .
:
- , ,
- .
? E-commerce, , - -.
, E-commerce
, — , .
— (PAN — Primary Account Number) .カード所有者がカードを* Payに接続するためのイニシエーターである場合、オンラインストアはeコマースのトークン化を開始します。しかし、なぜ(そしてどのような理由で)?
音楽、映画、または公共料金などの毎月の支払いであっても、きっとあなたの多くは定期購読サービスを利用しています。このサブスクリプションはどのように発行されますか?オンラインストアのWebサイトにアクセスし、カードの詳細を入力し、ボックスにチェックを入れて、ストアがカードの詳細(PANと有効期限)を保存し、特定のサービスの支払いを個別に開始できることに同意します。
このようなアクションは、ストアがカードデータをどこかに保存する必要があることを意味することを理解する必要があります。通常、2つのオプションがあります。
- , PCI DSS, -,
- , ., PCI DSS .
ここでもトークン化アプローチを適用することは可能ですか?カードとは別に管理できる銀行カードデータを保存する代わりに、ある種のトークンを使用しないのはなぜですか?しかし、次のカードの再発行時にトークンが同じままであり、カードを別のサービスに再リンクする必要がないようにする場合はどうでしょうか。気になりますか?
すべてを順番に話しましょう。トークン化の際、特定のトークンと銀行カードのデータを交換しますが、それは何ですか?トークンはカード決済システム-MastercardまたはVisaによって提供されます。これは、デバイスのApple Payアカウント番号またはGoogle Pay仮想アカウント番号と同様の一意の識別子であり、スマートフォンアプリ(Appleデバイスではウォレット、AndroidではGoogle Pay)にあります。
* Payとは異なり、eコマースのトークン化では、トークンの作成はオンラインストアまたはその支払いソリューションによって開始され、トークン自体は支払いシステムのサーバーに格納されます。
もちろん、誰も支払いシステムに来て、購入代金を支払うために誰かのカードのトークンを受け取ることはできません。まず、カードは、支払いシステムによって認定および承認されている支払いソリューションでのみトークン化できます。このような支払いソリューションは、On-Behalf Token RequestorまたはToken Service Providerと呼ばれますが、簡単にするために、以降、Token Requestorという用語を使用します。。トークンの支払いを開始できるのはトークンリクエスタのみです。次に、トークンは常に特定のストアに対して発行され、そのストアでのみトークンで支払うことができます。 * Payトークンが、それが作成されたデバイスに関連付けられる方法と非常に似ています。
これはどのように達成されますか?各トークンの支払いを行う直前に、トークンリクエスタはこの支払いについて支払いシステムから承認を得る必要があります。そのような承認の事実は、実際の支払い中に提示する必要があります。したがって、この承認には、カード支払いシステムによって生成される1回限りの暗号文の形式があります。支払いを行うとき、この暗号文は、取得銀行の要求パラメーターに追加されてから、支払いシステムに送信され、以前に発行したこの暗号文の信頼性が検証されます。
そして、カード管理に関係なく、トークン管理はどうですか?一般に、ここではすべてが単純です。トークンは独自の寿命を持ち、独自のライフサイクルステータスがあり、トークンリクエスタは、カード支払いシステムからトークンリクエスタのステータスの各変化についてすぐに学習します。
まとめましょう。トークン化はカード所有者に何を与えますか?
- 実際の銀行カードのデータセキュリティ。トークンは支払いに使用されますが、カードデータ自体は送信されないため、潜在的な攻撃者がトークンを傍受することはできません。トークンのデータを傍受しても意味がありません。他のストアで支払いをしようとすると、トークンがカボチャに変わるからです。
- 銀行カードが再発行されても、オンラインストア用に発行されたトークンは引き続き有効であり、カード所有者は新しいカードを必要なサービスにリンクする必要はありません。
- トークンを管理する機能。トークンは、銀行カード自体に影響を与えることなく管理できます。発行銀行は、オンラインストアでのバインディングの柔軟な管理(新しいストアでのトークンの作成、既存のトークンの表示、無関係なトークンの削除)のための特別なツールをインターフェイスに実装できます。
これはオンラインストアに何を与えますか?
- 購入者にとって良いことは店舗にとっても良いことなので、トークン化されたカードを使用すると、顧客のロイヤルティを高めることができます。
- , . , , . , .
- . , . , 88,53%, 97,89%*. , - , - . . , -, , .
*この4月の支払いを大規模なオンライン映画(MCC 4899)で比較しました-3DSのないリンクされたカード。
技術的側面
もう少し深く掘り下げたい方のために、カードトークン化テクノロジーとYandex.Checkoutでのローンチについてお話しします。支払いソリューションの内部からすべてがどのように見えるかを説明します。
決済システムとの統合
カードをトークン化し、トークンを使用して支払いを行う技術的能力を得るには、VisaおよびMastercardと統合し、テストに合格し、認定を受けて、本番環境でのリリースの承認を得る必要があります。最初はそれは威圧的に聞こえました。そして、最初は正直言って、少なくとも私にとっては。しかし、認証はかなり恐ろしいものであり、テクノロジーに関してはすべて非常に明確でした。
統合とは、支払いシステムとトークンリクエスタとしての私たちの間の(条件付きで)次のAPIの実装を意味します。
- .
-, . (risk scoring) . , , , . , . - .
, : — , ? , , . , , . - .
/ , , , , . , .
このAPIの説明は条件付きで一般化されています。各支払いシステムには異なるリクエスト/レスポンス形式、リクエストのデータの署名と暗号化のアルゴリズムがあり、ビジネスロジックにはさまざまなニュアンスがあると簡単に推測できます。したがって、支払いシステムへのアダプターであり、トークンのライフサイクルを完全に担当する別のカードトークン化サービスを作成することにより、これらすべての詳細とシステムの他の部分との違いを隠しました。
Yandex.Checkoutでのトークン化
Yandex.Checkoutは、オンラインストアの支払いを受け入れるための大規模なシステムです。これは、バックエンド、フロントエンドアプリケーション、BIサービスなど、さまざまなサービスで構成されています。これらは、さまざまな方法でユーザーの支払いの受け入れ、店舗への送金、店舗の個人口座、分析サービスなどによる支払いの管理を提供します。そして、カードのトークン化はどのように正確にここに行きましたか?
主な質問は、銀行カードのトークンをいつ作成するかです。
Yandex.Checkout APIを使用すると、選択した支払い方法を今後の支払い用に保存できます。これを自動支払いと呼びます。
これは、カードがストアの個人アカウントでユーザーのアカウントにリンクされている場合と、定期的に購読している場合にカードからの支払いが自動的に行われる場合の両方で発生する可能性があります。どちらのシナリオでも、支払いを作成するとき、販売者は APIを使用してsave_payment_method:trueパラメータを送信し、支払いが成功した後、販売者のpayment_method_idを発行します。これは、新しい支払いを行うことができる保存済みの支払い方法の識別子です。
これが、この瞬間です。トークンは、ストアが開始した支払いのためにのみ作成されます。したがって、支払い方法を保存しながら支払いを行った直後に、トークン化サービスを非同期に設定して、「カードとストア」のペアのトークンを作成します。
カードのトークン化時に支払いシステム自体は何をしますか?
彼らは発行銀行にトークンを作成するリクエストを送信し(* Payトークンを作成するときに発生するように)、銀行はこのストアのトークンを発行します。銀行はこれについてカード所有者に通知し、作成されたトークンを自分の個人口座に表示することもできます。
トークン支払いはどのように機能しますか?
おそらく、ここで、オンラインストアを開始する以前に保存されたカードでの支払いがどのように行われるかを示す図が必要になります。
つまり、以前に保存されたメソッドで支払う場合、ストアはその識別子-payment_method_idのみを送信します。この識別子を使用して、カード決済サービスはカードのデータ(PANおよび有効期限)を検出し、それらをいずれかの取得銀行に転送します。その後、銀行はカード決済システムと通信します。
トークンを使用すると、このシナリオに別のステップが追加されます。
以前にカードとストアに対してトークンが発行されていることがわかった場合、カードデータを使用せずに支払いを行うことができます。これを行うには、トークン化サービスを介して、最初にトークンデータを含む国際決済システムにリクエストを送信し、代わりに、トークンが有効であり、支払いを行う権利があることを確認する1回限りの暗号文を受け取ります。その後、トークンデータをこのクリプトグラムと共に取得銀行に転送します。
ユーザーが銀行でカードを再発行すると、シナリオはどうなりますか?
トークンが以前にカードに発行されていた場合、発行銀行はカードが再発行されたことをMastercard / Visa支払いシステムに通知します。次に、このカードにトークンを発行した各トークンリクエスタは、支払いシステムから通知を受け取ります。カードに関する最新の情報が含まれています:番号の下4桁と新しい有効期限。トークンは同じままです。
ストアが、実際に再発行された、すでに有効期限が切れたカードから別の支払いを開始し、このストア用のトークンがある場合、支払いは成功します。さらに、銀行カードの新しい下4桁をストアに通知します-それらは、APIの応答に存在します。これは、ストアとユーザーの両方が常にどのカードから資金が引き落とされるかを確認できるようにするために必要です。
結論の代わりに
Eコマースのトークン化は、支払い受け入れの開発における新しい段階であり、支払いプロセスのすべての参加者の利便性を高めます。多くのロシアの銀行やプロバイダーが近い将来にこのテクノロジーをサポートし、決済市場の新しい標準になると期待しています。
もちろん、ストーリーはむしろ概要であることが判明しましたが、私はすべての読者がそれに役立つ何かを見つけてくれることを願っています-彼は彼の金融リテラシーのレベルを高め、フィンテックの新製品について学び、またはおそらく、彼のビジネスを発展させるためのアイデアを見つけます。
私はすべてです、健康で病気にならないでください!