カスタム決済フローで税金を計算する公開プレビュー
Stripe Tax および Payment Intents API を使用して税金を組み込む方法をご紹介します。
Stripe Tax API を使用することで、カスタム決済フローで税金を計算できます。Payment Intents API を使用している場合、Stripe は支払いのライフサイクルで税取引を送信できます。
Payment Intents API で税額計算を使用するには、ベータ SDK バージョンが必要です。この機能を使用する前に SDK を更新してください。
税金の計算を PaymentIntent にリンクする
PaymentIntent を作成または変更する際に、Tax の Calculation
ID を含め、amount
を Tax Calculation オブジェクトの amount_
に設定します。
サポート対象のエンドポイント
次のエンドポイントは、 PaymentIntent での計算の設定をサポートしています。
- 作成: /v1/payment_intents
- 更新: /v1/payment_intents/:id
- 確定: /v1/payment_intents/:id/confirm
- キャプチャー: /v1/payment_intents/:id/capture
制限事項
- 新しい計算を PaymentIntent にリンクできるのは、
succeeded
状態に移行するまでに限られます。 - 税金の計算は 1 つの税金
Transaction
にのみ移行します。複数の PaymentIntent が同じ計算でsucceeded
ステータスに移行する場合、会計処理には最初の PaymentIntent のみが反映されます。
結果の Stripe アクション
PaymentIntent が Tax の Calculation
オブジェクトに正しくリンクされている場合、 Stripe は以下を自動的に行います。
- PaymentIntent が
succeeded
状態に移行した後に、計算から税取引を作成する - PaymentIntent の返金 (APIまたはダッシュボードで作成) に対して、税取引の税金の差戻しを実行します
- 返金が失敗した場合、差戻しのための税金差戻しを作成します
PaymentIntent
領収書に税務情報をすべて含める
Stripe は以下を行いません。
- リンクされた税金の計算に基づいて PaymentIntent の金額を変更する
- キャプチャーされた PaymentIntent の金額に基づいて税取引の金額を変更する
- 不審請求の申請に対する税金差戻しを自動作成する
Connect プラットフォームの税金を Stripe Tax API と Payment Intents API に統合する
Payment Intents API は、Connect プラットフォーム上の連結アカウントで機能します。つまり、連結アカウントを使用して税金を計算する場合、その連結アカウントを使用して作成された Payment Intent に税金計算を関連付けることができます。
オプション自動確定された税取引を取得する
/v1/tax/associations/find エンドポイントを使用して、Stripe が PaymentIntent 用に作成した (または作成に失敗した) 税取引に関する情報を取得します。これにより、システムが意図したとおりに機能することを確認し、カードの不審請求の申し立てを処理し、自動的に作成されたものを確認できます。
PaymentIntent が成功し、その後返金された場合、以下の応答を受信することがあります。
注意
税金の差戻しは、数分後にのみ Tax Association オブジェクトに記録され表示されます。
// TaxAssociation find response { "id": "taxa_1PXmsbE5ebw4kUHWxtSTF08x", "object": "tax.association", "calculation": "taxcalc_1PXmsRE5ebw4kUHW9SOln70o", "payment_intent": "pi_1PXmsSE5ebw4kUHWK7FIhQlS", "tax_transaction_attempts": [ { "source": "pi_1PXmsSE5ebw4kUHWK7FIhQlS", "status": "committed", "committed": { "transaction": "tax_1PXmsRE5ebw4kUHWLyVEiMis", } }, { "source": "re_1PXmsSE5ebw4kUHWK7FIhQlS", "status": "committed", "committed": { "transaction": "tax_1PXmsgE5ebw4kUHW7Gg8jvpX", } } ] }