採用広報の飯野です。
今回は、オンライン決済サービス「PAY.JP」の開発を手がけるプロダクトチームに「3Dセキュア導入プロジェクト」の話題をメインにお話を伺いました。
3Dセキュアは、クレジットカードをオンラインで決済するときに不正利用を防止するための認証サービスです。経済産業省が、2025年3月末までにすべてのEC加盟店さんに対して3Dセキュア導入を義務付けたことから、「PAY.JP」も指定された期限までに要件を満たす状態へと改修することになりました。
このプロジェクトは、すでに多くの加盟店さんに提供しているAPIサービスを、改修期間中に加盟店さんやエンドユーザーに影響が出ないよう、最終的には「使いやすさ」と「フレキシブルさ」のバランスを考えた形に落とし込むという難易度の高いプロジェクトです。
コアメンバーは、2010年代後半から10年近く「PAY.JP」に携わっているベテランメンバーの3名です。1つのサービスに長く携わる魅力について「自分が作った負債を自分で返すチャンスがある」と話します。
プロジェクトについて話を聞くとともに、「PAY.JP」のプロダクト開発の魅力について聞きました。 前後編あわせてご覧ください。

【Profile】
写真左:東 健太(あずま けんた)
PAY株式会社 CTO
新卒で携帯アプリの開発会社に入社後、受託開発会社にて開発業務に従事。その後、「開発を手がけたサービスに責任を持ちたい」という理由から、2016年7月にBASE株式会社 PAY.JP Division(当時)にインフラエンジニアとして入社。その後テックリードを経て2023年にPAY株式会社のCTOに就任。
写真中央:山中 夏樹(やまなか なつき)
PAY株式会社 Dev Division エンジニア
新卒では携帯アプリの開発会社に入社し、Perlのサーバーサイドエンジニアから業界経験をスタート。その後、アプリの受託開発会社に転職しNode.jsを使ったチャットサービスやWebRTCを使った通話機能の実装などを経験。2017年12月にBASE株式会社 PAY.JP Division(当時)にアプリエンジニアとして入社。現在は、サーバーサイドエンジニアに転向。
写真右:野見山 志帆(のみやま しほ)
PAY株式会社 Product Division Product Management
新卒ではカード会社に総合職として入社。その後、外資の動画配信会社へ日本法人の立ち上げ期に転職し、3社目ではネット証券会社でCSや事業推進を経験する。CSの立ち上げにチャレンジしたいという思いから、2018年7月にPAY株式会社にCSとして入社し、マネージャーを経てチーム内初となるProduct Management(以下、PdMと表記)にジョブチェンジ。
経産省からの「3Dセキュア導入の義務化」
よろしくお願いします。まずは「3Dセキュア導入」のプロジェクトについて概要を教えてください。
野見山: 2023年3月に経済産業省がクレジットカード・セキュリティガイドライン【4.0版】の改訂を発表し、原則すべてのEC加盟店さんに3Dセキュアの導入を義務化しました。その要請を受け、私たちが提供しているオンライン決済サービス「PAY.JP」も改修する事になったんです。
山中: 発表の後に義務化の要件などが出揃っていって、プロジェクトが2024年の7月か8月くらいから始まり、義務化まで約8ヶ月の長期プロジェクトでしたね。
それぞれどんな役割を担っていたのでしょうか?
山中: 僕は開発部分をメインで担当しました。ドキュメントを書いたり、案内の出し方を考えたり技術的な部分です。開発の細かい部分はCTOの東さんにも検討に参加していただきながら決めていきました。仕様の決めの部分は東さんのほか、野見山さんにも入っていただきました。
東: ひとつ前のバージョンを作ったのが僕だったので、過去の仕様を一番よく知っている僕が見たというのもありますね。そして野見山さんがPdMとして全体整理をしてくれました。
野見山: はい、全体のスケジュール管理や、開発した後に加盟店さんのシステムを入れ替えるための調整など、開発以外の箇所を私が担当しました。
そのほかにも社内の多くの人に協力していただきました。たとえば、経産省の要件のとりまとめや加盟店さんへのコンタクト調整、問い合わせ対応などはいずれもPAYの専門チームが完遂してくれました。全加盟店さんに影響が出る大きなプロジェクトだったので、全社を巻き込みながら進めていきました。

