Stripeで定期支払いの決済に失敗した時だけ手動で請求メールを飛ばす

WPのプラグインとかでStripeのSubscribeフォームを作っていると、カード情報を更新するフォームが用意されてなくて軽く詰む時があります。 今まではそのためのフォームをなんとか作るしかなかった(はず)なのですが、 […]

広告ここから
広告ここまで

目次

    WPのプラグインとかでStripeのSubscribeフォームを作っていると、カード情報を更新するフォームが用意されてなくて軽く詰む時があります。

    今まではそのためのフォームをなんとか作るしかなかった(はず)なのですが、最近Stripe Billingがアップデートされてよしなにできるようになりました。

    Failしたカスタマーをひらく

    まずはStripeダッシュボードから決済が失敗している顧客をみましょう。

    失敗したログがトップに記録されています。4回目までは自動でリトライがありますが、4回目が失敗すると決済失敗扱いになりますので要注意です。

    Failした請求(インボイス)をひらく

    カスタマーのページをスクロールすると、[インボイス]という項目があります。ここに失敗した請求が残っていますので、これを開きましょう。

    決済URLを取得する

    請求詳細ページに移動すると、[詳細]の中に[支払いページ]という項目があります。

    このURLをクリックすると、失敗している請求を決済するためのフォームが現れます。

    いい感じの決済フォームがあらわれましたね。

    念のため支払い期日や請求内容に間違いがないか確認した後、このURLを顧客に案内すればOKです。

    これならカード更新フォームを準備していなくても、再決済時に困らずにすみます。

    余談:APIからもとれます

    この支払いページURLですが、APIからも取得出来る様子です。

    $ curl https://api.stripe.com/v1/invoices/in_XXXXXXXXX    -u sk_test_XXXXXXXXXXXx: | jq .hosted_invoice_url -r
    
    https://pay.stripe.com/invoice/invst_XXXXXXXXXX

    webhookでよしなにしたい場合や、webアプリでカード更新フォーム作りたくない時に使えるかもしれません。

    広告ここから
    広告ここまで
    Home
    Search
    Bookmark