stripeapi-2.0.0.1: Stripe-Library
Safe HaskellNone
LanguageHaskell2010

StripeAPI.Types.SetupIntent

Description

Contains the types generated from the schema SetupIntent

Synopsis

Documentation

data SetupIntent Source #

Defines the object schema located at components.schemas.setup_intent in the specification.

A SetupIntent guides you through the process of setting up and saving a customer's payment credentials for future payments. For example, you could use a SetupIntent to set up and save your customer's card without immediately collecting a payment. Later, you can use PaymentIntents to drive the payment flow.

Create a SetupIntent as soon as you're ready to collect your customer's payment credentials. Do not maintain long-lived, unconfirmed SetupIntents as they may no longer be valid. The SetupIntent then transitions through multiple statuses as it guides you through the setup process.

Successful SetupIntents result in payment credentials that are optimized for future payments. For example, cardholders in certain regions may need to be run through Strong Customer Authentication at the time of payment method collection in order to streamline later off-session payments. If the SetupIntent is used with a Customer, upon success, it will automatically attach the resulting payment method to that Customer. We recommend using SetupIntents or setup_future_usage on PaymentIntents to save payment methods in order to prevent saving invalid or unoptimized payment methods.

By using SetupIntents, you ensure that your customers experience the minimum set of required friction, even as regulations change over time.

Related guide: Setup Intents API.

Constructors

SetupIntent 

Fields

data SetupIntentCancellationReason' Source #

Defines the enum schema located at components.schemas.setup_intent.properties.cancellation_reason in the specification.

Reason for cancellation of this SetupIntent, one of `abandoned`, `requested_by_customer`, or `duplicate`.

Constructors

SetupIntentCancellationReason'Other Value

This case is used if the value encountered during decoding does not match any of the provided cases in the specification.

SetupIntentCancellationReason'Typed Text

This constructor can be used to send values to the server which are not present in the specification yet.

SetupIntentCancellationReason'EnumAbandoned

Represents the JSON value "abandoned"

SetupIntentCancellationReason'EnumDuplicate

Represents the JSON value "duplicate"

SetupIntentCancellationReason'EnumRequestedByCustomer

Represents the JSON value "requested_by_customer"

data SetupIntentCustomer'Variants Source #

Defines the oneOf schema located at components.schemas.setup_intent.properties.customer.anyOf in the specification.

ID of the Customer this SetupIntent belongs to, if one exists.

If present, the SetupIntent's payment method will be attached to the Customer on successful setup. Payment methods attached to other Customers cannot be used with this SetupIntent.

data SetupIntentLastSetupError' Source #

Defines the object schema located at components.schemas.setup_intent.properties.last_setup_error.anyOf in the specification.

The error encountered in the previous SetupIntent confirmation.

Constructors

SetupIntentLastSetupError' 

Fields

data SetupIntentLastSetupError'Source' Source #

Defines the object schema located at components.schemas.setup_intent.properties.last_setup_error.anyOf.properties.source.anyOf in the specification.

The source object for errors returned on a request involving a source.

Constructors

SetupIntentLastSetupError'Source' 

Fields

data SetupIntentLastSetupError'Source'Account'Variants Source #

Defines the oneOf schema located at components.schemas.setup_intent.properties.last_setup_error.anyOf.properties.source.anyOf.properties.account.anyOf in the specification.

The ID of the account that the bank account is associated with.

data SetupIntentLastSetupError'Source'AvailablePayoutMethods' Source #

Defines the enum schema located at components.schemas.setup_intent.properties.last_setup_error.anyOf.properties.source.anyOf.properties.available_payout_methods.items in the specification.

Constructors

SetupIntentLastSetupError'Source'AvailablePayoutMethods'Other Value

This case is used if the value encountered during decoding does not match any of the provided cases in the specification.

SetupIntentLastSetupError'Source'AvailablePayoutMethods'Typed Text

This constructor can be used to send values to the server which are not present in the specification yet.

SetupIntentLastSetupError'Source'AvailablePayoutMethods'EnumInstant

Represents the JSON value "instant"

SetupIntentLastSetupError'Source'AvailablePayoutMethods'EnumStandard

Represents the JSON value "standard"

Instances

Instances details
Eq SetupIntentLastSetupError'Source'AvailablePayoutMethods' Source # 
Instance details

Defined in StripeAPI.Types.SetupIntent

Show SetupIntentLastSetupError'Source'AvailablePayoutMethods' Source # 
Instance details

Defined in StripeAPI.Types.SetupIntent

ToJSON SetupIntentLastSetupError'Source'AvailablePayoutMethods' Source # 
Instance details

Defined in StripeAPI.Types.SetupIntent

FromJSON SetupIntentLastSetupError'Source'AvailablePayoutMethods' Source # 
Instance details

Defined in StripeAPI.Types.SetupIntent

data SetupIntentLastSetupError'Source'Customer'Variants Source #

