Merchant APIとは
Merchant APIは、事業者とボットのための決済APIです。 アプリを作成してAPIトークンを受け取ると、自分のコードからTelegramユーザーへの請求、送金、残高の確認ができます。
ユーザーが見ている機能の開発者側の顔でもあります。APIで作成した請求書は、ユーザーがワンタップで残高から支払う請求書と同じものです。
できること
- 請求書:金額を決めて作成し、そのリンクを支払者に送ります。 暗号資産の固定額でも、法定通貨建てでも、支払者が金額を決める形でも作れます。 支払われた瞬間に、署名付きのコールバックが届きます。
- 返金:支払い済みの請求書の金額を、全額または一部、支払った相手に返します。 匿名で支払った相手にも返せます。
- 送金:アプリの残高からTelegramユーザーへ暗号資産を送ります。1件ずつでも、1回で最大100件の一括でも送れます。
- 送金リンク:誰でも受け取れるリンクを、アプリの残高から発行します。
- サブスクリプション:継続課金です。 ユーザーが一度プランを承認すると、期間ごとに自動で課金されます。
- 残高・通貨・交換レート・統計:自分の帳簿づけに使う、読み取り専用のエンドポイントです。
全体のしくみ
- アプリは、個人のウォレットとは別に残高を持ちます。
- ユーザーが支払った請求書は、そのアプリの残高に入ります。
- 送金と送金リンクは、そこから支払われます。
- 大事なイベントはすべて、署名付きのWebhookとして自分のサーバーに届けられます。
支払いはオンチェーンではなく、アプリの中で完結します。 ネットワーク手数料はかからず、承認を待つ必要もありません。 届いた資金はその場ですぐ使えます。 支払者が外部のウォレットから請求書に入金することもできます。 その入金は支払者自身のウォレットに届き、そこから自動で請求書が支払われます。 加盟店側からは、ほかの支払い済みの請求書とまったく同じに見えます。
Crypto Botとの互換性
このAPIは、意図的にCrypto Botと同じ形にしてあります。
メソッド名も、{ok, result}のレスポンス形式も、10進数の文字列で表す金額も、Webhookの署名方式も同じです。
既存のCrypto Bot向けの実装は、ベースURLとトークンを変えるだけでこちらに向けられます。
リクエストとレスポンスの形は変わりません。
正式なトークンヘッダーはTgPayCrypto-API-Tokenです。
Crypto-Pay-API-Tokenも別名として受け付けるので、既存のクライアントライブラリはそのまま動きます。
⚠️ APIトークンは資金を動かせる鍵
このトークンを持っている人は、アプリの残高を外へ送金できます。 サーバー側に置き、クライアントアプリやリポジトリには入れないでください。 漏れた疑いがあれば、その場で再発行してください。 すべての権限が必要ないサーバーには、実際に使うスコープだけに絞った制限付きトークンを発行してください。APIリファレンスで説明しています。
次に
この記事は役に立ちましたか?
ご意見ありがとうございます。