概要
PlayMiningの経済圏はDEPが基軸通貨となっており、すべての商品の価格がDEPで表示され、その決済も基本的にはDEPで行われます。
しかし、特に新規ユーザーの方にとって、十分な量のDEPを事前に準備して、この経済圏内のコンテンツを楽しむことは、中々に敷居の高い行動と言えるでしょう。
そこでPMP収納代行サービス(以下、本サービスと呼称)では、コンテンツ内におけるゲームアイテムの購入など(以下、コンテンツ内購入と呼称)を行うユーザーに対し、DEPだけでなくUSDでの支払い手段を提供します。
コンテンツ内購入でユーザーに決済を求める場合は、必ず本サービスを通じて支払いが行われるよう実装してください。
まずは法定通貨などで手軽にコンテンツ内購入を行ったユーザーが、コンテンツを楽しんでいく中で自然とDEPを獲得し、PlayMining経済圏での活動にも馴染んでいく、というようなカスタマージャーニーを期待しています。
サービス利用の流れ
本サービスはPMPの基本機能に当たるので、特に利用申請などは必要ありません。
以下の3つの繋ぎ込み開発をしていただければ、すぐにユーザーへ提供できます。
- 決済ページ生成
- 決済ページの表示
- 決済結果の監視と後続処理
実装に関する詳細はこちらをご確認ください。
提供API
決済開始API
PMP収納代行サービスの決済ページを生成するためにリクエストするAPIです。
決済ページの操作権限はリクエスト時に指定したユーザーのみに与えられるため、アカウントが漏洩しない限り、ユーザーは安全に決済を実行できます。
なお、レスポンスの受け取り時に通信途絶などでエラーとなってしまった場合は、再度リクエストして決済ページを生成し直していただいて構いません。
決済ページには有効期限があり、またページURLについても推測は現実的に不可能であるため、エラー時に生成された決済ページがユーザーに決済されてしまう可能性はゼロと考えて差し支えないです。
共通部以外の各パラメータの意味合いは以下の表を参照してください。(レスポンス側は本体がdataオブジェクトになるので、その中身について記載しています。)
リクエスト
パラメータ名 | 内容 |
uid | 決済しようとしているユーザーのPMIDです。 |
target_id | 運営側が管理ツールから閲覧する決済履歴に記載される文字列データです。
ユーザーから見られることはないので、指定する内容は自由に決めていただいて構いません。
ただし、履歴を商品ごとに仕分けするような際は、この値を用いることになる点はご留意願います。
購入される商品毎にユニークな文字列(いわゆる商品ID)が指定されることを強く推奨します。 |
target_name | 決済ページに表示される商品名です。
指定の文字列がそのまま画面に表示されるため、コンテンツ内で表示している商品名をそのまま指定してください。 |
unit_price | 購入される商品の単価です。PlayMining経済圏の基軸通貨はDEPなので、DEPでの金額を指定してください。 |
quantity | 購入数量です。unit_price × quantity の値がユーザーに請求するDEP額となります。 |
expired_datetime | 決済有効期限です。ミリ秒を含まないUNIXTIMEで決済ページの有効期限を指定できます。
オプションパラメータで、指定がない場合はリクエストの1時間後が設定されます。 |
return_destination | リダイレクト先URLを指定するオプションパラメータです。
この値が指定されていた場合、決済が完了するかキャンセルされた場合に、当該URLへ自動で遷移します。 |
disabled_currency | 受け付けたくない支払い方法を数値指定するオプションパラメータです。
この値が指定されていた場合、その数値を2進展開したときに1となっている桁に従って、一部の支払い方法が非アクティブになります。
支払い方法と桁の対応関係は以下のとおりです。
1桁目: DEP払い
2桁目: クレジットカード払い |
レスポンス
パラメータ名 | 内容 |
receipt_id | 決済ページの生成毎に発行されるIDです。
決済ページのステータス=ユーザーの決済結果を取得したり、決済ページを失効するために用います。 |
redirect_url | 生成された決済ページのURLです。 |
expired_at | 生成された決済ページの有効期限(ミリ秒を含まないUNIXタイム)です。
この時間を超過した場合、ユーザーは生成された決済ページで決済を実行できなくなります。 |
決済確認API
PlayMining Platform収納代行サービスを利用したユーザーの決済結果を取得するためのAPIです。
このAPIを通じて、ユーザーが決済を完了しているか否かを監視してください。
共通部以外の各パラメータの意味合いは以下の表を参照してください。(レスポンス側は本体がdataオブジェクトになるので、その中身について記載しています。)
リクエスト
パラメータ名 | 内容 |
receipt_id | 結果を取得したい決済ページのIDです。
レシート発行APIのレスポンスに含まれる receipt_id の値をそのまま指定してください。 |
レスポンス
パラメータ名 | 内容 |
receipt_id | 決済ページのIDです。リクエスト時に指定したものと同じ値になっていることが期待されます。
もし、それ以外の値になっていた場合は障害の可能性が高いため、個別にお問い合わせいただけると幸いです。 |
status | 決済ページのステータスです。これを用いて、ユーザーの決済結果を監視することになります。
詳細は次項以降の記載内容を確認してください。 |
決済キャンセルAPI
決済開始APIで生成した決済ページを失効させるためのAPIです。
リクエストが正常に解決されると決済ページのステータスがキャンセル状態になり、それ以後ユーザーは決済ページから決済を実行できなくなります。
なお、有効期限切れのページについてキャンセルをリクエストした場合は、有効期限切れエラーが返ります。
共通部以外の各パラメータの意味合いは以下の表を参照してください。(レスポンス側は本体がdataオブジェクトになるので、その中身について記載しています。)
リクエスト
パラメータ名 | 内容 |
receipt_id | 失効させたい決済ページのIDです。
レシート発行APIのレスポンスに含まれる receipt_id の値をそのまま指定してください。 |
レスポンス
パラメータ名 | 内容 |
receipt_id | 決済ページのIDです。リクエスト時に指定したものと同じ値になっていることが期待されます。
もし、それ以外の値になっていた場合は障害の可能性が高いため、個別にお問い合わせいただけると幸いです。 |
status | 決済ページのステータスです。CANCELEDになっていることが期待されます。
もし、それ以外の値になっていた場合は障害の可能性が高いため、個別にお問い合わせいただけると幸いです。 |