「お客さんのお客さんまで」ユーザー体験を考えるAPIサービス開発
大規模かつ複雑なプロジェクトだったのですね。大変なことも多かったのではないでしょうか?
野見山: そうですね。経産省からの義務化要件はさまざまなPSP(決済サービスプロバイダー)やEC加盟店さんを想定して作られているため、「こういったシチュエーションのときは具体的にこのようにしてください」と細かく決まっているわけではありません。要件はあくまでガイドラインです。なので、自社ではどのように解釈するのが良いのかというところから考え、それを決められた期限までに具体的な仕様へと落とし込んでいくのが大変でしたね。
山中: あとは、経産省の要件と自社機能の仕様のズレの大きさにも悩まされました。当時の自社機能はさまざまな業種・規模の加盟店さんが使いやすいよう、余計な部分を削ぎ落としできるだけシンプルな設計にしていたので、その差分を埋める方法を考える時間が長かったような気がします。
たとえば以前の自社機能では、カード登録時か支払い時にのみ3Dセキュア認証が出てくる仕様だったのですが、今回はそれ以外のときにもできるようにしないといけませんでした。
東: 基本は「使いやすさ」を大事にして作っているのですが、あまりにも「使いやすさ」に振りすぎると今度は「フレキシブルさ」がなくなり、改修の幅が狭まってしまいます。
野見山: 特に今回のプロジェクトは、「加盟店さんのエンジニアにとっての使いやすさ」とその先にいる「エンドユーザーにとっての使いやすさ」の両面を考えないといけないのが難しかったですね。
東: そうですね。そもそもの仕組みは、加盟店さんのサービスから「PAY.JP」のAPIを叩いて決済がおこなわれるという形ですから、エンドユーザーはその加盟店さんのサービスのUIを触るわけです。そのエンドユーザーが触る決済の入力画面に3Dセキュアが出てくるので、僕らは「お客さん(加盟店さん)の、お客さん(エンドユーザー)のユーザー体験」までを考えて、最大公約数がどこかを導き出さなければなりません。
加盟店さんのサービスによって、当然エンドユーザーの層も異なると思います。「使いやすさ」と「フレキシブルさ」のバランスはどのようにとっていったのでしょうか?
山中: 「PAY.JP」の3Dセキュアでは、幅広いエンドユーザーを想定して実装することもできますし、一部のエンドユーザーをターゲットにしてシンプルな実装にすることもできるようにしました。
野見山: 理由としては、どこまで強制したらどのくらいの加盟店さんにどのくらいの影響が出るのか正直最後まで読みきれなかったところがあったためです。不明瞭な部分があるから、誰も困らないように、それぞれの加盟店さんが自社のスキームに合わせて最良だと思える選択肢をとれるような設計にしようという結論に至りました。

使う側の気持ちを考え抜いたのですね。
野見山: そうですね。このプロジェクトを通じて「正解って作るものなんだな」ということを知ることができました。完全な正解がないところから要件を整えて、開発してリリースして加盟店さんに導入していただくという一連の流れを体験することができて、非常に勉強になったなと思っています。
サービスを提供し続けながら刷新する難しさ
「PAY.JP」はすでに多くの加盟店さんが利用されているサービスですが、サービスを直す難しさはどんなところにありますか?
東: サービスを提供し続けながら、「今、使っている人」に影響を出さずに、新しいサービスに刷新していくところです。加盟店さんが提供するサービスの先には、24時間そのサービスで決済するお客さんがいるので、エンドユーザーであるお客さんにも影響がでないように努めないといけません。
野見山: 個人的には、新しいサービスを作るより既存のサービスを直すほうが緊張感がありますね。特にAPIサービスは加盟店さんやエンドユーザーなど影響範囲が広いので。
東: 新しいものを作るときに、過去のものを0にして1から考え直すことができるのであれば、正直なんとでもなるんです。たとえば今回の改修も、これまでに貯めた知識でもう一度0から作れば、今よりも良いAPIサービスができるかもしれません。でもそれをしないのは「今、使っている方」がいるからです。その方々が困らないようにすることもとても重要だと思っています。
「継ぎ足し」というとネガティブな開発用語に聞こえてしまうかもしれませんが、「今、使っている人」が困らないように継ぎ足しながら内側を綺麗にしていくことで良いプロダクトに近づいていきます。100%使いやすい状態にするのはとても難しいですが、うまくいったときは嬉しいです。

野見山: お話を聞いていて改めて思いましたが、「PAY.JP」の開発の方は顧客目線が強い方が多いと思っています。
既存のサービスを直すというのは、もちろん好きなように組み立てることはできないですし、さまざまな制約があるなかで今の状態を壊さないように良いものを作らなければなりません。つまりそれは、利用する加盟店さんがどういうことを考えているのかを知らないとより良いものにすることはできないんですよね。
【後編】では、長期でひとつのサービスに携わる魅力についてお聞きします。お楽しみに!