オンライン決済に既定サービス以外を指定してカスタマイズする
SuperSaaSのオンライン決済処理は、既定のサービスを介する設定以外に、独自開発や拡張利用が可能となるカスタマイズができます。
決済処理を簡単に外部処理へと組み込める
チェックアウト(支払い請求)時に任意の指定URLに決済処理用の情報をPOSTできますので、独自決済システムや既定以外の決済サービスへ処理を送ることが可能です。
その処理結果をSuperSaaSの決済処理用API「ipn」を用いてSuperSaaSに反映する仕組みです。
仕組みとしてはシンプルですので、組み込みは簡単です。
ただし、セキュリティや処理の厳格性などには十分な設計と保守体制に留意しましょう。
決済用情報のPOST方法
あわせて記述内容がめちゃくちゃだったので修正…m(__)mスイマセン
決済(チェックアウト)時に決済用の情報をPOSTする方法は、既定の決済サービスの設定と同じく、管理メニューにある支払い設定にあるGatewayの設定で、Custom gatewaにチェックを入れると入力項目が表示されますので必要な情報を設定します。
項目 | 概要 |
---|---|
Live URL | 決済処理を行うPOST先URLを指定します。 |
Test URL | テスト用の決済処理を行うPOST先URLを指定できます。 |
Button text | 決済用のトリガーボタンに表示する文字列を指定できます。 |
設定するとカスタム決済用のボタンが決済画面に追加されますので、そのボタンをクリックされた場合は指定URLに決済用の情報がPOSTされて処理を引き継ぐことになります。
テストモード時用のURLも指定できるのが便利ですね!
決済処理用の情報としてPOSTされる情報
論理名 | 概要 |
---|---|
description | 対象予約の日時情報や、商品の説明など処理対象の識別用情報です。 |
transaction_id | 決済処理の管理IDです。 |
amount | 決済金額(数値)です。 |
currency_code | 決済用の通貨コード(3文字フォーマット)です。 (例:USD、EUR、JPY) |
transaction_checksum | 決済用のセキュリティーコードです。 APIを用いた決済処理確定時のチェックサムに用います。 |
success_url | 決済完了した案内が表示される画面のURLです。 これは案内表示用のURLでしかなく、決済処理が行われるわけではありません。 |
cancel_url | 決済がキャンセルされた案内が表示される画面のURLです。 これは案内表示用のURLでしかなく、決済のキャンセル処理が行われるわけではありません。 |
user_id | 決済するユーザーのユーザーIDです。 |
user_name | 決済するユーザーのユーザー名です。 |
user_email | 決済するユーザーのメールアドレスです。 |
quantity | 複数の予約の場合や繰り返し予約などで予約数が複数の場合などの予約数の合計(総予約数)です |
credit_consumed | 決済に含まれなかった、利用されたポイント数です。 ポイントを使用された場合、決済金額は価格から使用されたポイントを引いた額となるための付与情報と思われます。 たまたま今だけかもしれませんが、確認すると不明な値が格納されていました。 外貨とかでよくある小数点以下二桁込みとかで「.」が抜けてるだけとかかも? ちょっと不明なパラメータです… |
たとえばログインを必要としていない場合のユーザー名など、設定や状況で存在しない情報はPOSTされません。
POST先で決済処理を行い、その結果をAPIを用いてSuperSaaSに反映する流れになります。
決済処理結果をSuperSaaSに返すAPI
決済処理結果はSuperSaaSのAPI「ipn」を用いてSuperSaaSに反映します。
https://www.supersaas.com/api/ipnに対して規定の処理結果をPOSTする仕組みです。
処理結果に必要なPOSTフィールド
論理名 | 概要 |
---|---|
status | 支払い処理結果です。返り値は以下から指定します。 完了の場合 completed キャンセルの場合 canceled 払い戻しの場合 refunded |
transaction_id | 決済処理でPOSTされた時に発行された管理IDを指定します。 |
amount | 決済金額(数値)です。 |
currency_code | 決済用の通貨コード(3文字フォーマット)です。 (例:USD、EUR、JPY) |
transaction_checksum | 決済処理でPOSTされた時に発行されたセキュリティーコードを指定します。 |
api_key | APIを利用するためのキーコードです。 (ベーシック認証で処理を行う場合はAPIキーを指定しなくても良いようです。) |
user_id | 決済情報にユーザーIDが含まれている場合は、指定する必要があります。 |
POSTで受け取った情報にstatusとapi_keyを足して返す感じです。
とっても簡単♪
- Advance
- iframeで埋め込み活用
- 独自ドメインで活用
- SSLでの利用
- ホワイトラベル活用
- オンライン決済サービスの活用
- Paypalの設定
- Stripeの設定
- Squareの設定
- Mollieの設定
- ePayの設定
- PayUの設定
- Paystackの設定
- Mercado Pagoの設定
- その他の決済サービスを利用
- 他サービスとの連携
- 連携サービスの活用
- Make(旧Integromat)
- Zapier
- Pipedream
- Integrately
- ZoomやGoogle Meetとの連携
- SuperSaaSのWebhook
- SuperSaaSのAPI
- APIの基本
- アポイントAPI
- ユーザーAPI
- フォームAPI
- インフォメーションAPI
- プロモーションAPI
- APIの活用例