Defines the oneOf schema located at components.schemas.setup_intent.properties.last_setup_error.anyOf.properties.source.anyOf.properties.customer.anyOf in the specification.

The ID of the customer that the bank account is associated with.

data SetupIntentLastSetupError'Source'Object' Source #

Defines the enum schema located at components.schemas.setup_intent.properties.last_setup_error.anyOf.properties.source.anyOf.properties.object in the specification.

String representing the object's type. Objects of the same type share the same value.

Constructors

SetupIntentLastSetupError'Source'Object'Other Value

This case is used if the value encountered during decoding does not match any of the provided cases in the specification.

SetupIntentLastSetupError'Source'Object'Typed Text

This constructor can be used to send values to the server which are not present in the specification yet.

SetupIntentLastSetupError'Source'Object'EnumBankAccount

Represents the JSON value "bank_account"

data SetupIntentLastSetupError'Source'Owner' Source #

Defines the object schema located at components.schemas.setup_intent.properties.last_setup_error.anyOf.properties.source.anyOf.properties.owner.anyOf in the specification.

Information about the owner of the payment instrument that may be used or required by particular source types.

Constructors

SetupIntentLastSetupError'Source'Owner' 

Fields

data SetupIntentLastSetupError'Source'Owner'Address' Source #

Defines the object schema located at components.schemas.setup_intent.properties.last_setup_error.anyOf.properties.source.anyOf.properties.owner.anyOf.properties.address.anyOf in the specification.

Owner\'s address.

Constructors

SetupIntentLastSetupError'Source'Owner'Address' 

Fields

data SetupIntentLastSetupError'Source'Owner'VerifiedAddress' Source #

Defines the object schema located at components.schemas.setup_intent.properties.last_setup_error.anyOf.properties.source.anyOf.properties.owner.anyOf.properties.verified_address.anyOf in the specification.

Verified owner\'s address. Verified values are verified or provided by the payment method directly (and if supported) at the time of authorization or settlement. They cannot be set or mutated.

Constructors

SetupIntentLastSetupError'Source'Owner'VerifiedAddress' 

Fields

Instances

Instances details
Eq SetupIntentLastSetupError'Source'Owner'VerifiedAddress' Source # 
Instance details

Defined in StripeAPI.Types.SetupIntent

Show SetupIntentLastSetupError'Source'Owner'VerifiedAddress' Source # 
Instance details

Defined in StripeAPI.Types.SetupIntent

ToJSON SetupIntentLastSetupError'Source'Owner'VerifiedAddress' Source # 
Instance details

Defined in StripeAPI.Types.SetupIntent

FromJSON SetupIntentLastSetupError'Source'Owner'VerifiedAddress' Source # 
Instance details

Defined in StripeAPI.Types.SetupIntent

data SetupIntentLastSetupError'Source'Recipient'Variants Source #

Defines the oneOf schema located at components.schemas.setup_intent.properties.last_setup_error.anyOf.properties.source.anyOf.properties.recipient.anyOf in the specification.

The recipient that this card belongs to. This attribute will not be in the card object if the card belongs to a customer or account instead.

Instances

Instances details
Eq SetupIntentLastSetupError'Source'Recipient'Variants Source # 
Instance details

Defined in StripeAPI.Types.SetupIntent

Show SetupIntentLastSetupError'Source'Recipient'Variants Source # 
Instance details

Defined in StripeAPI.Types.SetupIntent

ToJSON SetupIntentLastSetupError'Source'Recipient'Variants Source # 
Instance details

Defined in StripeAPI.Types.SetupIntent

FromJSON SetupIntentLastSetupError'Source'Recipient'Variants Source # 
Instance details

Defined in StripeAPI.Types.SetupIntent

data SetupIntentLastSetupError'Source'Type' Source #

Defines the enum schema located at components.schemas.setup_intent.properties.last_setup_error.anyOf.properties.source.anyOf.properties.type in the specification.

The `type` of the source. The `type` is a payment method, one of `ach_credit_transfer`, `ach_debit`, `alipay`, `bancontact`, `card`, `card_present`, `eps`, `giropay`, `ideal`, `multibanco`, `klarna`, `p24`, `sepa_debit`, `sofort`, `three_d_secure`, or `wechat`. An additional hash is included on the source with a name matching this value. It contains additional information specific to the payment method used.

Constructors

SetupIntentLastSetupError'Source'Type'Other Value

This case is used if the value encountered during decoding does not match any of the provided cases in the specification.

SetupIntentLastSetupError'Source'Type'Typed Text

This constructor can be used to send values to the server which are not present in the specification yet.

SetupIntentLastSetupError'Source'Type'EnumAchCreditTransfer

Represents the JSON value "ach_credit_transfer"

SetupIntentLastSetupError'Source'Type'EnumAchDebit

Represents the JSON value "ach_debit"

SetupIntentLastSetupError'Source'Type'EnumAcssDebit

Represents the JSON value "acss_debit"

SetupIntentLastSetupError'Source'Type'EnumAlipay

Represents the JSON value "alipay"

