Files
Shifted/node_modules/@stripe/stripe-js/dist/api/confirmation-tokens.d.mts
2026-02-10 01:14:19 +00:00

196 lines
5.7 KiB
TypeScript
Raw 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 {StripeElements} from '../stripe-js';
import {Address} from './shared';
import {PaymentMethod, PaymentMethodCreateParams} from './payment-methods';
import {PaymentIntent} from './payment-intents';
/**
* The ConfirmationToken object.
*/
export interface ConfirmationToken {
/**
* Unique identifier for the object.
*/
id: string;
/**
* String representing the object's type. Objects of the same type share the same value.
*/
object: 'confirmation_token';
/**
* Time at which the object was created. Measured in seconds since the Unix epoch.
*/
created: number;
/**
* Time at which this ConfirmationToken expires and can no longer be used to confirm a PaymentIntent or SetupIntent. This is set to null once this ConfirmationToken has been used. Measured in seconds since the Unix epoch.
*/
expires_at: number;
/**
* Has the value `true` if the object exists in live mode or the value `false` if the object exists in test mode.
*/
livemode: boolean;
/**
* ID of the PaymentIntent that this ConfirmationToken was used to confirm, or null if this ConfirmationToken has not yet been used.
*/
payment_intent: null | string;
/**
* Payment details collected by the Payment Element, used to create a PaymentMethod when a PaymentIntent or SetupIntent is confirmed with this ConfirmationToken.
*/
payment_method_preview: ConfirmationToken.PaymentMethodPreview;
/**
* The URL your customer is redirected to after they complete the payment.
*/
return_url: string | null;
/**
* Indicates that you intend to make future payments with this ConfirmationTokens payment method.
*
* The presence of this property will [attach the payment method](https://stripe.com/docs/payments/save-during-payment) to the PaymentIntents Customer, if present, after the PaymentIntent is confirmed and any required actions from the user are complete.
*
* Stripe uses `setup_future_usage` to dynamically optimize your payment flow and comply with regional legislation and network rules. For example, if your customer is impacted by [SCA](https://stripe.com/docs/strong-customer-authentication), using `off_session` will ensure that they are authenticated while processing this PaymentIntent. You will then be able to collect [off-session payments](https://stripe.com/docs/payments/cards/charging-saved-cards#off-session-payments-with-saved-cards) for this customer.
*/
setup_future_usage: PaymentIntent.SetupFutureUsage | null;
/**
* ID of the SetupIntent that this ConfirmationToken was used to confirm, or null if this ConfirmationToken has not yet been used.
*/
setup_intent: null | string;
/**
* Shipping information for this ConfirmationToken.
*/
shipping: PaymentIntent.Shipping | null;
/**
* Set to true when confirming server-side and using Stripe.js, iOS, or Android client-side SDKs to handle the next actions.
*/
use_stripe_sdk: boolean;
}
export interface ConfirmationTokenCreateParams {
/**
* Data used to create a new payment method.
*
*/
payment_method_data?: {
/**
* The customer's billing details.
*/
billing_details?: PaymentMethodCreateParams.BillingDetails;
/**
* Specifies if the PaymentMethod should be redisplayed when using the Saved Payment Method feature
*/
allow_redisplay?: 'always' | 'limited' | 'unspecified';
/**
* Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format.
* Individual keys can be unset by posting an empty value to them
* @docs https://docs.stripe.com/metadata
*/
metadata?: Record<string, string>;
};
/**
* Shipping information.
*/
shipping?: ConfirmationToken.Shipping;
/**
* The url your customer will be directed to after they complete authentication.
*/
return_url?: string | null;
}
export interface CreateConfirmationToken {
/**
* The Elements instance.
*
* @docs https://stripe.com/docs/js/elements_object
*/
elements: StripeElements;
/**
* Parameters for creating the ConfirmationToken.
* Details collected by Elements will be overriden by values passed here.
*/
params?: ConfirmationTokenCreateParams;
}
export namespace ConfirmationToken {
export interface Shipping {
/**
* Recipient address.
*/
address: Address;
/**
* Recipient name.
*/
name: string | null;
/**
* Recipient phone (including extension).
*/
phone?: string | null;
}
export interface PaymentMethodPreview {
/**
* The type of the PaymentMethod. An additional hash is included on payment_method_preview with a name matching this value. It contains additional information specific to the PaymentMethod type.
*/
type: string;
billing_details: PaymentMethod.BillingDetails;
acss_debit?: PaymentMethod.AcssDebit;
affirm?: PaymentMethod.Affirm;
afterpay_clearpay?: PaymentMethod.AfterpayClearpay;
au_becs_debit?: PaymentMethod.AuBecsDebit;
card?: PaymentMethod.Card;
card_present?: PaymentMethod.CardPresent;
eps?: PaymentMethod.Eps;
fpx?: PaymentMethod.Fpx;
grabpay?: PaymentMethod.GrabPay;
ideal?: PaymentMethod.Ideal;
p24?: PaymentMethod.P24;
sepa_debit?: PaymentMethod.SepaDebit;
us_bank_account?: PaymentMethod.UsBankAccount;
}
export interface MandateData {
customer_acceptance: {
type: 'online';
online?: {
/**
* The IP address from which the Mandate was accepted by the customer.
*/
ip_address: string;
/**
* The user agent of the browser from which the Mandate was accepted by the customer.
*/
user_agent: string;
};
};
}
}