オンラインカード決済に対して、保留期間を延長する
オーソリの延長を使用して、オーソリ後、最長 30 日後にオンラインのカード支払いをキャプチャする方法をご紹介します。
延長されたオーソリではオーソリの有効期間が長くなるため、標準のオーソリ有効期間よりも長く顧客の資金を保持できます。ほとんどのカードネットワークの場合、デフォルトのオーソリ有効期間は、オンライン決済の場合は 7 日間、対面の Terminal 決済の場合は 2 日間ですが、カードネットワークによっては、有効期間を最大 30 日間まで延長できます。オーソリの有効期間について詳細は、支払い方法の売上を保留をご覧ください。
Availability 
When you use extended authorizations, there are no regional restrictions. However, be aware of the following limitations:
- They’re only available with Visa, Mastercard, American Express, and Discover.
- Certain card brands have merchant category restrictions. Refer to the network availability table below.
- This page describes extended authorizations for online card payments. For in-person card payments using extended authorizations, refer to the Terminal documentation.
- mode is set to
payment
and capture_method is set tomanual
on the CheckoutSession.
IC+ Feature
We offer extended authorizations to users on IC+ pricing. If you’re on blended Stripe pricing and want access to this feature, contact us at support.stripe.com.
Availability by card network and merchant category
Every card network has different rules that determine which payments have extended authorizations available, and how long they’re valid. The following table shows the validity windows and transaction types that extended authorization is available for using Visa, Mastercard, American Express, and Discover. However, we recommend that you rely on the capture_before field to confirm the validity window for any given payment because these rules can change without prior notice.
カードブランド | 加盟店カテゴリー | オーソリの有効期間を延長 |
---|---|---|
Visa | ホテル、宿泊施設、車のレンタル、クルーズ会社 All other merchant categories* | 30 日間** |
Mastercard (Maestro および Cirrus カードを除く) | すべての加盟店カテゴリー | 30 日間 |
アメリカン・エキスプレス | 宿泊施設および車のレンタル | 30 days*** |
ディスカバー | 航空会社、バスチャーター / ツアー、車のレンタル、クルーズ会社、地方 / 郊外の通勤・通学用交通機関、旅客輸送 (フェリー、ホテル、宿泊施設、鉄道を含む) | 30 日間 |
Networks with limited support (beta)
Recent changes to availability
Best Practices
Customers see their funds held longer when you use extended authorizations. Use clear statement descriptors to avoid increased disputes from unrecognized payments.
You can use the custom_text field when creating a new CheckoutSession to display additional text on the checkout page to help meet compliance requirements.
Compliance
You’re responsible for your compliance with all applicable laws, regulations, and network rules when using extended authorization. Consult the network specifications for the card networks that you plan to accept using this feature with to make sure your sales are compliant with the applicable rules, which vary by network. For instance, for many networks extended validity windows are only for cases where you don’t know the final amount that you’ll capture at the time of authorization.
The information provided on this page relating to your compliance with these requirements is for your general guidance, and is not legal, tax, accounting, or other professional advice. Consult with a professional if you’re unsure about your obligations.
CheckoutSession を作成する
From your server, create a Checkout Session and set the ui_mode to embedded
. You can configure the Checkout Session with line items to include, and options such as currency.
To return customers to a custom page that you host on your website, specify that page’s URL in the return_url parameter. Include the {CHECKOUT_
template variable in the URL to retrieve the session’s status on the return page. Checkout automatically substitutes the variable with the Checkout Session ID before redirecting.
Read more about configuring the return page and other options for customizing redirect behavior.
After you create the Checkout Session, use the client_
returned in the response to mount Checkout.
To enable the extended authorization feature, set request_extended_authorization to if_
.
Rely on the capture_before field to confirm the validity window for a given payment. The validity window won’t change after the CheckoutSession is complete. To determine if the authorization is extended after the CheckoutSession is complete, look at the extended_authorization.status field on the associated Charge.
{ "id": "pi_xxx", "object": "payment_intent", "amount": 1000, "amount_capturable": 1000, "amount_received": 0, "status": "requires_capture", ... // if latest_charge is expanded "latest_charge": { "id": "ch_xxx", "object": "charge", "payment_method_details": { "card": { "amount_authorized": 1000, "capture_before": 1696524701, "extended_authorization": { "status": "enabled", // or "disabled" } } } ... } ... }
Checkout をマウントする
Checkout は、HTTPS 接続を介して支払い情報をStripeに安全に送信する iframe でレンダリングされます。
よくある間違い
一部の支払い方法では、別のページにリダイレクトして支払いを確定する必要があるため、Checkout は別の iframe 内に配置しないでください。
デザインをカスタマイズする
アカウントのブランディング設定で、背景色、ボタンの色、枠線の角丸半径、フォントを設定して、サイトのデザインに合わせて Checkout をカスタマイズします。
デフォルトでは、Checkout は外側に余白やマージンが追加されずに表示されます。必要なマージンを適用するには (四方すべてに 16px など)、目的の余白を適用するコンテナー要素 (div など) を使用することをお勧めします。
戻り先ページを表示する
After your customer attempts payment, Stripe redirects them to a return page that you host on your site. When you created the Checkout Session, you specified the URL of the return page in the return_url parameter. Read more about other options for customizing redirect behavior.
When rendering your return page, retrieve the Checkout Session status using the Checkout Session ID in the URL. Handle the result according to the session status as follows:
complete
: The payment succeeded. Use the information from the Checkout Session to render a success page.open
: The payment failed or was canceled. Remount Checkout so that your customer can try again.
const session = await fetch(`/session_status?session_id=${session_id}`) if (session.status == 'open') { // Remount embedded Checkout } else if (session.status == 'complete') { // Show success page // Optionally use session.payment_status or session.customer_email // to customize the success page }
Redirect-based payment methods
During payment, some payment methods redirect the customer to an intermediate page, such as a bank authorization page. When they complete that page, Stripe redirects them to your return page.
Learn more about redirect-based payment methods and redirect behavior.
実装内容をテストする
Use the Stripe test cards below with any CVC and future expiration date to request extended authorizations while testing. If extended authorizations are available on payments for a given network while testing, they’re also available for live payments.
Card brand | Number | Payment method |
---|---|---|
Visa | pm_ | |
Mastercard | pm_ | |
Amex | pm_ | |
Discover | pm_ |