PAY.JP Platform マーチャントの登録・管理

PAY.JP Platform」におけるプラットフォーマー配下のマーチャントは、マーチャントの登録・クレジットカード審査依頼・継続管理まですべてAPIで実装することができます。

ここではマーチャントの登録〜クレジットカード審査依頼の方法からマーチャント管理のプロセスについて説明します。

前提

ここで登録されたマーチャントは、基本的に PAY.JPを認識しない想定 となります。 マーチャントを登録・管理するのはあくまでプラットフォーマーであり、マーチャント側がPAY.JPを認識し、PAY.JP上で自ら決済・返金などの操作をすることは想定されていません。

またマーチャントはPAY.JPのダッシュボードにログインすることはできません。

一方でプラットフォーマーは、あらゆるPAY.JP APIに付随する操作に加え、マーチャントの銀行口座およびAPIキーを含む全ての情報を管理・変更することが可能です。

マーチャントの新規登録

Platform APIを使ってまずはマーチャントの登録を行いましょう。

マーチャントの新規登録:

$ curl https://api.pay.jp/v1/platform/merchants \
-u sk_live_pf \
-d display_name=PAYプラットフォーム

マーチャントの表示名称である display_name をセットしてマーチャントの新規登録を行います。 作成に成功すると、PAY.JPの各種APIキーが発行され、新規登録が完了します。

マーチャントの本番利用

マーチャントが本番用のAPIキーを使って、本番環境を利用するには本番利用申請が必要になります。

本番利用申請はPlatform用のAPIまたは管理画面から行うことができます。

基本情報の登録 (Visa/MasterCardの審査)

基本情報の登録はVisa/MasterCardの本番利用に必要となります。

マーチャント基本情報の登録:

curl https://api.pay.jp/v1/platform/merchants/acct_3fcd0fc1f931d4cc63b0e26c872/applications/basic \
-F "product_name=商品名"  \
-F "product_reading_name=プロダクト"  \
-F "product_english_name=product"  \
-F "url=http://example.com"  \
-F "service_start_at=2017-02"  \
-F "product_detail=グッズ販売"  \
-F "product_price_min=100"  \
-F "product_price_max=1000"  \
-F "business_type=company"  \
-F "business_name=PAYJP"  \
-F "business_reading_name=ペイジェーピー"  \
-F "date_of_establishment=2016-01-01"  \
-F "business_capital=1" \
-F "president_lastname=山田"  \
-F "president_firstname=太郎"  \
-F "president_reading_lastname=ヤマダ"  \
-F "president_reading_firstname=タロウ"  \
-F "president_birth_at=1980-02-10"  \
-F "president_gender=men"  \
-F "address_zip=150-0043"  \
-F "address_state=東京都"  \
-F "address_city=渋谷区"  \
-F "address_line1=道玄坂2-11-1"  \
-F "address_line2=Gスクエア4F"  \
-F "address_reading_state=トウキョウト"  \
-F "address_reading_city=シブヤク"  \
-F "address_reading_line1=ドウゲンザカニチョウメ11−1"  \
-F "address_reading_line2=ジースクエア4カイ"  \
-F "phone=03-6416-5450"  \
-F "cell_phone=080-1111-2222"  \
-F "has_scl_url=false"  \
-F "scl_business_name=PAY"  \
-F "scl_contact_person_name=山田太郎"  \
-F "scl_address=東京都渋谷区道玄坂2-11-1Gスクエア4F" \
-F "scl_email=example@pay.jp"  \
-F "scl_phone=0312341234"  \
-F "scl_payment_method=クレジットカード"  \
-F "scl_time_of_payment=商品購入時に決済"  \
-F "scl_time_of_delivery=購入手続き完了後2営業日以内"  \
-F "scl_other_fee=なし" \
-F "scl_return_and_exchange=購入後7日以内であれば全額返金" \
-F "bank_person_name=ヤマダ タロウ"  \
-F "bank_code=0001"  \
-F "bank_branch_code=001"  \
-F "bank_type=普通"  \
-F "bank_account_number=0001000"  \
-F "corporate_number=1234123412341" \
-F "dryrun=false" \
-u sk_live_pf_xxx:

上記で基本情報の登録が完了します。 PAY.JP / クレジットカード会社側でVisa/MasterCardの審査を実施いたします。

基本情報の登録が完了すると、マーチャントの本番APIキーによる本番環境が利用できるようになりますが、クレジットカード審査を通過するまで下記の制限がかかりますのでご注意ください

  • 当該マーチャントの決済処理に関して、マーチャントへの入金が行われず、繰越状態となる
  • 当該マーチャントの決済処理に紐付いた platform_fee については、通常通りプラットフォーマーへ入金が行われる

また、審査の際に確認が必要な情報に関して、PAY.JPからプラットフォーマーのメールアドレス宛にマーチャント情報の修正依頼または確認の連絡をする場合があります。

修正が必要な場合は、下記のステップで修正を行ってください。

  1. 基本情報登録のAPIまたは管理画面を使ってマーチャントの基本情報を更新
  2. PAY.JP 宛に修正のご連絡

