「fincode byGMO」の決済基盤アーキテクチャ

アーキテクチャの工夫ポイント
fincodeは急成長するスタートアップ/ベンチャーのお客さまを多く抱えるため、サブスクリプション機能などの決済周辺機能の積極的な利用を想定したり、決済リクエストの急増に耐えるためのスケーラビリティを確保したりしつつ、カード情報を管理するためのセキュリティ基準である『PCI-DSS』への完全準拠が可能な、非常に高いレベルでセキュアである設計が求められます。
fincodeの基盤はオンプレミス基盤とクラウド基盤から成るハイブリッド構成です。
前者はGMO-PG連結企業集団全体の決済処理を長らく支えてきた信頼性のある決済基盤で、後者はECS/Fargateによりフルマネージされたコンテナアプリを中心とした、今どきのAWS基盤です。fincodeの開発チームは後者の開発・運用を行っています。
AWS基盤の方では高いレベルでセキュアかつスケーラビリティが担保されたサービスにするために以下のようなアプローチを採用しています。
- マイクロサービスアーキテクチャとマルチAZ、ECS/Fargate活用による冗長性と拡張性の確保
- DynamoDBを活用したリアルタイム流量制御
- 用途ごとにバッチ処理専用コンテナを起動。Step Functionsを活用し、スケーラブルなトランザクション管理を確立。
- PrivateLinkなどVPCエンドポイントを経由させた閉域アクセスによりPCI-DSS要件に適合しつつ、AWS内の通信を高速・安定化。
- Webhook通知を独立したECSタスクとして運用することで負荷を分散し、クリティカルな処理の安定性を確保。
これらが土台となり、決算説明会資料で開示した通り前年同期比406.3%の売上成長、つまりはお客様の急速な成長の支援を実現できています。
現在のアーキテクチャの課題と今後の展望
現状のfincodeはユーザー企業のトランザクション量が多くなると、管理画面上でのその情報の参照ができないという挙動が発生することがあります。データベース周りの負荷分散やクエリの効率化などはモダンなユーザー体験の提供というfincodeのテーマの上で解決しなければならない明確な課題です。
また、今後fincodeはプレスリリースで打ち出した通り、単なる決済インフラではなく企業間決済プラットフォームとしての機能を搭載したマルチFinTechインフラとしての進化を計画しています。
fincodeというサービスの中に決済代行事業ではない新たな事業ドメインを抱えることになるため、適切なサービスの分散・冗長化というお題目をより一層意識する必要があります。
◆執筆:
GMOペイメントゲートウェイ システム本部 関連事業サービス統括部 イプシロンサービス室長 米山 純司
GMOイプシロン fincode byGMO プロダクトマネージャー 中谷 仁貴
アーキテクチャを構成するツール

API
Amazon API Gateway

CDN
Amazon CloudFront

データベース
Amazon Aurora

サーバレス
Amazon S3

AWS Transit Gateway

インフラ
Amazon ECS

データベース
Amazon DynamoDB
会社情報

GMOペイメントゲートウェイ株式会社
GMOペイメントゲートウェイ株式会社(以下GMO-PG)はスタートアップ/ベンチャー向け決済インフラ「fincode byGMO」を開発しています。(※) fincodeはカード決済だけでなく、コンビニ決済やPayPay、口座振替など日本国内の決済手段をモダンな開発者体験で実装・導入できる、GMO-PG連結企業集団の中では最も新しい決済代行サービスです。決済URL生成やサブスクリプション機能、プラットフォーム機能などの決済周辺機能により、エンジニアの実装コストを下げつつ新しいビジネスモデルの課金体系を実装可能です。初期費用・月額費用・オプション料金などは一切かかりません。 ※ サービスの提供はグループ会社であるGMOイプシロン株式会社が行っています。