Readouble検索

表示限度を超える30件以上の検索結果が見つかりました。絞り込んでください。

空白やカンマで区切った単語はAND条件で検索されます。検索の対象から外したい単語には、先頭にハイフン(-)を付けてください。

5.8や6.xのように、バージョンを指定してください。


Seq: 1

LARAVEL 7.x Laravel Cashier 課金失敗の処理(H2)

サブスクリプションへの支払い、もしくは一回のみの課金は失敗することがあります。これが発生したことを知らせるため、CashierはIncompletePayment例外を投げます。この例外を補足した後の処理方法は、2つの選択肢があります。

最初の方法は、その顧客をCashierに含まれている支払い確認専門ページへリダイレクトする方法です。このページに紐つけたルートは、Cashierのサービスプロバイダで登録済みです。IncompletePayment例外を捉えたら、支払い確認ページへリダイレクトします。

use Laravel\Cashier\Exceptions\IncompletePayment;

try {
    $subscription = $user->newSubscription('default', $planId)
                            ->create($paymentMethod);
} catch (IncompletePayment $exception) {
    return redirect()->route(
        'cashier.payment',
        [$exception->payment->id, 'redirect' => route('home')]
    );
}

支払い確認ページで顧客はクレジットカード情報の入力を再度促され、「3Dセキュア」のような追加のアクションがStripeにより実行されます。支払いが確認されたら、上記のようにredirect引数で指定されたURLへユーザーはリダイレクトされます。支払いを確認したら、そのユーザーは上記のようにredirectパラメータで指定されたURLへリダイレクトされます。リダイレクトにはURLへmessage(文字列)とsuccess(整数)クエリ文字列値が追加されます。

別の方法として、Stripeに支払いの処理を任せることもできます。この場合、支払い確認ページへリダイレクトする代わりに、StripeダッシュボードでStripeの自動支払いメールを瀬一定する必要があります。しかしながら、IncompletePayment例外を捉えたら、支払い確認方法の詳細がメールで送られることをユーザーへ知らせる必要があります。

不完全な支払いの例外は、Billableのユーザーに対するchargeinvoiceForinvoiceメソッドで投げられる可能性があります。スクリプションが処理される時、SubscriptionBuildercreateメソッドと、SubscriptionモデルのincrementAndInvoiceswapAndInvoiceメソッドは、例外を発生させる可能性があります。

IncompletePaymentを拡張している支払い例外は現在2タイプ存在します。必要に応じユーザーエクスペリエンスをカスタマイズするために、これらを別々に補足できます。

  • PaymentActionRequired: これはStripeが支払いの確認と処理のために、追加の確認を要求していることを示します。
  • PaymentFailure: これは利用可能な資金が無いなど、様々な理由で支払いが失敗したことを示します。

Seq: 13

LARAVEL 8.x Laravel Cashier (Stripe) 支払い失敗の処理(H2)

サブスクリプションまたは1回限りの支払いが失敗する場合もあります。これが起きると、Cashierはこの発生を通知するLaravel\Cashier\Exceptions\IncompletePayment例外を投げます。この例外をキャッチした後に続行する方法は、2つの選択肢があります。

1つ目はCashierが用意している専用の支払い確認ページに顧客をリダイレクトすることです。このページは、Cashierのサービスプロバイダを介して登録済みの名前付きルートがすでに割り振られています。したがって、IncompletePayment例外をキャッチして、ユーザーを支払い確認ページにリダイレクトできます。

use Laravel\Cashier\Exceptions\IncompletePayment;

try {
    $subscription = $user->newSubscription('default', 'price_monthly')
                            ->create($paymentMethod);
} catch (IncompletePayment $exception) {
    return redirect()->route(
        'cashier.payment',
        [$exception->payment->id, 'redirect' => route('home')]
    );
}

支払い確認ページで、顧客はクレジットカード情報を再度入力し、「3Dセキュア」確認などのStripeに必要な追加のアクションを実行するように求められます。支払いを確認すると、ユーザーは上記のredirectパラメータで指定したURLへリダイレクトされます。リダイレクト時に、message(文字列)およびsuccess(整数)クエリ文字列変数をURLへ追加します。支払い確認ページでは現在、以下の決済方法に対応しています。

  • Credit Cards
  • Alipay
  • Bancontact
  • BECS Direct Debit
  • EPS
  • Giropay
  • iDEAL
  • SEPA Direct Debit

もう一つの方法として、Stripeに支払い確認の処理を任せることもできます。この場合、支払い確認ページにリダイレクトする代わりに、StripeダッシュボードでStripeの自動請求メールを設定してください。ただし、IncompletePayment例外がキャッチされた場合でも、支払い確認の手順を記載したメールがユーザーへ届くよう、通知する必要があります。

