Rocky_Mountain_Vending/.pnpm-store/v10/files/9d/6fa0d5fcd207eddd9da8af1295ebb8afe644c92ef390ac3bbb9bd02f7ea6ae0987c27f5394a80110140c530b250c30b098a3deadfb37a27b2f8560ceef3c70
DMleadgen 46d973904b
Initial commit: Rocky Mountain Vending website
Next.js website for Rocky Mountain Vending company featuring:
- Product catalog with Stripe integration
- Service areas and parts pages
- Admin dashboard with Clerk authentication
- SEO optimized pages with JSON-LD structured data

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-12 16:22:15 -07:00

1516 lines
48 KiB
Text
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import {
StripeIdealBankElement,
StripeIbanElement,
StripeP24BankElement,
StripeEpsBankElement,
StripeFpxBankElement,
StripeCardCvcElement,
StripeCardNumberElement,
StripeCardElement,
StripeAuBankAccountElement,
} from './elements';
import {PaymentMethodCreateParams, PaymentIntentConfirmParams} from '../api';
import {Omit} from '../utils';
export type CreatePaymentMethodData =
| CreatePaymentMethodAcssDebitData
| CreatePaymentMethodAffirmData
| CreatePaymentMethodAfterpayClearpayData
| CreatePaymentMethodAlipayData
| CreatePaymentMethodAuBecsDebitData
| CreatePaymentMethodBacsDebitData
| CreatePaymentMethodBancontactData
| CreatePaymentMethodBlikData
| CreatePaymentMethodBoletoData
| CreatePaymentMethodCardData
| CreatePaymentMethodCashappData
| CreatePaymentMethodCustomerBalanceData
| CreatePaymentMethodEpsData
| CreatePaymentMethodGiropayData
| CreatePaymentMethodGrabPayData
| CreatePaymentMethodIdealData
| CreatePaymentMethodKlarnaData
| CreatePaymentMethodKonbiniData
| CreatePaymentMethodP24Data
| CreatePaymentMethodPayPalData
| CreatePaymentMethodPayNowData
| CreatePaymentMethodPixData
| CreatePaymentMethodPromptPayData
| CreatePaymentMethodFpxData
| CreatePaymentMethodUsBankAccountData
| CreatePaymentMethodSepaDebitData
| CreatePaymentMethodSofortData
| CreatePaymentMethodWechatPayData;
export {
CreatePaymentMethodFromElement,
CreatePaymentMethodFromElements,
} from '../api';
export interface CreatePaymentMethodAlipayData
extends PaymentMethodCreateParams {
type: 'alipay';
}
export interface CreatePaymentMethodWechatPayData
extends PaymentMethodCreateParams {
/**
* Requires beta access:
* Contact [Stripe support](https://support.stripe.com/) for more information.
*/
type: 'wechat_pay';
}
export interface CreatePaymentMethodAffirmData
extends PaymentMethodCreateParams {
type: 'affirm';
/**
* Can be omitted as there are no Affirm-specific fields.
*/
affirm?: {}; // eslint-disable-line @typescript-eslint/ban-types
}
export interface CreatePaymentMethodAfterpayClearpayData
extends PaymentMethodCreateParams {
type: 'afterpay_clearpay';
/**
* Can be omitted as there are no AfterpayClearpay-specific fields.
*/
afterpay_clearpay?: {}; // eslint-disable-line @typescript-eslint/ban-types
}
export interface CreatePaymentMethodBancontactData
extends PaymentMethodCreateParams {
type: 'bancontact';
/**
* The customer's billing details.
* `name` is required.
*
* @docs https://stripe.com/docs/api/payment_methods/create#create_payment_method-billing_details
*/
billing_details: PaymentMethodCreateParams.BillingDetails & {
name: string;
};
}
export interface CreatePaymentMethodBlikData extends PaymentMethodCreateParams {
type: 'blik';
/**
* Details about the BLIK pament method. Currently there are no supported child attributes for this field.
*/
blik?: {}; // eslint-disable-line @typescript-eslint/ban-types
}
export interface CreatePaymentMethodBoletoData
extends PaymentMethodCreateParams {
type: 'boleto';
/**
* The customer's billing details.
* `name`, `email`, and full `address` is required.
*
* @docs https://stripe.com/docs/api/payment_methods/create#create_payment_method-billing_details
*/
billing_details: PaymentMethodCreateParams.BillingDetails & {
email: string;
name: string;
address: PaymentMethodCreateParams.BillingDetails.Address & {
line1: string;
city: string;
postal_code: string;
state: string;
country: string;
};
};
boleto: {
tax_id: string;
};
}
export interface CreatePaymentMethodCardData extends PaymentMethodCreateParams {
type: 'card';
card: StripeCardElement | StripeCardNumberElement | {token: string};
}
export interface CreatePaymentMethodCashappData
extends PaymentMethodCreateParams {
type: 'cashapp';
}
export interface CreatePaymentMethodCustomerBalanceData
extends PaymentMethodCreateParams {
/**
* Requires beta access:
* Contact [Stripe support](https://support.stripe.com/) for more information.
*/
customer_balance: Record<string, never>;
}
export interface CreatePaymentMethodEpsData extends PaymentMethodCreateParams {
type: 'eps';
/**
* The customer's billing details.
* `name` is required.
*
* @docs https://stripe.com/docs/api/payment_methods/create#create_payment_method-billing_details
*/
billing_details: PaymentMethodCreateParams.BillingDetails & {
name: string;
};
eps:
| StripeEpsBankElement
| {
/**
* The customer's bank
*/
bank?: string;
};
}
export interface CreatePaymentMethodFpxData extends PaymentMethodCreateParams {
type: 'fpx';
fpx:
| StripeFpxBankElement
| {
/**
* The customer's bank.
*/
bank: string;
};
}
export interface CreatePaymentMethodGiropayData
extends PaymentMethodCreateParams {
type: 'giropay';
/**
* The customer's billing details.
* `name` is required.
*
* @docs https://stripe.com/docs/api/payment_methods/create#create_payment_method-billing_details
*/
billing_details: PaymentMethodCreateParams.BillingDetails & {
name: string;
};
}
export interface CreatePaymentMethodGrabPayData
extends PaymentMethodCreateParams {
type: 'grabpay';
/**
* Can be omitted as there are no GrabPay-specific fields.
*/
grabpay?: {}; // eslint-disable-line @typescript-eslint/ban-types
}
export interface CreatePaymentMethodIdealData
extends PaymentMethodCreateParams {
type: 'ideal';
ideal:
| StripeIdealBankElement
| {
/**
* The customer's bank.
*/
bank?: string;
};
}
export interface CreatePaymentMethodKlarnaData
extends PaymentMethodCreateParams {
/**
* Requires beta access:
* Contact [Stripe support](https://support.stripe.com/) for more information.
*/
type: 'klarna';
/**
* The customer's billing details.
* `address.country` is required.
*
* @docs https://stripe.com/docs/api/payment_methods/create#create_payment_method-billing_details
*/
billing_details: PaymentMethodCreateParams.BillingDetails & {
address: PaymentMethodCreateParams.BillingDetails.Address & {
country: string;
};
};
}
export interface CreatePaymentMethodKonbiniData
extends PaymentMethodCreateParams {
type: 'konbini';
/**
* The customer's billing details.
* `email` and `name` are required.
*
* @docs https://stripe.com/docs/api/payment_methods/create#create_payment_method-billing_details
*/
billing_details: PaymentMethodCreateParams.BillingDetails & {
email: string;
name: string;
};
}
export interface CreatePaymentMethodMobilepayData
extends PaymentMethodCreateParams {
type: 'mobilepay';
}
export interface CreatePaymentMethodOxxoData extends PaymentMethodCreateParams {
type: 'oxxo';
/**
* The customer's billing details.
* `email` and `name` are required.
*
* @docs https://stripe.com/docs/api/payment_methods/create#create_payment_method-billing_details
*/
billing_details: PaymentMethodCreateParams.BillingDetails & {
email: string;
name: string;
};
}
export interface CreatePaymentMethodP24Data extends PaymentMethodCreateParams {
type: 'p24';
/**
* The customer's billing details.
* `email` is required.
*
* @docs https://stripe.com/docs/api/payment_methods/create#create_payment_method-billing_details
*/
billing_details: PaymentMethodCreateParams.BillingDetails & {
email: string;
};
p24?:
| StripeP24BankElement
| {
/**
* The customer's bank.
*/
bank?: string;
};
}
export interface CreatePaymentMethodPayNowData
extends PaymentMethodCreateParams {
type: 'paynow';
}
export interface CreatePaymentMethodPayPalData
extends PaymentMethodCreateParams {
type: 'paypal';
}
export interface CreatePaymentMethodPixData extends PaymentMethodCreateParams {
type: 'pix';
}
export interface CreatePaymentMethodPromptPayData
extends PaymentMethodCreateParams {
type: 'promptpay';
}
export interface CreatePaymentMethodSepaDebitData
extends PaymentMethodCreateParams {
type: 'sepa_debit';
sepa_debit:
| StripeIbanElement
| {
/**
* An IBAN account number.
*/
iban: string;
};
/**
* The customer's billing details.
* `name` and `email` are required.
*
* @docs https://stripe.com/docs/api/payment_methods/create#create_payment_method-billing_details
*/
billing_details: PaymentMethodCreateParams.BillingDetails & {
name: string;
email: string;
};
}
export interface CreatePaymentMethodSofortData
extends PaymentMethodCreateParams {
type: 'sofort';
sofort: {
/**
* The country code where customer's bank is located.
*/
country: string;
};
/**
* The customer's billing details.
* Required when `setup_future_usage` is set to `off_session`.
*
* @docs https://stripe.com/docs/api/payment_methods/create#create_payment_method-billing_details
*/
billing_details?: PaymentMethodCreateParams.BillingDetails;
}
export interface CreatePaymentMethodAuBecsDebitData
extends PaymentMethodCreateParams {
/**
* Requires beta access:
* Contact [Stripe support](https://support.stripe.com/) for more information.
*/
type: 'au_becs_debit';
/**
* Requires beta access:
* Contact [Stripe support](https://support.stripe.com/) for more information.
*/
au_becs_debit:
| StripeAuBankAccountElement
| {
/**
* A BSB number.
*/
bsb_number: string;
/**
* An account number.
*/
account_number: string;
};
/**
* The customer's billing details.
* `name` and `email` are required.
*
* @docs https://stripe.com/docs/api/payment_methods/create#create_payment_method-billing_details
*/
billing_details: PaymentMethodCreateParams.BillingDetails & {
name: string;
email: string;
};
}
export interface CreatePaymentMethodBacsDebitData
extends PaymentMethodCreateParams {
type: 'bacs_debit';
bacs_debit: {
/**
* A sort code.
*/
sort_code: string;
/**
* An account number.
*/
account_number: string;
};
/**
* The customer's billing details.
* `name`, `email`, and `address` are required.
*
* @docs https://stripe.com/docs/api/payment_methods/create#create_payment_method-billing_details
*/
billing_details: PaymentMethodCreateParams.BillingDetails & {
name: string;
email: string;
address: PaymentMethodCreateParams.BillingDetails.Address & {
line1: string;
city: string;
country: string;
postal_code: string;
};
};
}
export interface CreatePaymentMethodAcssDebitData
extends PaymentMethodCreateParams {
type: 'acss_debit';
/**
* Can be omitted as Stripe will help to collect bank account details and verification.
* Refer to our [integration guide](https://stripe.com/docs/payments/acss-debit/accept-a-payment) for more details.
*/
acss_debit?: {
/**
* Customers bank account number.
*/
account_number: string;
/**
* Institution number of the customers bank.
*/
institution_number: string;
/**
* Transit number of the customers bank.
*/
transit_number: string;
};
/**
* The customer's billing details.
* `name`, `email`, and `address` are required.
*
* @docs https://stripe.com/docs/api/payment_methods/create#create_payment_method-billing_details
*/
billing_details: PaymentMethodCreateParams.BillingDetails;
}
export interface CreatePaymentMethodUsBankAccountData
extends PaymentMethodCreateParams {
type: 'us_bank_account';
/**
* Can be omitted as Stripe will help to collect bank account details and verification.
* Refer to our [integration guide](https://stripe.com/docs/payments/acss-debit/accept-a-payment) for more details.
*/
us_bank_account: {
/**
* Customers bank account number.
*/
account_number: string;
/**
* The routing transit number for the bank account.
*/
routing_number: string;
/**
* The type of entity that holds the account. This can be either `individual` or `company`.
*/
account_holder_type: string;
/**
* Account type: checkings or savings. Defaults to checking if omitted.
*/
account_type?: string;
};
/**
* The customer's billing details.
* `name`, `email`, and `address` are required.
*
* @docs https://stripe.com/docs/api/payment_methods/create#create_payment_method-billing_details
*/
billing_details: PaymentMethodCreateParams.BillingDetails;
}
export interface CollectBankAccountParams {
/**
* The payment method type for the bank account details (e.g. `us_bank_account`)
*/
payment_method_type: string;
/**
* Payment method specific data to be sent with the request (billing details)
*/
payment_method_data: CollectBankAccountPaymentMethodData;
}
export interface CollectBankAccountPaymentMethodData {
/**
* The customer's billing details.
* `name`, `email`, and `address` are required.
*
* @docs https://stripe.com/docs/api/payment_methods/create#create_payment_method-billing_details
*/
billing_details: PaymentMethodCreateParams.BillingDetails;
}
/**
* Data to be sent with a `stripe.confirmBancontactPayment` request.
* Refer to the [Payment Intents API](https://stripe.com/docs/api/payment_intents/confirm) for a full list of parameters.
*/
export interface ConfirmBancontactPaymentData
extends PaymentIntentConfirmParams {
/**
* Either the `id` of an existing [PaymentMethod](https://stripe.com/docs/api/payment_methods), or an object containing data to create a `PaymentMethod` with.
* This field is optional if a `PaymentMethod` has already been attached to this `PaymentIntent`.
*
* @recommended
*/
payment_method?: string | Omit<CreatePaymentMethodBancontactData, 'type'>;
/**
* The url your customer will be directed to after they complete authentication.
*
* @recommended
*/
return_url?: string;
}
/**
* Data to be sent with a `stripe.ConfirmBlikPayment` request.
* Refer to the [Payment Intents API](https://stripe.com/docs/api/payment_intents/confirm) for a full list of parameters.
*/
export interface ConfirmBlikPaymentData extends PaymentIntentConfirmParams {
/**
* Either the `id` of an existing [PaymentMethod](https://stripe.com/docs/api/payment_methods), or an object containing data to create a `PaymentMethod` with.
* This field is optional if a `PaymentMethod` has already been attached to this `PaymentIntent`.
*
* @recommended
*/
payment_method?: string | Omit<CreatePaymentMethodBlikData, 'type'>;
/**
* An object containing payment-method-specific configuration to confirm the [PaymentIntent](https://stripe.com/docs/api/payment_intents) with.
*/
payment_method_options: {
/**
* A configuration for this BLIK payment.
*/
blik: {
/**
* Your customer's 6-digit BLIK code.
*/
code: string;
};
};
}
/**
* Data to be sent with a `stripe.confirmBoletoPayment` request.
* Refer to the [Payment Intents API](https://stripe.com/docs/api/payment_intents/confirm) for a full list of parameters.
*/
export interface ConfirmBoletoPaymentData extends PaymentIntentConfirmParams {
/**
* Either the `id` of an existing [PaymentMethod](https://stripe.com/docs/api/payment_methods), or an object containing data to create a `PaymentMethod` with.
* This field is optional if a `PaymentMethod` has already been attached to this `PaymentIntent`.
*
* @recommended
*/
payment_method?: string | Omit<CreatePaymentMethodBoletoData, 'type'>;
}
/**
* An options object to control the behavior of `stripe.confirmBoletoPayment`.
*/
export interface ConfirmBoletoPaymentOptions {
/**
* Set this to `false` if you want to handle next actions yourself. Please refer to our [Stripe Boleto integration guide](https://stripe.com/docs/payments/boleto) for more info. Default is `true`.
*/
handleActions?: boolean;
}
/**
* Data to be sent with a `stripe.confirmAlipayPayment` request.
* Refer to the [Payment Intents API](https://stripe.com/docs/api/payment_intents/confirm) for a full list of parameters.
*/
export interface ConfirmAlipayPaymentData extends PaymentIntentConfirmParams {
/**
* The `id` of an existing [PaymentMethod](https://stripe.com/docs/api/payment_methods).
* This field is optional if a `PaymentMethod` has already been attached to this `PaymentIntent` or a new `PaymentMethod` will be created.
*
* @recommended
*/
payment_method?: string | Omit<CreatePaymentMethodAlipayData, 'type'>;
/**
* The url your customer will be directed to after they complete authentication.
*
* @recommended
*/
return_url?: string;
}
/**
* An options object to control the behavior of `stripe.confirmAlipayPayment`.
*/
export interface ConfirmAlipayPaymentOptions {
/**
* Set this to `false` if you want to [manually handle the authorization redirect](https://stripe.com/docs/payments/alipay/accept-a-payment#handle-redirect).
* Default is `true`.
*/
handleActions?: boolean;
}
/**
* An options object to control the behavior of `stripe.confirmBancontactPayment`.
*/
export interface ConfirmBancontactPaymentOptions {
/**
* Set this to `false` if you want to [manually handle the authorization redirect](https://stripe.com/docs/payments/bancontact#handle-redirect).
* Default is `true`.
*/
handleActions?: boolean;
}
/**
* An options object to control the behavior of `stripe.confirmBlikPayment`.
*/
export interface ConfirmBlikPaymentOptions {
/**
* Set this to false if you want to manually determine if the confirmation has succeeded or failed.
*/
handleActions?: boolean;
}
/**
* Data to be sent with a `stripe.confirmCardPayment` request.
* Refer to the [Payment Intents API](https://stripe.com/docs/api/payment_intents/confirm) for a full list of parameters.
*/
export interface ConfirmCardPaymentData extends PaymentIntentConfirmParams {
/**
* Either the `id` of an existing [PaymentMethod](https://stripe.com/docs/api/payment_methods), or an object containing data to create a `PaymentMethod` with.
* This field is optional if a `PaymentMethod` has already been attached to this `PaymentIntent`.
*
* @recommended
*/
payment_method?: string | Omit<CreatePaymentMethodCardData, 'type'>;
/**
* An object containing payment-method-specific configuration to confirm the [PaymentIntent](https://stripe.com/docs/api/payment_intents) with.
*/
payment_method_options?: {
/**
* Configuration for this card payment.
*/
card: {
/**
* Use the provided `CardCvcElement` when confirming the PaymentIntent with an existing PaymentMethod.
*/
cvc?: StripeCardCvcElement;
/**
* Selected network to process this PaymentIntent on. Depends on the available networks of the card attached to the PaymentIntent.
*/
network?: string;
};
};
}
/**
* An options object to control the behavior of `stripe.confirmCardPayment`.
*/
export interface ConfirmCardPaymentOptions {
/**
* Set this to `false` if you want to [handle next actions yourself](https://stripe.com/docs/payments/payment-intents/verifying-status#next-actions), or if you want to defer next action handling until later (e.g. for use in the [PaymentRequest API](https://stripe.com/docs/stripe-js/elements/payment-request-button#complete-payment-intents)).
* Default is `true`.
*/
handleActions?: boolean;
}
/**
* Data to be sent with a `stripe.confirmCashappPayment` request.
* Refer to the [Payment Intents API](https://stripe.com/docs/api/payment_intents/confirm) for a full list of parameters.
*/
export interface ConfirmCashappPaymentData extends PaymentIntentConfirmParams {
/**
* The `id` of an existing [PaymentMethod](https://stripe.com/docs/api/payment_methods).
* This field is optional if a `PaymentMethod` has already been attached to this `PaymentIntent` or a new `PaymentMethod` will be created.
*
* @recommended
*/
payment_method?: string | Omit<CreatePaymentMethodCashappData, 'type'>;
/**
* The url your customer will be directed to after they complete authentication.
*/
return_url?: string;
}
/**
* An options object to control the behavior of `stripe.confirmCashappPayment`.
*/
export interface ConfirmCashappPaymentOptions {
/**
* Set this to `false` if you want to [manually handle the authorization QR code or redirect](https://stripe.com/docs/payments/cash-app-pay/accept-a-payment?platform=web&ui=API#handle-redirect).
* Default is `true`.
*/
handleActions?: boolean;
}
/**
* Data to be sent with a `stripe.confirmCustomerBalancePayment` request.
* Refer to the [Payment Intents API](https://stripe.com/docs/api/payment_intents/confirm) for a full list of parameters.
*/
export interface ConfirmCustomerBalancePaymentData
extends PaymentIntentConfirmParams {
/**
* An object specifying the `customer_balance` type.
*/
payment_method: CreatePaymentMethodCustomerBalanceData;
payment_method_options?: {
customer_balance?: {
funding_type?: 'bank_transfer';
bank_transfer?: {
type:
| 'eu_bank_transfer'
| 'gb_bank_transfer'
| 'id_bank_transfer'
| 'jp_bank_transfer'
| 'mx_bank_transfer'
| 'us_bank_transfer';
eu_bank_transfer?: {
country: 'DE' | 'ES' | 'FR' | 'IE' | 'NL';
};
id_bank_transfer?: {
bank: 'bni' | 'bca';
};
requested_address_types?: Array<
| 'aba'
| 'swift'
| 'sort_code'
| 'zengin'
| 'iban'
| 'spei'
| 'id_bban'
| 'sepa'
>;
};
};
};
}
/**
* An options object to control the behavior of `stripe.confirmCustomerBalancePayment`.
*/
export interface ConfirmCustomerBalancePaymentOptions {
/**
* This must be set to `false`.
* The Customer Balance does not handle the next actions for you automatically (e.g. displaying bank transfer details).
* To make future upgrades easier, this option is required to always be sent.
* Please refer to our [Stripe Customer Balance integration guide](https://stripe.com/docs/payments/bank-transfers) for more info.
*/
handleActions: false;
}
/**
* Data to be sent with a `stripe.confirmEpsPayment` request.
* Refer to the [Payment Intents API](https://stripe.com/docs/api/payment_intents/confirm) for a full list of parameters.
*/
export interface ConfirmEpsPaymentData extends PaymentIntentConfirmParams {
/**
* Either the `id` of an existing [PaymentMethod](https://stripe.com/docs/api/payment_methods), or an object containing data to create a `PaymentMethod` with.
* This field is optional if a `PaymentMethod` has already been attached to this `PaymentIntent`.
*
* @recommended
*/
payment_method?: string | Omit<CreatePaymentMethodEpsData, 'type'>;
/**
* The url your customer will be directed to after they complete authentication.
*
* @recommended
*/
return_url?: string;
}
/**
* An options object to control the behavior of `stripe.confirmEpsPayment`.
*/
export interface ConfirmEpsPaymentOptions {
/**
* Set this to `false` if you want to [manually handle the authorization redirect](https://stripe.com/docs/payments/eps#handle-redirect).
* Default is `true`.
*/
handleActions?: boolean;
}
/**
* Data to be sent with a `stripe.confirmSepaDebitPayment` request.
* Refer to the [Payment Intents API](https://stripe.com/docs/api/payment_intents/confirm) for a full list of parameters.
*/
export interface ConfirmSepaDebitPaymentData
extends PaymentIntentConfirmParams {
/**
* Either the `id` of an existing [PaymentMethod](https://stripe.com/docs/api/payment_methods), or an object containing data to create a `PaymentMethod` with.
* This field is optional if a `PaymentMethod` has already been attached to this `PaymentIntent`.
*
* @recommended
*/
payment_method?: string | Omit<CreatePaymentMethodSepaDebitData, 'type'>;
/**
* To save the SEPA Direct Debit account for reuse, set this parameter to `off_session`.
* SEPA Direct Debit only accepts an `off_session` value for this parameter.
*/
setup_future_usage?: 'off_session';
}
/**
* Data to be sent with a `stripe.confirmFpxPayment` request.
* Refer to the [Payment Intents API](https://stripe.com/docs/api/payment_intents/confirm) for a full list of parameters.
*/
export interface ConfirmFpxPaymentData extends PaymentIntentConfirmParams {
/**
* Either the `id` of an existing [PaymentMethod](https://stripe.com/docs/api/payment_methods), or an object containing data to create a `PaymentMethod` with.
* This field is optional if a `PaymentMethod` has already been attached to this `PaymentIntent`.
*
* @recommended
*/
payment_method?: string | Omit<CreatePaymentMethodFpxData, 'type'>;
/**
* The url your customer will be directed to after they complete authentication.
*
* @recommended
*/
return_url?: string;
}
/**
* An options object to control the behavior of `stripe.confirmFpxPayment`.
*/
export interface ConfirmFpxPaymentOptions {
/**
* Set this to `false` if you want to [manually handle the authorization redirect](https://stripe.com/docs/payments/fpx#handle-redirect).
* Default is `true`.
*/
handleActions?: boolean;
}
/**
* Data to be sent with a `stripe.confirmGiropayPayment` request.
* Refer to the [Payment Intents API](https://stripe.com/docs/api/payment_intents/confirm) for a full list of parameters.
*/
export interface ConfirmGiropayPaymentData extends PaymentIntentConfirmParams {
/**
* Either the `id` of an existing [PaymentMethod](https://stripe.com/docs/api/payment_methods), or an object containing data to create a `PaymentMethod` with.
* This field is optional if a `PaymentMethod` has already been attached to this `PaymentIntent`.
*
* @recommended
*/
payment_method?: string | Omit<CreatePaymentMethodGiropayData, 'type'>;
/**
* The url your customer will be directed to after they complete authentication.
*
* @recommended
*/
return_url?: string;
}
/**
* An options object to control the behavior of `stripe.confirmGiropayPayment`.
*/
export interface ConfirmGiropayPaymentOptions {
/**
* Set this to `false` if you want to [manually handle the authorization redirect](https://stripe.com/docs/payments/giropay#handle-redirect).
* Default is `true`.
*/
handleActions?: boolean;
}
/**
* Data to be sent with a `stripe.confirmGrabPayPayment` request.
* Refer to the [Payment Intents API](https://stripe.com/docs/api/payment_intents/confirm) for a full list of parameters.
*/
export interface ConfirmGrabPayPaymentData extends PaymentIntentConfirmParams {
/**
* Either the `id` of an existing [PaymentMethod](https://stripe.com/docs/api/payment_methods), or an object containing data to create a `PaymentMethod` with.
* This field is optional if a `PaymentMethod` has already been attached to this `PaymentIntent`.
*
* @recommended
*/
payment_method?: string | Omit<CreatePaymentMethodGrabPayData, 'type'>;
/**
* The url your customer will be directed to after they complete authentication.
*
* @recommended
*/
return_url?: string;
}
/**
* An options object to control the behavior of `stripe.confirmGrabPayPayment`.
*/
export interface ConfirmGrabPayPaymentOptions {
/**
* Set this to `false` if you want to handle next actions yourself. Please refer to our [Stripe GrabPay integration guide](https://stripe.com/docs/payments/grabpay/accept-a-payment)
* for more info. Default is `true`.
*/
handleActions?: boolean;
}
/**
* Data to be sent with a `stripe.confirmIdealPayment` request.
* Refer to the [Payment Intents API](https://stripe.com/docs/api/payment_intents/confirm) for a full list of parameters.
*/
export interface ConfirmIdealPaymentData extends PaymentIntentConfirmParams {
/**
* Either the `id` of an existing [PaymentMethod](https://stripe.com/docs/api/payment_methods), or an object containing data to create a `PaymentMethod` with.
* This field is optional if a `PaymentMethod` has already been attached to this `PaymentIntent`.
*
* @recommended
*/
payment_method?: string | Omit<CreatePaymentMethodIdealData, 'type'>;
/**
* The url your customer will be directed to after they complete authentication.
*
* @recommended
*/
return_url?: string;
}
/**
* An options object to control the behavior of `stripe.confirmIdealPayment`.
*/
export interface ConfirmIdealPaymentOptions {
/**
* Set this to `false` if you want to [manually handle the authorization redirect](https://stripe.com/docs/payments/ideal#handle-redirect).
* Default is `true`.
*/
handleActions?: boolean;
}
/**
* Data to be sent with a `stripe.confirmKlarnaPayment` request.
* Refer to the [Payment Intents API](https://stripe.com/docs/api/payment_intents/confirm) for a full list of parameters.
*/
export interface ConfirmKlarnaPaymentData extends PaymentIntentConfirmParams {
/**
* Either the `id` of an existing [PaymentMethod](https://stripe.com/docs/api/payment_methods), or an object containing data to create a `PaymentMethod` with.
* This field is optional if a `PaymentMethod` has already been attached to this `PaymentIntent`.
*
* @recommended
*/
payment_method?: string | Omit<CreatePaymentMethodKlarnaData, 'type'>;
/**
* The url your customer will be directed to after they complete authentication.
*
* @recommended
*/
return_url?: string;
}
/**
* An options object to control the behavior of `stripe.confirmKlarnaPayment`.
*/
export interface ConfirmKlarnaPaymentOptions {
/**
* Set this to `false` if you want to [manually handle the authorization redirect](https://stripe.com/docs/payments/klarna#handle-redirect).
* Default is `true`.
*/
handleActions?: boolean;
}
/**
* Data to be sent with a `stripe.confirmKonbiniPayment` request.
* Refer to the [Payment Intents API](https://stripe.com/docs/api/payment_intents/confirm) for a full list of parameters.
*/
export interface ConfirmKonbiniPaymentData extends PaymentIntentConfirmParams {
/**
* Either the `id` of an existing [PaymentMethod](https://stripe.com/docs/api/payment_methods), or an object containing data to create a `PaymentMethod` with.
* This field is optional if a `PaymentMethod` has already been attached to this `PaymentIntent`.
*
* @recommended
*/
payment_method?: string | Omit<CreatePaymentMethodKonbiniData, 'type'>;
/**
* An object containing payment-method-specific configuration to confirm the [PaymentIntent](https://stripe.com/docs/api/payment_intents) with.
*/
payment_method_options?: {
/**
* Configuration for this Konbini payment.
*/
konbini: {
/**
* An optional 10 to 11 digit numeric-only string determining the confirmation code at applicable convenience stores. May not be all 0 and could be rejected in case of insufficient uniqueness. We recommend to use the customers phone number.
*/
confirmation_number?: string;
};
};
}
/**
* An options object to control the behavior of `stripe.confirmKonbiniPayment`.
*/
export interface ConfirmKonbiniPaymentOptions {
/**
* Set this to `false` if you want to handle next actions yourself. Please refer to our [integration guide](https://stripe.com/docs/payments/konbini/accept-a-payment) for more info. Default is `true`.
*/
handleActions?: boolean;
}
/**
* Data to be sent with a `stripe.confirmMobilepayPayment` request.
* Refer to the [Payment Intents API](https://stripe.com/docs/api/payment_intents/confirm) for a full list of parameters.
*/
export interface ConfirmMobilepayPaymentData
extends PaymentIntentConfirmParams {
/**
* The `id` of an existing [PaymentMethod](https://stripe.com/docs/api/payment_methods).
* This field is optional if a `PaymentMethod` has already been attached to this `PaymentIntent` or a new `PaymentMethod` will be created.
*
* @recommended
*/
payment_method?: string | Omit<CreatePaymentMethodMobilepayData, 'type'>;
/**
* The url your customer will be directed to after they complete authentication.
*/
return_url?: string;
}
/**
* An options object to control the behavior of `stripe.confirmMobilepayPayment`.
*/
export interface ConfirmMobilepayPaymentOptions {
/**
* Set this to `false` if you want to [manually handle the redirect](https://docs.stripe.com/payments/mobilepay/accept-a-payment?web-or-mobile=web&payments-ui-type=direct-api#web-confirm-payment-intent).
* Default is `true`.
*/
handleActions?: boolean;
}
/**
* Data to be sent with a `stripe.confirmOxxoPayment` request.
* Refer to the [Payment Intents API](https://stripe.com/docs/api/payment_intents/confirm) for a full list of parameters.
*/
export interface ConfirmOxxoPaymentData extends PaymentIntentConfirmParams {
/**
* Either the `id` of an existing [PaymentMethod](https://stripe.com/docs/api/payment_methods), or an object containing data to create a `PaymentMethod` with.
* This field is optional if a `PaymentMethod` has already been attached to this `PaymentIntent`.
*
* @recommended
*/
payment_method?: string | Omit<CreatePaymentMethodOxxoData, 'type'>;
}
/**
* An options object to control the behavior of `stripe.confirmOxxoPayment`.
*/
export interface ConfirmOxxoPaymentOptions {
/**
* Set this to `false` if you want to handle next actions yourself. Please refer to our [Stripe OXXO integration guide](https://stripe.com/docs/payments/oxxo) for more info. Default is `true`.
*/
handleActions?: boolean;
}
/**
* Data to be sent with a `stripe.confirmP24Payment` request.
* Refer to the [Payment Intents API](https://stripe.com/docs/api/payment_intents/confirm) for a full list of parameters.
*/
export interface ConfirmP24PaymentData extends PaymentIntentConfirmParams {
/**
* Either the `id` of an existing [PaymentMethod](https://stripe.com/docs/api/payment_methods), or an object containing data to create a `PaymentMethod` with.
* This field is optional if a `PaymentMethod` has already been attached to this `PaymentIntent`.
*
* @recommended
*/
payment_method?: string | Omit<CreatePaymentMethodP24Data, 'type'>;
payment_method_options?: {
/**
* Configuration for this Przelewy24 payment.
*/
p24: {
/**
* Specify that payer has agreed to the Przelewy24 Terms of Service
*/
tos_shown_and_accepted?: boolean;
};
};
/**
* The url your customer will be directed to after they complete authentication.
*
* @recommended
*/
return_url?: string;
}
/**
* Data to be sent with a `stripe.confirmPayNowPayment` request.
* Refer to the [Payment Intents API](https://stripe.com/docs/api/payment_intents/confirm) for a full list of parameters.
*/
export interface ConfirmPayNowPaymentData extends PaymentIntentConfirmParams {
/**
* The `id` of an existing [PaymentMethod](https://stripe.com/docs/api/payment_methods).
* This field is optional if a `PaymentMethod` has already been attached to this `PaymentIntent` or a new `PaymentMethod` will be created.
*
* @recommended
*/
payment_method?: string | Omit<CreatePaymentMethodPayNowData, 'type'>;
}
/**
* An options object to control the behavior of `stripe.confirmPayNowPayment`.
*/
export interface ConfirmPayNowPaymentOptions {
/**
* Set this to `false` if you want to [manually handle the authorization redirect](https://stripe.com/docs/payments/p24#handle-redirect).
* Default is `true`.
*/
handleActions?: boolean;
}
/**
* Data to be sent with a `stripe.confirmPayPalPayment` request.
* Refer to the [Payment Intents API](https://stripe.com/docs/api/payment_intents/confirm) for a full list of parameters.
*/
export interface ConfirmPayPalPaymentData extends PaymentIntentConfirmParams {
/**
* Either the `id` of an existing [PaymentMethod](https://stripe.com/docs/api/payment_methods), or an object containing data to create a `PaymentMethod` with.
* This field is optional if a `PaymentMethod` has already been attached to this `PaymentIntent`.
*
* @recommended
*/
payment_method?: string | Omit<CreatePaymentMethodPayPalData, 'type'>;
/**
* The required url your customer will be directed to after they complete authentication.
*/
return_url: string;
}
/**
* An options object to control the behavior of `stripe.confirmP24Payment`.
*/
export interface ConfirmP24PaymentOptions {
/**
* Set this to `false` if you want to [manually handle the authorization redirect](https://stripe.com/docs/payments/p24#handle-redirect).
* Default is `true`.
*/
handleActions?: boolean;
}
/**
* Data to be sent with a `stripe.confirmPixPayment` request.
* Refer to the [Payment Intents API](https://stripe.com/docs/api/payment_intents/confirm) for a full list of parameters.
*/
export interface ConfirmPixPaymentData extends PaymentIntentConfirmParams {
/**
* The `id` of an existing [PaymentMethod](https://stripe.com/docs/api/payment_methods).
* This field is optional if a `PaymentMethod` has already been attached to this `PaymentIntent` or a new `PaymentMethod` will be created.
*
* @recommended
*/
payment_method?: string | Omit<CreatePaymentMethodPixData, 'type'>;
}
/**
* An options object to control the behavior of `stripe.confirmPayNowPayment`.
*/
export interface ConfirmPixPaymentOptions {
/**
* Set this to `false` if you want to [manually handle the authorization redirect](https://stripe.com/docs/payments/p24#handle-redirect).
* Default is `true`.
*/
handleActions?: boolean;
}
/**
* Data to be sent with a `stripe.confirmPayNowPayment` request.
* Refer to the [Payment Intents API](https://stripe.com/docs/api/payment_intents/confirm) for a full list of parameters.
*/
export interface ConfirmPromptPayPaymentData
extends PaymentIntentConfirmParams {
/**
* The `id` of an existing [PaymentMethod](https://stripe.com/docs/api/payment_methods).
* This field is optional if a `PaymentMethod` has already been attached to this `PaymentIntent` or a new `PaymentMethod` will be created.
*
* @recommended
*/
payment_method?: string | Omit<CreatePaymentMethodPromptPayData, 'type'>;
}
/**
* An options object to control the behavior of `stripe.confirmPayNowPayment`.
*/
export interface ConfirmPromptPayPaymentOptions {
/**
* Set this to `false` if you want to [manually handle the authorization redirect](https://stripe.com/docs/payments/p24#handle-redirect).
* Default is `true`.
*/
handleActions?: boolean;
}
/**
* Data to be sent with a `stripe.confirmSofortPayment` request.
* Refer to the [Payment Intents API](https://stripe.com/docs/api/payment_intents/confirm) for a full list of parameters.
*/
export interface ConfirmSofortPaymentData extends PaymentIntentConfirmParams {
/**
* Either the `id` of an existing [PaymentMethod](https://stripe.com/docs/api/payment_methods), or an object containing data to create a `PaymentMethod` with.
* This field is optional if a `PaymentMethod` has already been attached to this `PaymentIntent`.
*
* @recommended
*/
payment_method?: string | Omit<CreatePaymentMethodSofortData, 'type'>;
/**
* The url your customer will be directed to after they complete authentication.
*
* @recommended
*/
return_url?: string;
/**
* To set up a SEPA Direct Debit payment method using the bank details from this SOFORT payment, set this parameter to `off_session`.
* When using this parameter, a `customer` will need to be set on the [PaymentIntent](https://stripe.com/docs/api/payment_intents).
* The newly created SEPA Direct Debit [PaymentMethod](https://stripe.com/docs/api/payment_methods) will be attached to this customer.
*/
setup_future_usage?: 'off_session';
}
/**
* An options object to control the behavior of `stripe.confirmSofortPayment`.
*/
export interface ConfirmSofortPaymentOptions {
/**
* Set this to `false` if you want to [manually handle the authorization redirect](https://stripe.com/docs/payments/sofort/accept-a-payment?platform=web#handle-redirect).
* Default is `true`.
*/
handleActions?: boolean;
}
/**
* Data to be sent with a `stripe.confirmWechatPayPayment` request.
* Refer to the [Payment Intents API](https://stripe.com/docs/api/payment_intents/confirm) for a full list of parameters.
*/
export interface ConfirmWechatPayPaymentData
extends PaymentIntentConfirmParams {
/**
* The `id` of an existing [PaymentMethod](https://stripe.com/docs/api/payment_methods).
* This field is optional if a `PaymentMethod` has already been attached to this `PaymentIntent` or a new `PaymentMethod` will be created.
*
* @recommended
*/
payment_method?: string | Omit<CreatePaymentMethodWechatPayData, 'type'>;
/**
* An object containing payment-method-specific configuration to confirm the [PaymentIntent](https://stripe.com/docs/api/payment_intents) with.
*/
payment_method_options?: {
/**
* Configuration for this wechat payment.
*/
wechat_pay: {
client?: 'web';
};
};
}
/**
* An options object to control the behavior of `stripe.confirmWechatPayPayment`.
*/
export interface ConfirmWechatPayPaymentOptions {
/**
* This must be set to false, and you are responsible for handling the next_action after confirming the PaymentIntent.
*/
handleActions: boolean;
}
/**
* Data to be sent with a `stripe.confirmAuBecsDebitPayment` request.
* Refer to the [Payment Intents API](https://stripe.com/docs/api/payment_intents/confirm) for a full list of parameters.
*/
export interface ConfirmAuBecsDebitPaymentData
extends PaymentIntentConfirmParams {
/**
* Either the `id` of an existing [PaymentMethod](https://stripe.com/docs/api/payment_methods), or an object containing data to create a `PaymentMethod` with.
* This field is optional if a `PaymentMethod` has already been attached to this `PaymentIntent`.
*
* @recommended
*/
payment_method?: string | Omit<CreatePaymentMethodAuBecsDebitData, 'type'>;
/**
* To save the BECS Direct Debit account for reuse, set this parameter to `off_session`.
* BECS Direct Debit only accepts an `off_session` value for this parameter.
*/
setup_future_usage?: 'off_session';
}
/**
* Data to be sent with a `stripe.confirmAffirmPayment` request.
* Refer to the [Payment Intents API](https://stripe.com/docs/api/payment_intents/confirm) for a full list of parameters.
*/
export interface ConfirmAffirmPaymentData extends PaymentIntentConfirmParams {
/**
* Either the `id` of an existing [PaymentMethod](https://stripe.com/docs/api/payment_methods), or an object containing data to create a `PaymentMethod` with.
* This field is optional if a `PaymentMethod` has already been attached to this `PaymentIntent`.
*
* @recommended
*/
payment_method?: string | Omit<CreatePaymentMethodAffirmData, 'type'>;
/**
* The url your customer will be directed to after they complete authentication.
*/
return_url?: string;
}
/**
* An options object to control the behavior of `stripe.confirmAffirmPayment`.
*/
export interface ConfirmAffirmPaymentOptions {
/**
* Set this to `false` if you want to handle next actions yourself. Please refer to our [Stripe Affirm integration guide](https://stripe.com/docs/payments/affirm/accept-a-payment)
* for more info. Default is `true`.
*/
handleActions?: boolean;
}
/**
* Data to be sent with a `stripe.confirmAfterpayClearpayPayment` request.
* Refer to the [Payment Intents API](https://stripe.com/docs/api/payment_intents/confirm) for a full list of parameters.
*/
export interface ConfirmAfterpayClearpayPaymentData
extends PaymentIntentConfirmParams {
/**
* Either the `id` of an existing [PaymentMethod](https://stripe.com/docs/api/payment_methods), or an object containing data to create a `PaymentMethod` with.
* This field is optional if a `PaymentMethod` has already been attached to this `PaymentIntent`.
*
* @recommended
*/
payment_method?:
| string
| Omit<CreatePaymentMethodAfterpayClearpayData, 'type'>;
/**
* The url your customer will be directed to after they complete authentication.
*/
return_url?: string;
}
/**
* An options object to control the behavior of `stripe.confirmAfterpayClearpayPayment`.
*/
export interface ConfirmAfterpayClearpayPaymentOptions {
/**
* Set this to `false` if you want to handle next actions yourself. Please refer to our [Stripe Afterpay / Clearpay integration guide](https://stripe.com/docs/payments/afterpay-clearpay/accept-a-payment#handle-redirect)
* for more info. Default is `true`.
*/
handleActions?: boolean;
}
/**
* Data to be sent with a `stripe.confirmAcssDebitPayment` request.
* Refer to the [Payment Intents API](https://stripe.com/docs/api/payment_intents/confirm) for a full list of parameters.
*/
export interface ConfirmAcssDebitPaymentData
extends PaymentIntentConfirmParams {
/**
* Either the `id` of an existing [PaymentMethod](https://stripe.com/docs/api/payment_methods), or an object containing data to create a `PaymentMethod` with.
* This field is optional if a `PaymentMethod` has already been attached to this `PaymentIntent`.
*
* @recommended
*/
payment_method?: string | Omit<CreatePaymentMethodAcssDebitData, 'type'>;
}
/**
* An options object to control the behavior of `stripe.confirmAcssDebitPayment`.
*/
export interface ConfirmAcssDebitPaymentOptions {
/**
* Set `skipMandate` to `true` if you want to skip displaying the mandate confirmation screen.
*/
skipMandate?: boolean;
}
export interface ConfirmUsBankAccountPaymentData
extends PaymentIntentConfirmParams {
/**
* Either the `id` of an existing [PaymentMethod](https://stripe.com/docs/api/payment_methods), or an object containing data to create a `PaymentMethod` with.
* This field is optional if a `PaymentMethod` has already been attached to this `PaymentIntent`.
*
* @recommended
*/
payment_method?: string | Omit<CreatePaymentMethodUsBankAccountData, 'type'>;
}
/**
* Data to be sent with a `stripe.confirmPayment` request.
* Refer to the [Payment Intents API](https://stripe.com/docs/api/payment_intents/confirm) for a full list of parameters.
*/
export interface ConfirmPaymentData extends PaymentIntentConfirmParams {
/**
* The url your customer will be directed to after they complete payment.
*/
return_url: string;
/**
* An object to attach additional billing_details to the PaymentMethod created via Elements.
*
* @docs https://stripe.com/docs/api/payment_intents/create#create_payment_intent-payment_method_data
*/
payment_method_data?: {
/**
* The customer's billing details. Details collected by Elements will override values passed here.
* Billing fields that are omitted in the Payment Element via the `fields` option required.
*
* @docs https://stripe.com/docs/api/payment_intents/create#create_payment_intent-payment_method_data-billing_details
*/
billing_details?: PaymentMethodCreateParams.BillingDetails;
/**
* Requires beta access:
* Contact [Stripe support](https://support.stripe.com/) for more information.
*
* Specifies if the PaymentMethod should be redisplayed when using the Saved Payment Method feature
*/
allow_redisplay?: 'always' | 'limited' | 'unspecified';
};
/**
* Optional `id` of an existing [ConfirmationToken](https://stripe.com/docs/api/confirmation_tokens).
*
* @docs https://stripe.com/docs/js/payment_intents/confirm_payment#confirm_payment_intent-options-confirmParams-confirmation_token
*/
confirmation_token?: string;
/**
* Optional `id` of an existing [PaymentMethod](https://stripe.com/docs/api/payment_methods).
*
* @docs https://stripe.com/docs/js/payment_intents/confirm_payment#confirm_payment_intent-options-confirmParams-payment_method
*/
payment_method?: string;
/**
* Specifies which fields in the response should be expanded.
*/
expand?: Array<string>;
}
/**
* Data to be sent with a `stripe.verifyMicrodepositsForPayment` request.
*/
export interface VerifyMicrodepositsForPaymentData {
/**
* An array of two positive integers, in cents, equal to the values of the microdeposits sent to the bank account.
*/
amounts?: Array<number>;
}
/**
* Data to be sent with a `stripe.collectBankAccountForPayment` request.
*/
export interface CollectBankAccountForPaymentOptions {
/**
* The client secret of the PaymentIntent.
*/
clientSecret: string;
params: CollectBankAccountParams;
/**
* Specifies which fields in the response should be expanded.
*/
expand?: Array<string>;
}