メルカリShopsを支えるメルペイPaymentPlatformの仕組み

この記事は、Merpay Advent Calendar 2022 の18日目の記事です。
こんにちは。メルペイ PaymentPlatform Engineering Manger のabcdefujiです。

我々メルペイPaymentPlatformの責務は「決済基盤としてプロダクトチームに機能(決済、清算、お金の管理)を提供し、プロダクト・サービスのミッション達成を実現する」です。
2022/12時点では、図のようにプロダクトに機能を提供しています。

paymentplatform

今回はこれらプロダクトの中でもメルカリShopsとメルペイPaymentPlatformの関係性についてお話したいと思います。
背景として、現在メルカリShopsは決済システムとしてメルペイを利用しています。しかしながら当時のメルペイPaymentPlatformの機能では不十分でありメルカリShopsの要望を満たす事が出来ませんでした。
メルペイPaymentPlatformはどのような変遷をたどりメルカリShopsへの対応を実現したのでしょうか。

従来のメルペイPaymentPlatform

まずメルカリShops対応前のメルペイPaymentPlatformにおける決済処理の紹介をします。
以前のfoghostさんのマイクロサービスにおける決済トランザクション管理でも説明されている通り、メルペイではマイクロサービスアーキテクチャを採用しており複数のマイクロサービスを経由して決済処理が実現されてます。

ここでの決済とは、トランザクション内で価値の移動・交換を行うことを表します。
価値の移動・交換を実現するためにメルペイPaymentPlatformではお客さまと加盟店さまの価値を管理する口座が存在します。

お客さまの口座にはメルペイ残高口座、売上金口座、ポイントを管理する口座が存在します。またメルペイの場合、メルペイスマート払いという与信を利用した決済機能も提供しているので債権を管理する口座もあります。
加盟店さまの口座に関しては、決済をするたびに売上が貯まる未精算売上口座、そして精算のプロセスを完了後に確定された売上が精算済み売上口座が、そして売上が債権として精算される場合のために精算済み債権口座が存在します。
これらの口座間の価値移動・交換をメルペイPaymentPlatformは提供しています。

参考までにメルペイ加盟店決済での例です。

決済時にお客さまの口座(from)から加盟店さまの売上口座(to)に価値の移動が行われます。こうして蓄積された加盟店さま口座の売上金に対して定期的な精算処理が行われて、メルペイが決済手数料を徴収して最終的に確定された売上が出金されます。

特徴

  • 決済方法はメルペイ内製の決済手段のみ適応可能(メルペイのQRコード決済、iD決済、ネット決済に利用されています)
  • お客さまから加盟店さまに決済した金額が売上処理と同時に加盟店さまの売上に計上される
  • 加盟店さまの未精算の売上からメルペイが決済手数料を徴収して最終的に売上確定される
  • 確定された売上が出金できる

この従来の方法はお客さまと加盟店さま間の1: 1の取引を提供するときに利用できる決済機能でした。

メルカリShops導入の課題と解決方法について

しかしながらメルカリShopsではお客さまと加盟店さまが1:1の関係ではなく、メルカリShopsというメルペイ外プラットフォームを通した構成でした。
※ メルカリShopsとメルペイは同じメルカリグループに属していますが、両者のシステムは完全に独立しています。

お客さまと加盟店さまの価値交換だけであり、メルペイで閉じた決済であればメルペイ自身で売上管理、精算、出金まで行う事ができましたが、外部プラットフォームが中継する構成になると既存の仕組みでは対応できず、さらに外部プラットフォーム側で加盟店さまの売上管理、精算、出金機能等の機能が必要になりました。

この課題を解決するためにメルペイPaymentPlatformは以下図の構成に拡張を行いました。

変更点

  • 外部プラットフォーム・外部プラットフォームの加盟店さまをメルペイの加盟店(バーチャルアカウント)として管理
  • 決済と加盟店さまへの売上分配をそれぞれ独自の処理として分離
  • 外部プラットフォーム側の手数料を徴収するために外部プラットフォーム加盟店さまへの精算処理を追加

外部プラットフォーム・外部プラットフォームの加盟店さまをメルペイの加盟店(バーチャルアカウント)とし て管理

どのようにすればメルペイPaymentPlatformの機能を外部プラットフォームに提供できるのでしょうか。私達の選択は外部プラットフォームの加盟店さまもメルペイの加盟店さまとして取り扱う事でした。そうすることで、既存のメルペイの加盟店さま用口座管理機能/精算処理/出金処理を流用しつつ、後述の通り既存の仕組みを拡張しながら柔軟な決済スキームの実現が成功しました。

決済と加盟店さまへの売上分配をそれぞれ独自の処理として分離

従来の方法ではお客さまと加盟店さまの1:1の関係から決済処理後の売上分配までの処理を一連の決済処理として実行していました。これを決済処理・売上分配処理を独立した処理として分離し、それぞれの処理を外部プラットフォームから実行できるようにすることで、外部プラットフォームの機能設計に合わせた売上の分配を自由に実行する事が出来るように変更しました。

外部プラットフォーム側の手数料を徴収するために外部プラットフォーム加盟店さまへの精算処理を追加

従来の方法ではメルペイの加盟店さまからメルペイの手数料のみを徴収する仕様でしたが、新しい決済スキーマでは外部プラットフォームの利用手数料を外部プラットフォームの加盟店から徴収できるように変更しました。

特徴

  • 外部プラットフォームはメルペイの既存の仕組みを利用することが出来る
  • 精算・出金機能を利用する事が出来る
  • メルペイの不正決済検知機能を利用することが出来る
  • 外部プラットフォームの加盟店の売上もメルペイの加盟店(バーチャルアカウント)として売上の管理が出来る
  • 決済の確定と加盟店さまへの売上分配をそれぞれ独自の処理として分離している
  • 外部プラットフォームは自由に売上分配が出来る
  • 外部プラットフォームの手数料徴収の設定が出来る

このようにしてメルペイPaymentPlatformはメルカリShopsを外部プラットフォームとみなし汎用的な仕組みとして加盟店さまの売上管理、精算、出金機能等の機能の提供を実現しました。

まとめ

新たな決済スキーマをプロダクトチームに提供することで基盤として汎用的な仕組みにしつつメルカリShopsのリリースに関与することが出来ました。
ここでは紹介しきれませんでしたが、会計処理/精算処理/入出金の詳細についても機会があれば紹介できればと思います。
また、さらに詳しくPaymentPlatformに関して知りたい方は決済基盤の実践話を読んでみてください。より体系的に説明されています。
以上、メルカリShopsを支えるメルペイPaymentPlatformの変遷紹介でした。最近ではメルカードのリリース・そして暗号資産取引の発表等、まだまだメルペイPaymentPlatformのチャレンジは続いていきます。多様化し続けるプロダクトを支え続けられる基盤として進化し続けていきたいです。

最後まで読んでいただきありがとうございました。

明日の記事は huhuさんです。引き続きお楽しみください。

  • X
  • Facebook
  • linkedin
  • このエントリーをはてなブックマークに追加