実装
セキュリティ
セキュリティを確保するため、エクソーラは以下を使用します:
お知らせ
APIキーはエクソーラによって生成され、プロバイダーごとに固有です。
ヘッダー
エクソーラからの受信リクエストには、以下のヘッダーが含まれます:
| ヘッダー | 説明 | 必須 |
|---|---|---|
Request-Id | 一意なリクエストID。 | はい。 |
Content-Digest | リクエストボディのチェックサム値。 | あり(リクエスト本文が存在する場合)。 |
Signature-Input | 署名を生成するために使用されるパラメータ。 | はい。 |
Signature | リクエスト署名。 | はい。 |
Prefer | 追加データ。例:environment=“sandbox”。 | なし。 |
お知らせ
エクソーラに送信するウェブフックにも、同じヘッダーを含める必要があります。
受信リクエストの検証
エクソーラからリクエストを受信した場合:
Signature-Inputヘッダーから、keyidの値に対応する秘密鍵を抽出します。created/expiresのタイムウィンドウを検証します。- リクエスト本文を取得します。
Signature-Inputに従って署名文字列を再構築し、HMAC-SHA256を使用して署名を検証します。
Copy
- http
1sig1=("@method" "@target-uri" "content-digest" "request-id");alg="hmac-sha256";created=1700000000;expires=1700000600;keyid="acc_123"
Request-Idを使用して、ログ内から該当リクエストを検索します。
必須機能
統合を正常に行うためには、少なくとも以下の API メソッドを実装する必要があります:
| メソッド | パス | 説明 |
|---|---|---|
| POST | /v1/payments | 支払いを作成します。actionオブジェクトを返します。 |
| PATCH | /v1/payments/{transaction_id} | action.type=confirmが返された場合、支払いを確認します。 |
| GET | /v1/payments/{transaction_id} | 現在の支払いステータスを取得します。 |
payment.succeeded— 支払い成功payment.failed— 支払い失敗payment.refunded— 返金
お知らせ
APIメソッドおよびウェブフックの説明については、仕様書を参照してください。
この記事は役に立ちましたか?
ご意見ありがとうございました!
あなたのメッセージを確認し、体験を向上させるために利用させていただきます。誤字脱字などのテキストエラーを見つけましたか? テキストを選択し、Ctrl+Enterを押します。