Visa/MasterCardの審査結果は最短2営業日でご連絡いたします。

追加情報の登録 (JCB/American Express/Diners Club/Discoverの審査)

追加情報の登録はJCB/American Express/Diners Club/Discoverの本番利用に必要となります。 追加情報は、基本情報の登録後に登録可能となります。

マーチャント追加情報の登録:

curl https://api.pay.jp/v1/platform/merchants/acct_3fcd0fc1f931d4cc63b0e26c872/applications/additional \
-d product_type=services  \
-d charge_type=charge  \
-d site_published=true  \
-d contact_person_lastname=山田  \
-d contact_person_firstname=太郎 \
-d contact_phone=0312341234  \
-d business_sales_lastyear=1  \
-d business_detail=グッズ販売事業  \
-d has_shop=true  \
-d shop_phone=0300000000  \
-d shop_address_zip=150-0043  \
-d shop_address_state=東京  \
-d shop_address_reading_state=トウキョウ  \
-d shop_address_city=渋谷区  \
-d shop_address_reading_city=シブヤク  \
-d shop_address_line1=道玄坂2-11-1  \
-d shop_address_reading_line1=ドウゲンザカニチョウメ11−1  \
-d shop_address_line2=Gスクエア4F  \
-d shop_address_reading_line2=ジースクエア4カイ  \
-d privacy_policy_url=https://pay.co.jp/privacy/  \
-d ssl_enabled=true  \
-d has_other_fee=true  \
-d delivery_fee=500  \
-d delivery_detail=配送の料金  \
-d other_fee=200  \
-d other_fee_detail=振込手数料など  \
-d dryrun=false \
-u sk_live_pf_xxx:

上記で追加情報の登録が完了します。 PAY.JP / クレジットカード会社側でJCB/American Express/Diners Club/Discoverの審査を実施いたします。

追加情報の審査は、Visa/MasterCardの審査通過後に実施いたします。

基本情報の登録と同様に、審査の際に確認が必要な情報に関して、PAY.JPからプラットフォーマーのメールアドレス宛にマーチャント情報の修正依頼または確認の連絡をいたします。

修正が必要な場合は、同じステップで修正を行ってください。

  1. 追加情報登録のAPIまたは管理画面を使ってマーチャントの追加情報を更新
  2. PAY.JP 宛に修正のご連絡

JCB/American Express/Diners Club/Discoverは、審査結果まで15営業日ほどのお時間をいただいております。

マーチャント登録時の利用規約について

PAY.JP Platform の利用規約には下記の2種類が存在しています。

  1. プラットフォーマー向け利用規約
  2. プラットフォーム加盟店向け利用規約

1の「プラットフォーマー向け利用規約」はプラットフォーマーに対して PAY.JP Platform 新規登録時に適用される利用規約です。

対して2の「プラットフォーム加盟店向け利用規約」はプラットフォーマーに紐づくマーチャントに適用されることを想定した利用規約です。

プラットフォーム加盟店向け利用規約については、プラットフォーマー側のWebサイトなどでマーチャントに同意していただくことが利用条件となっておりますので、サービス実装の際にそちらを考慮したサービス設計としてください。

具体的にはプラットフォーム加盟店向け利用規約のリンクを、当該マーチャントに適用される御社サービスの規約内に設けていただく、といった方法を推奨いたします。

上記は PAY.JP Platform 本番利用審査の際に確認させていただくことがございます。

マーチャントの管理

マーチャントのAPIキー更新、削除といった操作をAPIで行うことができます。

APIキーの更新

マーチャントのAPIキーは PAY.JP Platform 概要 にあるように、プラットフォーマーが管理を行うものです。

APIキーの閲覧、更新もすべてAPI経由で実施することができます。

APIキーの閲覧:

curl https://api.pay.jp/v1/platform/merchants/acct_fc88af3e62e095ef754d31bd559 \
-u sk_live_pf_xxx:

APIキーの更新:

curl https://api.pay.jp/v1/platform/merchants/acct_fc88af3e62e095ef754d31bd559/keys \
-d keytype=public \
-d accessmode=testmode \
-d timing=now \
-u sk_live_pf_xxx:

マーチャントの削除

マーチャントをAPI経由で削除することができます。

マーチャントの削除:

curl https://api.pay.jp/v1/platform/merchants/acct_1f29d796876a94017ccc471d7ad \
-u sk_live_pf_xxx: \
-XDELETE

マーチャントが本番環境の決済を利用している場合、クレジットカード決済の当該利用契約を停止します。 削除時に未振込の売上金額が振込手数料である250円以上残っている場合には、次回確定分入金時に基本情報として登録済みの銀行口座へ入金します。

マーチャントAPIのテスト

マーチャントAPIは基本的にプラットフォーマーのAPIキーを使ってテストが可能です。

モックアカウント

マーチャントの基本情報・追加情報の登録には、マーチャント個別の重要情報が伴います。

これら情報をモックとして定義したマーチャントAPIがあるので、こちらをモックオブジェクトとしてGET リクエストのテストの際に活用可能です。

  • モックマーチャントのID: acct_dummyxxxxxxxxxxxxxxxxxxxxxx