SetupIntentLastSetupError'Source'Type'EnumAuBecsDebit

Represents the JSON value "au_becs_debit"

SetupIntentLastSetupError'Source'Type'EnumBancontact

Represents the JSON value "bancontact"

SetupIntentLastSetupError'Source'Type'EnumCard

Represents the JSON value "card"

SetupIntentLastSetupError'Source'Type'EnumCardPresent

Represents the JSON value "card_present"

SetupIntentLastSetupError'Source'Type'EnumEps

Represents the JSON value "eps"

SetupIntentLastSetupError'Source'Type'EnumGiropay

Represents the JSON value "giropay"

SetupIntentLastSetupError'Source'Type'EnumIdeal

Represents the JSON value "ideal"

SetupIntentLastSetupError'Source'Type'EnumKlarna

Represents the JSON value "klarna"

SetupIntentLastSetupError'Source'Type'EnumMultibanco

Represents the JSON value "multibanco"

SetupIntentLastSetupError'Source'Type'EnumP24

Represents the JSON value "p24"

SetupIntentLastSetupError'Source'Type'EnumSepaDebit

Represents the JSON value "sepa_debit"

SetupIntentLastSetupError'Source'Type'EnumSofort

Represents the JSON value "sofort"

SetupIntentLastSetupError'Source'Type'EnumThreeDSecure

Represents the JSON value "three_d_secure"

SetupIntentLastSetupError'Source'Type'EnumWechat

Represents the JSON value "wechat"

data SetupIntentLastSetupError'Type' Source #

Defines the enum schema located at components.schemas.setup_intent.properties.last_setup_error.anyOf.properties.type in the specification.

The type of error returned. One of `api_connection_error`, `api_error`, `authentication_error`, `card_error`, `idempotency_error`, `invalid_request_error`, or `rate_limit_error`

Constructors

SetupIntentLastSetupError'Type'Other Value

This case is used if the value encountered during decoding does not match any of the provided cases in the specification.

SetupIntentLastSetupError'Type'Typed Text

This constructor can be used to send values to the server which are not present in the specification yet.

SetupIntentLastSetupError'Type'EnumApiConnectionError

Represents the JSON value "api_connection_error"

SetupIntentLastSetupError'Type'EnumApiError

Represents the JSON value "api_error"

SetupIntentLastSetupError'Type'EnumAuthenticationError

Represents the JSON value "authentication_error"

SetupIntentLastSetupError'Type'EnumCardError

Represents the JSON value "card_error"

SetupIntentLastSetupError'Type'EnumIdempotencyError

Represents the JSON value "idempotency_error"

SetupIntentLastSetupError'Type'EnumInvalidRequestError

Represents the JSON value "invalid_request_error"

SetupIntentLastSetupError'Type'EnumRateLimitError

Represents the JSON value "rate_limit_error"

data SetupIntentLatestAttempt'Variants Source #

Defines the oneOf schema located at components.schemas.setup_intent.properties.latest_attempt.anyOf in the specification.

The most recent SetupAttempt for this SetupIntent.

data SetupIntentNextAction' Source #

Defines the object schema located at components.schemas.setup_intent.properties.next_action.anyOf in the specification.

If present, this property tells you what actions you need to take in order for your customer to continue payment setup.

Constructors

SetupIntentNextAction' 

Fields

data SetupIntentPaymentMethod'Variants Source #

Defines the oneOf schema located at components.schemas.setup_intent.properties.payment_method.anyOf in the specification.

ID of the payment method used with this SetupIntent.

data SetupIntentPaymentMethodOptions' Source #

Defines the object schema located at components.schemas.setup_intent.properties.payment_method_options.anyOf in the specification.

Payment-method-specific configuration for this SetupIntent.

data SetupIntentSingleUseMandate'Variants Source #

Defines the oneOf schema located at components.schemas.setup_intent.properties.single_use_mandate.anyOf in the specification.

ID of the single_use Mandate generated by the SetupIntent.

data SetupIntentStatus' Source #

Defines the enum schema located at components.schemas.setup_intent.properties.status in the specification.

Status of this SetupIntent, one of `requires_payment_method`, `requires_confirmation`, `requires_action`, `processing`, `canceled`, or `succeeded`.

Constructors

SetupIntentStatus'Other Value

This case is used if the value encountered during decoding does not match any of the provided cases in the specification.

SetupIntentStatus'Typed Text

This constructor can be used to send values to the server which are not present in the specification yet.

SetupIntentStatus'EnumCanceled

Represents the JSON value "canceled"

SetupIntentStatus'EnumProcessing

Represents the JSON value "processing"

SetupIntentStatus'EnumRequiresAction

Represents the JSON value "requires_action"

SetupIntentStatus'EnumRequiresConfirmation

Represents the JSON value "requires_confirmation"

SetupIntentStatus'EnumRequiresPaymentMethod

Represents the JSON value "requires_payment_method"

SetupIntentStatus'EnumSucceeded

Represents the JSON value "succeeded"