magazine off

Stripeでchargesの後にtransfersする方法 | Node.js

投稿日 : 2020年7月12日(日曜日)

やりたいこと(重要)

・プラットフォームのサービスを作っている
・購入者が決済 => プラットフォームへお金が振り込まれる
・最終的に、出品者(子アカウント)へお金を送金したい

方法

これで、フロントで決済したクレカが、プラットフォームへチャージ(決済)されます

      stripe.charges.create(
        {
          amount: 1000,
          currency: 'jpy',
          source: "tok_bypassPending", //チャージ後即座に送金可能にする。本当ならカードのtok情報
          description: '支払い',
          transfer_group: "ORDER1", //最終的にこの値を使って出品者(子アカウント)へお金を送金する
        },
        function(err, charge) {
          console.log("エラー");
          console.log(err);

          console.log("チャージ");
          console.log(charge);
        }
      );

で、これでチャージすると、本番環境の場合、四日後に送金可能になります。

それで、プラットフォーム内でサービスが完結し、出品者(子アカウント)へお金を送金したい場合は、

こうします↓

      stripe.transfers.create(
        {
          amount: 100, //今回は送金可能金額1000円から100円だけ送金する
          currency: 'jpy',
          destination: "ここに子アカウントのid",
          transfer_group: 'ORDER1', //ここの値を使って出金可能金額から送金する
        },
        function(err, transfer) {
          console.log("transfer");
          console.log(transfer);

          console.log("err");
          console.log(err);
        }
      );

これでOkです。

実際にプラットフォームからお金が引かれてることを確認する

 

curl https://api.stripe.com/v1/balance \
  -u sk_test_OOOOOOOOOOOO:

これをターミナルとかに打ち込んでください。

すると、こんな感じで情報が出ます。

% curl https://api.stripe.com/v1/balance \
  -u sk_test_OOOOOOOOOOOO:
{
  "object": "balance",
  "available": [
    {
      "amount":900,
      "currency": "jpy",
      "source_types": {
        "card": 900
      }
    }
  ],
  "connect_reserved": [
    {
      "amount": 0,
      "currency": "jpy"
    }
  ],
  "livemode": false,
  "pending": [
    {
      "amount": 0,
      "currency": "jpy",
      "source_types": {
        "card": 0
      }
    }
  ]
}

クレカでチャージして決済した時、プラットフォームにお金が振り込まれますが、それで、四日後にここが反映されます。→"available": [

それで、transfersしてtransfer_group指定した金額がavailableだった場合、お金を子アカウントに送金できます。

以上。

Categories

Recent Posts

プログラマーとしての「相談」を考える

  優秀なソフトウェア技術者ではないセッシャは、よく実装で詰まる。その度に悶…

投稿日 : 2017年9月19日(火曜日)

【自動化】Google Apps Scriptを学べるUdemy動画講座おすすめ6選【入門者向け】

  こんにちわ!   現役エンジニアとして毎日コードをガシガシ書い…

投稿日 : 2021年2月28日(日曜日)

Goのmgoでremoveする方法 – MongoDB

  colQuerier := bson.M{"_id…

投稿日 : 2019年10月28日(月曜日)

How to check local ip from terminal with mac

   There are several ways. M…

投稿日 : 2018年7月18日(水曜日)