PAY.JPではJavaScriptを使ってクレジットカード番号の一時的トークンを生成して決済する仕組みがあります。シーケンス図で表すと次のようになります。 この仕組みを使った利点としては、サービス事業者(ECサイトを運営している企業など)がクレジットカード番号を知らずにオンライン決済を提供できることです。クレジットカード番号が事業者のサーバを通過する仕組みを提供する場合、2018年3月までにPCI DSSの対応が必要になります。これはセキュリティ基準としてハードルが非常に高いです。 PAY.JPのチェックアウトを使う場合、クレジットカード番号が事業者のサーバを通過せずに済むので、PCI DSSの対応が求められず、安全かつ簡単に決済を導入することができます。今回はRuby/Sinatraを使ったサンプルを基に、実装方法を紹介します。 決済画面を表示する まず最初に決済を行う画面を表示します