モックマーチャント情報を取得:

curl https://api.pay.jp/v1/platform/merchants/acct_dummyxxxxxxxxxxxxxxxxxxxxxx \
-u sk_live_pf:

モックマーチャントに対してPOST リクエストを行うことはできません。

基本情報/追加情報登録におけるdryrun

マーチャントの基本情報・追加情報の登録では、本番申請と審査依頼が伴います。

またこれらのリクエストを行うには、プラットフォーマーの本番利用審査を通過する必要があります。

プラットフォーマーの本番利用審査の通過を待たずして、かつマーチャントの本番申請と審査依頼を実施せず、登録リクエストのバリデーションと動作確認のみを行う方法として dryrun フラグがあります。

dryrun フラグを true にすると、リクエストのバリデーションのみを行い、実際のマーチャント情報は登録せずに、レスポンスを返します。

マーチャントの基本情報を登録(dryrun=true):

curl https://api.pay.jp/v1/platform/merchants/acct_3fcd0fc1f931d4cc63b0e26c872/applications/basic \
-F "product_name=商品名"  \
-F "product_reading_name=プロダクト"  \
-F "product_english_name=product"  \
-F "url=http://example.com"  \
-F "service_start_at=2017-02"  \
-F "product_detail=グッズ販売"  \
-F "product_detail_document=@product_detail.png" \
-F "product_price_min=100"  \
-F "product_price_max=1000"  \
-F "business_type=company"  \
-F "business_name=PAYJP"  \
-F "business_reading_name=ペイジェーピー"  \
-F "date_of_establishment=2016-01-01"  \
-F "business_capital=1" \
-F "president_lastname=山田"  \
-F "president_firstname=太郎"  \
-F "president_reading_lastname=ヤマダ"  \
-F "president_reading_firstname=タロウ"  \
-F "president_birth_at=1980-02-10"  \
-F "president_gender=men"  \
-F "address_zip=150-0043"  \
-F "address_state=東京都"  \
-F "address_city=渋谷区"  \
-F "address_line1=道玄坂2-11-1"  \
-F "address_line2=Gスクエア4F"  \
-F "address_reading_state=トウキョウト"  \
-F "address_reading_city=シブヤク"  \
-F "address_reading_line1=ドウゲンザカニチョウメ11−1"  \
-F "address_reading_line2=ジースクエア4カイ"  \
-F "phone=03-6416-5450"  \
-F "cell_phone=080-1111-2222"  \
-F "has_scl_url=false"  \
-F "scl_business_name=PAY"  \
-F "scl_contact_person_name=山田太郎"  \
-F "scl_address=東京都渋谷区道玄坂2-11-1Gスクエア4F" \
-F "scl_email=example@pay.jp"  \
-F "scl_phone=0312341234"  \
-F "scl_payment_method=クレジットカード"  \
-F "scl_time_of_payment=商品購入時に決済"  \
-F "scl_time_of_delivery=購入手続き完了後2営業日以内"  \
-F "scl_other_fee=なし" \
-F "scl_return_and_exchange=購入後7日以内であれば全額返金" \
-F "bank_person_name=ヤマダ タロウ"  \
-F "bank_code=0001"  \
-F "bank_branch_code=001"  \
-F "bank_type=普通"  \
-F "bank_account_number=0001000"  \
-F "corporate_number=1234123412341" \
-F "dryrun=true" \
-u sk_live_pf_xxx:

マーチャント追加情報の登録(dryrun=true):

curl https://api.pay.jp/v1/platform/merchants/acct_3fcd0fc1f931d4cc63b0e26c872/applications/additional \
-F "product_type=goods"  \
-F "charge_type=charge"  \
-F "site_published=true"  \
-F "contact_person_lastname=山田"  \
-F "contact_person_firstname=太郎" \
-F "contact_phone=0312341234"  \
-F "business_sales_lastyear=1"  \
-F "business_detail=グッズ販売事業"  \
-F "has_shop=true"  \
-F "shop_phone=0300000000"  \
-F "shop_address_zip=150-0043"  \
-F "shop_address_state=東京"  \
-F "shop_address_reading_state=トウキョウ"  \
-F "shop_address_city=渋谷区"  \
-F "shop_address_reading_city=シブヤク"  \
-F "shop_address_line1=道玄坂2-11-1"  \
-F "shop_address_reading_line1=ドウゲンザカニチョウメ11−1"  \
-F "shop_address_line2=Gスクエア4F"  \
-F "shop_address_reading_line2=ジースクエア4カイ"  \
-F "privacy_policy_url=https://pay.co.jp/privacy/"  \
-F "ssl_enabled=true"  \
-F "has_other_fee=true"  \
-F "delivery_fee=500"  \
-F "delivery_detail=配送の料金"  \
-F "other_fee=200"  \
-F "other_fee_detail=振込手数料など"  \
-F "dryrun=true" \
-u sk_live_pf_xxx:

本番申請周りのAPI動作確認にご活用ください。

以上でマーチャントの登録・管理のプロセスを説明しました。最後に実際の決済処理と入金の振り分けの実装と仕組みを確認しましょう。