Billableトレイトを使用するモデルのchargeinvoiceForinvoiceメソッドでは、支払いの例外が投げられる場合があります。サブスクリプションを操作する場合では、SubscriptionBuildercreateメソッド、およびSubscriptionSubscriptionItemモデルのincrementAndInvoiceメソッドとswapAndInvoiceメソッドは、不完全な支払い例外を投げる可能性があります。

既存のサブスクリプションの支払いが不完全であるかどうかの判断は、BillableモデルまたはサブスクリプションインスタンスでhasIncompletePaymentメソッドを使用して行えます。

if ($user->hasIncompletePayment('default')) {
    //
}

if ($user->subscription('default')->hasIncompletePayment()) {
    //
}

例外インスタンスのpaymentプロパティを調べると、不完全な支払いの具体的なステータスを調べられます。

use Laravel\Cashier\Exceptions\IncompletePayment;

try {
    $user->charge(1000, 'pm_card_threeDSecure2Required');
} catch (IncompletePayment $exception) {
    // 支払いインテント状態の取得
    $exception->payment->status;

    // 特定の条件の確認
    if ($exception->payment->requiresPaymentMethod()) {
        // ...
    } elseif ($exception->payment->requiresConfirmation()) {
        // ...
    }
}

Seq: 17

LARAVEL 9.x Laravel Cashier (Stripe) 支払い失敗の処理(H2)

サブスクリプションまたは1回限りの支払いが失敗する場合もあります。これが起きると、Cashierはこの発生を通知するLaravel\Cashier\Exceptions\IncompletePayment例外を投げます。この例外をキャッチした後に続行する方法は、2つの選択肢があります。

1つ目はCashierが用意している専用の支払い確認ページに顧客をリダイレクトすることです。このページは、Cashierのサービスプロバイダを介して登録済みの名前付きルートがすでに割り振られています。したがって、IncompletePayment例外をキャッチして、ユーザーを支払い確認ページにリダイレクトできます。

use Laravel\Cashier\Exceptions\IncompletePayment;

try {
    $subscription = $user->newSubscription('default', 'price_monthly')
                            ->create($paymentMethod);
} catch (IncompletePayment $exception) {
    return redirect()->route(
        'cashier.payment',
        [$exception->payment->id, 'redirect' => route('home')]
    );
}

支払い確認ページで、顧客はクレジットカード情報を再度入力し、「3Dセキュア」確認などのStripeに必要な追加のアクションを実行するように求められます。支払いを確認すると、ユーザーは上記のredirectパラメータで指定したURLへリダイレクトされます。リダイレクト時に、message(文字列)およびsuccess(整数)クエリ文字列変数をURLへ追加します。支払い確認ページでは現在、以下の決済方法に対応しています。

  • クレジットカード
  • Alipay
  • Bancontact
  • BECS Direct Debit
  • EPS
  • Giropay
  • iDEAL
  • SEPA Direct Debit

もう一つの方法として、Stripeに支払い確認の処理を任せることもできます。この場合、支払い確認ページにリダイレクトする代わりに、StripeダッシュボードでStripeの自動請求メールを設定してください。ただし、IncompletePayment例外がキャッチされた場合でも、支払い確認の手順を記載したメールがユーザーへ届くよう、通知する必要があります。

Billableトレイトを使用するモデルのchargeinvoiceForinvoiceメソッドでは、支払いの例外が投げられる場合があります。サブスクリプションを操作する場合では、SubscriptionBuildercreateメソッド、およびSubscriptionSubscriptionItemモデルのincrementAndInvoiceメソッドとswapAndInvoiceメソッドは、不完全な支払い例外を投げる可能性があります。

既存のサブスクリプションの支払いが不完全であるかどうかの判断は、BillableモデルまたはサブスクリプションインスタンスでhasIncompletePaymentメソッドを使用して行えます。

if ($user->hasIncompletePayment('default')) {
    //
}

if ($user->subscription('default')->hasIncompletePayment()) {
    //
}

例外インスタンスのpaymentプロパティを調べると、不完全な支払いの具体的なステータスを調べられます。

use Laravel\Cashier\Exceptions\IncompletePayment;

try {
    $user->charge(1000, 'pm_card_threeDSecure2Required');
} catch (IncompletePayment $exception) {
    // 支払いインテント状態の取得
    $exception->payment->status;

    // 特定の条件の確認
    if ($exception->payment->requiresPaymentMethod()) {
        // ...
    } elseif ($exception->payment->requiresConfirmation()) {
        // ...
    }
}


検索結果1行目のタイトル行は、オープンソース名、章(ページ)、ヘッダータイトル、最後のカッコの中はヘッダーレベル(H2、H3、H4)です。Mockeryは章(ページ)を検索チャンクとしてるため、ヘッダータイトルはありません。

キーボード・ショートカット

移動

T

ページ先頭へ移動

E

最後の検索結果へ移動

NJ

次の検索結果へ移動

BK

前の検索結果へ移動

その他

?

このヘルプページ表示
閉じる