class Stripe::SetupIntentsApi

Defined in:

stripe/api/setup_intents_api.cr

Constant Summary

GET_SETUP_INTENTS_INTENT_MAX_LENGTH_FOR_CLIENT_SECRET = 5000
GET_SETUP_INTENTS_INTENT_MAX_LENGTH_FOR_INTENT = 5000
GET_SETUP_INTENTS_MAX_LENGTH_FOR_CUSTOMER = 5000
GET_SETUP_INTENTS_MAX_LENGTH_FOR_ENDING_BEFORE = 5000
GET_SETUP_INTENTS_MAX_LENGTH_FOR_PAYMENT_METHOD = 5000
GET_SETUP_INTENTS_MAX_LENGTH_FOR_STARTING_AFTER = 5000
POST_SETUP_INTENTS_INTENT_CANCEL_MAX_LENGTH_FOR_CANCELLATION_REASON = 5000
POST_SETUP_INTENTS_INTENT_CANCEL_MAX_LENGTH_FOR_INTENT = 5000
POST_SETUP_INTENTS_INTENT_CANCEL_VALID_VALUES_FOR_CANCELLATION_REASON = String.static_array("abandoned", "duplicate", "requested_by_customer")
POST_SETUP_INTENTS_INTENT_CONFIRM_MAX_LENGTH_FOR_CONFIRMATION_TOKEN = 5000
POST_SETUP_INTENTS_INTENT_CONFIRM_MAX_LENGTH_FOR_INTENT = 5000
POST_SETUP_INTENTS_INTENT_CONFIRM_MAX_LENGTH_FOR_PAYMENT_METHOD = 5000
POST_SETUP_INTENTS_INTENT_MAX_LENGTH_FOR_CUSTOMER = 5000
POST_SETUP_INTENTS_INTENT_MAX_LENGTH_FOR_DESCRIPTION = 1000
POST_SETUP_INTENTS_INTENT_MAX_LENGTH_FOR_INTENT = 5000
POST_SETUP_INTENTS_INTENT_MAX_LENGTH_FOR_PAYMENT_METHOD = 5000
POST_SETUP_INTENTS_INTENT_MAX_LENGTH_FOR_PAYMENT_METHOD_CONFIGURATION = 100
POST_SETUP_INTENTS_INTENT_VALID_VALUES_FOR_FLOW_DIRECTIONS = String.static_array("inbound", "outbound")
POST_SETUP_INTENTS_INTENT_VERIFY_MICRODEPOSITS_MAX_LENGTH_FOR_DESCRIPTOR_CODE = 5000
POST_SETUP_INTENTS_INTENT_VERIFY_MICRODEPOSITS_MAX_LENGTH_FOR_INTENT = 5000
POST_SETUP_INTENTS_MAX_LENGTH_FOR_CONFIRMATION_TOKEN = 5000
POST_SETUP_INTENTS_MAX_LENGTH_FOR_CUSTOMER = 5000
POST_SETUP_INTENTS_MAX_LENGTH_FOR_DESCRIPTION = 1000
POST_SETUP_INTENTS_MAX_LENGTH_FOR_PAYMENT_METHOD = 5000
POST_SETUP_INTENTS_MAX_LENGTH_FOR_PAYMENT_METHOD_CONFIGURATION = 100
POST_SETUP_INTENTS_VALID_VALUES_FOR_FLOW_DIRECTIONS = String.static_array("inbound", "outbound")
POST_SETUP_INTENTS_VALID_VALUES_FOR_USAGE = String.static_array("off_session", "on_session")

Constructors

Instance Method Summary

Constructor Detail

def self.new(api_client : Stripe::ApiClient = ApiClient.default) #

[View source]

Instance Method Detail

def api_client : ApiClient #

[View source]
def api_client=(api_client : ApiClient) #

[View source]
def build_api_request_for_get_setup_intents(*, ending_before : String | Nil = nil, starting_after : String | Nil = nil, created : Stripe::GetAccountsCreatedParameter | Nil = nil, limit : Int64 | Nil = nil, attach_to_self : Bool | Nil = nil, customer : String | Nil = nil, payment_method : String | Nil = nil, expand : Array(Array(String)) | Nil = nil) : Crest::Request #

@return Crest::Request


[View source]
def build_api_request_for_get_setup_intents_intent(*, intent : String | Nil = nil, expand : Array(Array(String)) | Nil = nil, client_secret : String | Nil = nil) : Crest::Request #

@return Crest::Request


[View source]
def build_api_request_for_post_setup_intents(*, attach_to_self : Bool | Nil = nil, automatic_payment_methods : Stripe::AutomaticPaymentMethodsParam | Nil = nil, confirm : Bool | Nil = nil, confirmation_token : String | Nil = nil, customer : String | Nil = nil, description : String | Nil = nil, expand : Array(String) | Nil = nil, flow_directions : Array(String) | Nil = nil, mandate_data : Stripe::PostSetupIntentsRequestMandateData | Nil = nil, metadata : Hash(String, String) | Nil = nil, on_behalf_of : String | Nil = nil, payment_method : String | Nil = nil, payment_method_configuration : String | Nil = nil, payment_method_data : Stripe::PaymentMethodDataParams | Nil = nil, payment_method_options : Stripe::PaymentMethodOptionsParam | Nil = nil, payment_method_types : Array(String) | Nil = nil, return_url : String | Nil = nil, single_use : Stripe::SetupIntentSingleUseParams | Nil = nil, usage : String | Nil = nil, use_stripe_sdk : Bool | Nil = nil) : Crest::Request #

@return Crest::Request


[View source]
def build_api_request_for_post_setup_intents_intent(*, intent : String | Nil = nil, attach_to_self : Bool | Nil = nil, customer : String | Nil = nil, description : String | Nil = nil, expand : Array(String) | Nil = nil, flow_directions : Array(String) | Nil = nil, metadata : Stripe::PostAccountsRequestMetadata | Nil = nil, payment_method : String | Nil = nil, payment_method_configuration : String | Nil = nil, payment_method_data : Stripe::PaymentMethodDataParams | Nil = nil, payment_method_options : Stripe::PaymentMethodOptionsParam | Nil = nil, payment_method_types : Array(String) | Nil = nil) : Crest::Request #

@return Crest::Request


[View source]
def build_api_request_for_post_setup_intents_intent_cancel(*, intent : String | Nil = nil, cancellation_reason : String | Nil = nil, expand : Array(String) | Nil = nil) : Crest::Request #

@return Crest::Request


[View source]
def build_api_request_for_post_setup_intents_intent_confirm(*, intent : String | Nil = nil, confirmation_token : String | Nil = nil, expand : Array(String) | Nil = nil, mandate_data : Stripe::PostPaymentIntentsIntentConfirmRequestMandateData | Nil = nil, payment_method : String | Nil = nil, payment_method_data : Stripe::PaymentMethodDataParams | Nil = nil, payment_method_options : Stripe::PaymentMethodOptionsParam | Nil = nil, return_url : String | Nil = nil, use_stripe_sdk : Bool | Nil = nil) : Crest::Request #

@return Crest::Request


[View source]
def build_api_request_for_post_setup_intents_intent_verify_microdeposits(*, intent : String | Nil = nil, amounts : Array(Int32) | Nil = nil, descriptor_code : String | Nil = nil, expand : Array(String) | Nil = nil) : Crest::Request #

@return Crest::Request


[View source]
def client_side_validation?(*args, **options) #

[View source]
def client_side_validation?(*args, **options, &) #

[View source]
def debugging?(*args, **options) #

[View source]
def debugging?(*args, **options, &) #

[View source]
def get_setup_intents(*, ending_before : String | Nil = nil, starting_after : String | Nil = nil, created : Stripe::GetAccountsCreatedParameter | Nil = nil, limit : Int64 | Nil = nil, attach_to_self : Bool | Nil = nil, customer : String | Nil = nil, payment_method : String | Nil = nil, expand : Array(Array(String)) | Nil = nil) : Stripe::PaymentFlowsSetupIntentList #

Returns a list of SetupIntents.

@optional @param ending_before [String?] A cursor for use in pagination. `ending_before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with `obj_bar`, your subsequent call can include `ending_before=obj_bar` in order to fetch the previous page of the list. @optional @param starting_after [String?] A cursor for use in pagination. `starting_after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `starting_after=obj_foo` in order to fetch the next page of the list. @optional @param created [Stripe::GetAccountsCreatedParameter?] A filter on the list, based on the object `created` field. The value can be a string with an integer Unix timestamp, or it can be a dictionary with a number of different query options. @optional @param limit [Int32?] A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default is 10. @optional @param attach_to_self [Bool?] If present, the SetupIntent's payment method will be attached to the in-context Stripe Account. It can only be used for this Stripe Account’s own money movement flows like InboundTransfer and OutboundTransfers. It cannot be set to true when setting up a PaymentMethod for a Customer, and defaults to false when attaching a PaymentMethod to a Customer. @optional @param customer [String?] Only return SetupIntents for the customer specified by this customer ID. @optional @param payment_method [String?] Only return SetupIntents that associate with the specified payment method. @optional @param expand [Array(Array(String))?] Specifies which fields in the response should be expanded. @return [Stripe::PaymentFlowsSetupIntentList]

[View source]
def get_setup_intents(*, ending_before : String | Nil = nil, starting_after : String | Nil = nil, created : Stripe::GetAccountsCreatedParameter | Nil = nil, limit : Int64 | Nil = nil, attach_to_self : Bool | Nil = nil, customer : String | Nil = nil, payment_method : String | Nil = nil, expand : Array(Array(String)) | Nil = nil, &block : Crest::Response -> ) : Nil #

<p>Returns a list of SetupIntents.</p> @optional @param ending_before [String?] A cursor for use in pagination. ending_before is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with obj_bar, your subsequent call can include ending_before=obj_bar in order to fetch the previous page of the list. @optional @param starting_after [String?] A cursor for use in pagination. starting_after is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with obj_foo, your subsequent call can include starting_after=obj_foo in order to fetch the next page of the list. @optional @param created [Stripe::GetAccountsCreatedParameter?] A filter on the list, based on the object created field. The value can be a string with an integer Unix timestamp, or it can be a dictionary with a number of different query options. @optional @param limit [Int32?] A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default is 10. @optional @param attach_to_self [Bool?] If present, the SetupIntent's payment method will be attached to the in-context Stripe Account. It can only be used for this Stripe Account’s own money movement flows like InboundTransfer and OutboundTransfers. It cannot be set to true when setting up a PaymentMethod for a Customer, and defaults to false when attaching a PaymentMethod to a Customer. @optional @param customer [String?] Only return SetupIntents for the customer specified by this customer ID. @optional @param payment_method [String?] Only return SetupIntents that associate with the specified payment method. @optional @param expand [Array(Array(String))?] Specifies which fields in the response should be expanded. @return nil


[View source]
def get_setup_intents_intent(*, intent : String | Nil = nil, expand : Array(Array(String)) | Nil = nil, client_secret : String | Nil = nil) : Stripe::SetupIntent #

Retrieves the details of a SetupIntent that has previously been created.

Client-side retrieval using a publishable key is allowed when the client_secret is provided in the query string.

When retrieved with a publishable key, only a subset of properties will be returned. Please refer to the SetupIntent object reference for more details.

@required @param intent [String?] @optional @param expand [Array(Array(String))?] Specifies which fields in the response should be expanded. @optional @param client_secret [String?] The client secret of the SetupIntent. We require this string if you use a publishable key to retrieve the SetupIntent. @return [Stripe::SetupIntent]

[View source]
def get_setup_intents_intent(*, intent : String | Nil = nil, expand : Array(Array(String)) | Nil = nil, client_secret : String | Nil = nil, &block : Crest::Response -> ) : Nil #

<p>Retrieves the details of a SetupIntent that has previously been created. </p> <p>Client-side retrieval using a publishable key is allowed when the <code>client_secret</code> is provided in the query string. </p> <p>When retrieved with a publishable key, only a subset of properties will be returned. Please refer to the <a href=&quot;#setup_intent_object&quot;>SetupIntent</a> object reference for more details.</p> @required @param intent [String?] @optional @param expand [Array(Array(String))?] Specifies which fields in the response should be expanded. @optional @param client_secret [String?] The client secret of the SetupIntent. We require this string if you use a publishable key to retrieve the SetupIntent. @return nil


[View source]
def get_setup_intents_intent_with_http_info(*, intent : String | Nil = nil, expand : Array(Array(String)) | Nil = nil, client_secret : String | Nil = nil) : Tuple(Stripe::SetupIntent, Int32, Hash(String, Array(String) | String)) #

<p>Retrieves the details of a SetupIntent that has previously been created. </p> <p>Client-side retrieval using a publishable key is allowed when the <code>client_secret</code> is provided in the query string. </p> <p>When retrieved with a publishable key, only a subset of properties will be returned. Please refer to the <a href=&quot;#setup_intent_object&quot;>SetupIntent</a> object reference for more details.</p> @required @param intent [String?] @optional @param expand [Array(Array(String))?] Specifies which fields in the response should be expanded. @optional @param client_secret [String?] The client secret of the SetupIntent. We require this string if you use a publishable key to retrieve the SetupIntent. @return [Tuple(Stripe::SetupIntent, Integer, Hash)] Stripe::SetupIntent, response status code and response headers


[View source]
def get_setup_intents_with_http_info(*, ending_before : String | Nil = nil, starting_after : String | Nil = nil, created : Stripe::GetAccountsCreatedParameter | Nil = nil, limit : Int64 | Nil = nil, attach_to_self : Bool | Nil = nil, customer : String | Nil = nil, payment_method : String | Nil = nil, expand : Array(Array(String)) | Nil = nil) : Tuple(Stripe::PaymentFlowsSetupIntentList, Int32, Hash(String, Array(String) | String)) #

<p>Returns a list of SetupIntents.</p> @optional @param ending_before [String?] A cursor for use in pagination. ending_before is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with obj_bar, your subsequent call can include ending_before=obj_bar in order to fetch the previous page of the list. @optional @param starting_after [String?] A cursor for use in pagination. starting_after is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with obj_foo, your subsequent call can include starting_after=obj_foo in order to fetch the next page of the list. @optional @param created [Stripe::GetAccountsCreatedParameter?] A filter on the list, based on the object created field. The value can be a string with an integer Unix timestamp, or it can be a dictionary with a number of different query options. @optional @param limit [Int32?] A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default is 10. @optional @param attach_to_self [Bool?] If present, the SetupIntent's payment method will be attached to the in-context Stripe Account. It can only be used for this Stripe Account’s own money movement flows like InboundTransfer and OutboundTransfers. It cannot be set to true when setting up a PaymentMethod for a Customer, and defaults to false when attaching a PaymentMethod to a Customer. @optional @param customer [String?] Only return SetupIntents for the customer specified by this customer ID. @optional @param payment_method [String?] Only return SetupIntents that associate with the specified payment method. @optional @param expand [Array(Array(String))?] Specifies which fields in the response should be expanded. @return [Tuple(Stripe::PaymentFlowsSetupIntentList, Integer, Hash)] Stripe::PaymentFlowsSetupIntentList, response status code and response headers


[View source]
def post_setup_intents(*, attach_to_self : Bool | Nil = nil, automatic_payment_methods : Stripe::AutomaticPaymentMethodsParam | Nil = nil, confirm : Bool | Nil = nil, confirmation_token : String | Nil = nil, customer : String | Nil = nil, description : String | Nil = nil, expand : Array(String) | Nil = nil, flow_directions : Array(String) | Nil = nil, mandate_data : Stripe::PostSetupIntentsRequestMandateData | Nil = nil, metadata : Hash(String, String) | Nil = nil, on_behalf_of : String | Nil = nil, payment_method : String | Nil = nil, payment_method_configuration : String | Nil = nil, payment_method_data : Stripe::PaymentMethodDataParams | Nil = nil, payment_method_options : Stripe::PaymentMethodOptionsParam | Nil = nil, payment_method_types : Array(String) | Nil = nil, return_url : String | Nil = nil, single_use : Stripe::SetupIntentSingleUseParams | Nil = nil, usage : String | Nil = nil, use_stripe_sdk : Bool | Nil = nil) : Stripe::SetupIntent #

Creates a SetupIntent object.

After you create the SetupIntent, attach a payment method and confirm it to collect any required permissions to charge the payment method later.

@optional @param attach_to_self [Bool?] If present, the SetupIntent's payment method will be attached to the in-context Stripe Account. It can only be used for this Stripe Account’s own money movement flows like InboundTransfer and OutboundTransfers. It cannot be set to true when setting up a PaymentMethod for a Customer, and defaults to false when attaching a PaymentMethod to a Customer. @optional @param automatic_payment_methods [Stripe::AutomaticPaymentMethodsParam?] @optional @param confirm [Bool?] Set to `true` to attempt to confirm this SetupIntent immediately. This parameter defaults to `false`. If a card is the attached payment method, you can provide a `return_url` in case further authentication is necessary. @optional @param confirmation_token [String?] ID of the ConfirmationToken used to confirm this SetupIntent. If the provided ConfirmationToken contains properties that are also being provided in this request, such as `payment_method`, then the values in this request will take precedence. @optional @param customer [String?] 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. @optional @param description [String?] An arbitrary string attached to the object. Often useful for displaying to users. @optional @param expand [Array(String)?] Specifies which fields in the response should be expanded. @optional @param flow_directions [Array(String)?] Indicates the directions of money movement for which this payment method is intended to be used. Include `inbound` if you intend to use the payment method as the origin to pull funds from. Include `outbound` if you intend to use the payment method as the destination to send funds to. You can include both if you intend to use the payment method for both purposes. @optional @param mandate_data [Stripe::PostSetupIntentsRequestMandateData?] @optional @param metadata [Hash(String, String)?] @optional @param on_behalf_of [String?] The Stripe account ID created for this SetupIntent. @optional @param payment_method [String?] ID of the payment method (a PaymentMethod, Card, or saved Source object) to attach to this SetupIntent. @optional @param payment_method_configuration [String?] The ID of the payment method configuration to use with this SetupIntent. @optional @param payment_method_data [Stripe::PaymentMethodDataParams?] @optional @param payment_method_options [Stripe::PaymentMethodOptionsParam?] @optional @param payment_method_types [Array(String)?] The list of payment method types (for example, card) that this SetupIntent can use. If you don't provide this, it defaults to [\\\"card\\\"]. @optional @param return_url [String?] The URL to redirect your customer back to after they authenticate or cancel their payment on the payment method's app or site. To redirect to a mobile application, you can alternatively supply an application URI scheme. This parameter can only be used with [`confirm=true`](https://stripe.com/docs/api/setup_intents/create#create_setup_intent-confirm). @optional @param single_use [Stripe::SetupIntentSingleUseParams?] @optional @param usage [String?] Indicates how the payment method is intended to be used in the future. If not provided, this value defaults to `off_session`. @optional @param use_stripe_sdk [Bool?] Set to `true` when confirming server-side and using Stripe.js, iOS, or Android client-side SDKs to handle the next actions. @return [Stripe::SetupIntent]

[View source]
def post_setup_intents(*, attach_to_self : Bool | Nil = nil, automatic_payment_methods : Stripe::AutomaticPaymentMethodsParam | Nil = nil, confirm : Bool | Nil = nil, confirmation_token : String | Nil = nil, customer : String | Nil = nil, description : String | Nil = nil, expand : Array(String) | Nil = nil, flow_directions : Array(String) | Nil = nil, mandate_data : Stripe::PostSetupIntentsRequestMandateData | Nil = nil, metadata : Hash(String, String) | Nil = nil, on_behalf_of : String | Nil = nil, payment_method : String | Nil = nil, payment_method_configuration : String | Nil = nil, payment_method_data : Stripe::PaymentMethodDataParams | Nil = nil, payment_method_options : Stripe::PaymentMethodOptionsParam | Nil = nil, payment_method_types : Array(String) | Nil = nil, return_url : String | Nil = nil, single_use : Stripe::SetupIntentSingleUseParams | Nil = nil, usage : String | Nil = nil, use_stripe_sdk : Bool | Nil = nil, &block : Crest::Response -> ) : Nil #

<p>Creates a SetupIntent object.</p> <p>After you create the SetupIntent, attach a payment method and <a href=&quot;/docs/api/setup_intents/confirm&quot;>confirm</a> it to collect any required permissions to charge the payment method later.</p> @optional @param attach_to_self [Bool?] If present, the SetupIntent's payment method will be attached to the in-context Stripe Account. It can only be used for this Stripe Account’s own money movement flows like InboundTransfer and OutboundTransfers. It cannot be set to true when setting up a PaymentMethod for a Customer, and defaults to false when attaching a PaymentMethod to a Customer. @optional @param automatic_payment_methods [Stripe::AutomaticPaymentMethodsParam?] @optional @param confirm [Bool?] Set to true to attempt to confirm this SetupIntent immediately. This parameter defaults to false. If a card is the attached payment method, you can provide a return_url in case further authentication is necessary. @optional @param confirmation_token [String?] ID of the ConfirmationToken used to confirm this SetupIntent. If the provided ConfirmationToken contains properties that are also being provided in this request, such as payment_method, then the values in this request will take precedence. @optional @param customer [String?] 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. @optional @param description [String?] An arbitrary string attached to the object. Often useful for displaying to users. @optional @param expand [Array(String)?] Specifies which fields in the response should be expanded. @optional @param flow_directions [Array(String)?] Indicates the directions of money movement for which this payment method is intended to be used. Include inbound if you intend to use the payment method as the origin to pull funds from. Include outbound if you intend to use the payment method as the destination to send funds to. You can include both if you intend to use the payment method for both purposes. @optional @param mandate_data [Stripe::PostSetupIntentsRequestMandateData?] @optional @param metadata [Hash(String, String)?] @optional @param on_behalf_of [String?] The Stripe account ID created for this SetupIntent. @optional @param payment_method [String?] ID of the payment method (a PaymentMethod, Card, or saved Source object) to attach to this SetupIntent. @optional @param payment_method_configuration [String?] The ID of the payment method configuration to use with this SetupIntent. @optional @param payment_method_data [Stripe::PaymentMethodDataParams?] @optional @param payment_method_options [Stripe::PaymentMethodOptionsParam?] @optional @param payment_method_types [Array(String)?] The list of payment method types (for example, card) that this SetupIntent can use. If you don't provide this, it defaults to [\"card\"]. @optional @param return_url [String?] The URL to redirect your customer back to after they authenticate or cancel their payment on the payment method's app or site. To redirect to a mobile application, you can alternatively supply an application URI scheme. This parameter can only be used with confirm=true. @optional @param single_use [Stripe::SetupIntentSingleUseParams?] @optional @param usage [String?] Indicates how the payment method is intended to be used in the future. If not provided, this value defaults to off_session. @optional @param use_stripe_sdk [Bool?] Set to true when confirming server-side and using Stripe.js, iOS, or Android client-side SDKs to handle the next actions. @return nil


[View source]
def post_setup_intents_intent(*, intent : String | Nil = nil, attach_to_self : Bool | Nil = nil, customer : String | Nil = nil, description : String | Nil = nil, expand : Array(String) | Nil = nil, flow_directions : Array(String) | Nil = nil, metadata : Stripe::PostAccountsRequestMetadata | Nil = nil, payment_method : String | Nil = nil, payment_method_configuration : String | Nil = nil, payment_method_data : Stripe::PaymentMethodDataParams | Nil = nil, payment_method_options : Stripe::PaymentMethodOptionsParam | Nil = nil, payment_method_types : Array(String) | Nil = nil) : Stripe::SetupIntent #

Updates a SetupIntent object.

@required @param intent [String?] @optional @param attach_to_self [Bool?] If present, the SetupIntent's payment method will be attached to the in-context Stripe Account. It can only be used for this Stripe Account’s own money movement flows like InboundTransfer and OutboundTransfers. It cannot be set to true when setting up a PaymentMethod for a Customer, and defaults to false when attaching a PaymentMethod to a Customer. @optional @param customer [String?] 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. @optional @param description [String?] An arbitrary string attached to the object. Often useful for displaying to users. @optional @param expand [Array(String)?] Specifies which fields in the response should be expanded. @optional @param flow_directions [Array(String)?] Indicates the directions of money movement for which this payment method is intended to be used. Include `inbound` if you intend to use the payment method as the origin to pull funds from. Include `outbound` if you intend to use the payment method as the destination to send funds to. You can include both if you intend to use the payment method for both purposes. @optional @param metadata [Stripe::PostAccountsRequestMetadata?] @optional @param payment_method [String?] ID of the payment method (a PaymentMethod, Card, or saved Source object) to attach to this SetupIntent. To unset this field to null, pass in an empty string. @optional @param payment_method_configuration [String?] The ID of the payment method configuration to use with this SetupIntent. @optional @param payment_method_data [Stripe::PaymentMethodDataParams?] @optional @param payment_method_options [Stripe::PaymentMethodOptionsParam?] @optional @param payment_method_types [Array(String)?] The list of payment method types (for example, card) that this SetupIntent can set up. If you don't provide this array, it defaults to [\\\"card\\\"]. @return [Stripe::SetupIntent]

[View source]
def post_setup_intents_intent(*, intent : String | Nil = nil, attach_to_self : Bool | Nil = nil, customer : String | Nil = nil, description : String | Nil = nil, expand : Array(String) | Nil = nil, flow_directions : Array(String) | Nil = nil, metadata : Stripe::PostAccountsRequestMetadata | Nil = nil, payment_method : String | Nil = nil, payment_method_configuration : String | Nil = nil, payment_method_data : Stripe::PaymentMethodDataParams | Nil = nil, payment_method_options : Stripe::PaymentMethodOptionsParam | Nil = nil, payment_method_types : Array(String) | Nil = nil, &block : Crest::Response -> ) : Nil #

<p>Updates a SetupIntent object.</p> @required @param intent [String?] @optional @param attach_to_self [Bool?] If present, the SetupIntent's payment method will be attached to the in-context Stripe Account. It can only be used for this Stripe Account’s own money movement flows like InboundTransfer and OutboundTransfers. It cannot be set to true when setting up a PaymentMethod for a Customer, and defaults to false when attaching a PaymentMethod to a Customer. @optional @param customer [String?] 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. @optional @param description [String?] An arbitrary string attached to the object. Often useful for displaying to users. @optional @param expand [Array(String)?] Specifies which fields in the response should be expanded. @optional @param flow_directions [Array(String)?] Indicates the directions of money movement for which this payment method is intended to be used. Include inbound if you intend to use the payment method as the origin to pull funds from. Include outbound if you intend to use the payment method as the destination to send funds to. You can include both if you intend to use the payment method for both purposes. @optional @param metadata [Stripe::PostAccountsRequestMetadata?] @optional @param payment_method [String?] ID of the payment method (a PaymentMethod, Card, or saved Source object) to attach to this SetupIntent. To unset this field to null, pass in an empty string. @optional @param payment_method_configuration [String?] The ID of the payment method configuration to use with this SetupIntent. @optional @param payment_method_data [Stripe::PaymentMethodDataParams?] @optional @param payment_method_options [Stripe::PaymentMethodOptionsParam?] @optional @param payment_method_types [Array(String)?] The list of payment method types (for example, card) that this SetupIntent can set up. If you don't provide this array, it defaults to [\"card\"]. @return nil


[View source]
def post_setup_intents_intent_cancel(*, intent : String | Nil = nil, cancellation_reason : String | Nil = nil, expand : Array(String) | Nil = nil) : Stripe::SetupIntent #

You can cancel a SetupIntent object when it’s in one of these statuses: requires_payment_method, requires_confirmation, or requires_action.

After you cancel it, setup is abandoned and any operations on the SetupIntent fail with an error. You can’t cancel the SetupIntent for a Checkout Session. Expire the Checkout Session instead.

@required @param intent [String?] @optional @param cancellation_reason [String?] Reason for canceling this SetupIntent. Possible values are: `abandoned`, `requested_by_customer`, or `duplicate` @optional @param expand [Array(String)?] Specifies which fields in the response should be expanded. @return [Stripe::SetupIntent]

[View source]
def post_setup_intents_intent_cancel(*, intent : String | Nil = nil, cancellation_reason : String | Nil = nil, expand : Array(String) | Nil = nil, &block : Crest::Response -> ) : Nil #

<p>You can cancel a SetupIntent object when it’s in one of these statuses: <code>requires_payment_method</code>, <code>requires_confirmation</code>, or <code>requires_action</code>. </p> <p>After you cancel it, setup is abandoned and any operations on the SetupIntent fail with an error. You can’t cancel the SetupIntent for a Checkout Session. <a href=&quot;/docs/api/checkout/sessions/expire&quot;>Expire the Checkout Session</a> instead.</p> @required @param intent [String?] @optional @param cancellation_reason [String?] Reason for canceling this SetupIntent. Possible values are: abandoned, requested_by_customer, or duplicate @optional @param expand [Array(String)?] Specifies which fields in the response should be expanded. @return nil


[View source]
def post_setup_intents_intent_cancel_with_http_info(*, intent : String | Nil = nil, cancellation_reason : String | Nil = nil, expand : Array(String) | Nil = nil) : Tuple(Stripe::SetupIntent, Int32, Hash(String, Array(String) | String)) #

<p>You can cancel a SetupIntent object when it’s in one of these statuses: <code>requires_payment_method</code>, <code>requires_confirmation</code>, or <code>requires_action</code>. </p> <p>After you cancel it, setup is abandoned and any operations on the SetupIntent fail with an error. You can’t cancel the SetupIntent for a Checkout Session. <a href=&quot;/docs/api/checkout/sessions/expire&quot;>Expire the Checkout Session</a> instead.</p> @required @param intent [String?] @optional @param cancellation_reason [String?] Reason for canceling this SetupIntent. Possible values are: abandoned, requested_by_customer, or duplicate @optional @param expand [Array(String)?] Specifies which fields in the response should be expanded. @return [Tuple(Stripe::SetupIntent, Integer, Hash)] Stripe::SetupIntent, response status code and response headers


[View source]
def post_setup_intents_intent_confirm(*, intent : String | Nil = nil, confirmation_token : String | Nil = nil, expand : Array(String) | Nil = nil, mandate_data : Stripe::PostPaymentIntentsIntentConfirmRequestMandateData | Nil = nil, payment_method : String | Nil = nil, payment_method_data : Stripe::PaymentMethodDataParams | Nil = nil, payment_method_options : Stripe::PaymentMethodOptionsParam | Nil = nil, return_url : String | Nil = nil, use_stripe_sdk : Bool | Nil = nil) : Stripe::SetupIntent #

Confirm that your customer intends to set up the current or provided payment method. For example, you would confirm a SetupIntent when a customer hits the “Save” button on a payment method management page on your website.

If the selected payment method does not require any additional steps from the customer, the SetupIntent will transition to the succeeded status.

Otherwise, it will transition to the requires_action status and suggest additional actions via next_action. If setup fails, the SetupIntent will transition to the requires_payment_method status or the canceled status if the confirmation limit is reached.

@required @param intent [String?] @optional @param confirmation_token [String?] ID of the ConfirmationToken used to confirm this SetupIntent. If the provided ConfirmationToken contains properties that are also being provided in this request, such as `payment_method`, then the values in this request will take precedence. @optional @param expand [Array(String)?] Specifies which fields in the response should be expanded. @optional @param mandate_data [Stripe::PostPaymentIntentsIntentConfirmRequestMandateData?] @optional @param payment_method [String?] ID of the payment method (a PaymentMethod, Card, or saved Source object) to attach to this SetupIntent. @optional @param payment_method_data [Stripe::PaymentMethodDataParams?] @optional @param payment_method_options [Stripe::PaymentMethodOptionsParam?] @optional @param return_url [String?] The URL to redirect your customer back to after they authenticate on the payment method's app or site. If you'd prefer to redirect to a mobile application, you can alternatively supply an application URI scheme. This parameter is only used for cards and other redirect-based payment methods. @optional @param use_stripe_sdk [Bool?] Set to `true` when confirming server-side and using Stripe.js, iOS, or Android client-side SDKs to handle the next actions. @return [Stripe::SetupIntent]

[View source]
def post_setup_intents_intent_confirm(*, intent : String | Nil = nil, confirmation_token : String | Nil = nil, expand : Array(String) | Nil = nil, mandate_data : Stripe::PostPaymentIntentsIntentConfirmRequestMandateData | Nil = nil, payment_method : String | Nil = nil, payment_method_data : Stripe::PaymentMethodDataParams | Nil = nil, payment_method_options : Stripe::PaymentMethodOptionsParam | Nil = nil, return_url : String | Nil = nil, use_stripe_sdk : Bool | Nil = nil, &block : Crest::Response -> ) : Nil #

<p>Confirm that your customer intends to set up the current or provided payment method. For example, you would confirm a SetupIntent when a customer hits the “Save” button on a payment method management page on your website.</p> <p>If the selected payment method does not require any additional steps from the customer, the SetupIntent will transition to the <code>succeeded</code> status.</p> <p>Otherwise, it will transition to the <code>requires_action</code> status and suggest additional actions via <code>next_action</code>. If setup fails, the SetupIntent will transition to the <code>requires_payment_method</code> status or the <code>canceled</code> status if the confirmation limit is reached.</p> @required @param intent [String?] @optional @param confirmation_token [String?] ID of the ConfirmationToken used to confirm this SetupIntent. If the provided ConfirmationToken contains properties that are also being provided in this request, such as payment_method, then the values in this request will take precedence. @optional @param expand [Array(String)?] Specifies which fields in the response should be expanded. @optional @param mandate_data [Stripe::PostPaymentIntentsIntentConfirmRequestMandateData?] @optional @param payment_method [String?] ID of the payment method (a PaymentMethod, Card, or saved Source object) to attach to this SetupIntent. @optional @param payment_method_data [Stripe::PaymentMethodDataParams?] @optional @param payment_method_options [Stripe::PaymentMethodOptionsParam?] @optional @param return_url [String?] The URL to redirect your customer back to after they authenticate on the payment method's app or site. If you'd prefer to redirect to a mobile application, you can alternatively supply an application URI scheme. This parameter is only used for cards and other redirect-based payment methods. @optional @param use_stripe_sdk [Bool?] Set to true when confirming server-side and using Stripe.js, iOS, or Android client-side SDKs to handle the next actions. @return nil


[View source]
def post_setup_intents_intent_confirm_with_http_info(*, intent : String | Nil = nil, confirmation_token : String | Nil = nil, expand : Array(String) | Nil = nil, mandate_data : Stripe::PostPaymentIntentsIntentConfirmRequestMandateData | Nil = nil, payment_method : String | Nil = nil, payment_method_data : Stripe::PaymentMethodDataParams | Nil = nil, payment_method_options : Stripe::PaymentMethodOptionsParam | Nil = nil, return_url : String | Nil = nil, use_stripe_sdk : Bool | Nil = nil) : Tuple(Stripe::SetupIntent, Int32, Hash(String, Array(String) | String)) #

<p>Confirm that your customer intends to set up the current or provided payment method. For example, you would confirm a SetupIntent when a customer hits the “Save” button on a payment method management page on your website.</p> <p>If the selected payment method does not require any additional steps from the customer, the SetupIntent will transition to the <code>succeeded</code> status.</p> <p>Otherwise, it will transition to the <code>requires_action</code> status and suggest additional actions via <code>next_action</code>. If setup fails, the SetupIntent will transition to the <code>requires_payment_method</code> status or the <code>canceled</code> status if the confirmation limit is reached.</p> @required @param intent [String?] @optional @param confirmation_token [String?] ID of the ConfirmationToken used to confirm this SetupIntent. If the provided ConfirmationToken contains properties that are also being provided in this request, such as payment_method, then the values in this request will take precedence. @optional @param expand [Array(String)?] Specifies which fields in the response should be expanded. @optional @param mandate_data [Stripe::PostPaymentIntentsIntentConfirmRequestMandateData?] @optional @param payment_method [String?] ID of the payment method (a PaymentMethod, Card, or saved Source object) to attach to this SetupIntent. @optional @param payment_method_data [Stripe::PaymentMethodDataParams?] @optional @param payment_method_options [Stripe::PaymentMethodOptionsParam?] @optional @param return_url [String?] The URL to redirect your customer back to after they authenticate on the payment method's app or site. If you'd prefer to redirect to a mobile application, you can alternatively supply an application URI scheme. This parameter is only used for cards and other redirect-based payment methods. @optional @param use_stripe_sdk [Bool?] Set to true when confirming server-side and using Stripe.js, iOS, or Android client-side SDKs to handle the next actions. @return [Tuple(Stripe::SetupIntent, Integer, Hash)] Stripe::SetupIntent, response status code and response headers


[View source]
def post_setup_intents_intent_verify_microdeposits(*, intent : String | Nil = nil, amounts : Array(Int32) | Nil = nil, descriptor_code : String | Nil = nil, expand : Array(String) | Nil = nil) : Stripe::SetupIntent #

Verifies microdeposits on a SetupIntent object.

@required @param intent [String?] @optional @param amounts [Array(Int32)?] Two positive integers, in *cents*, equal to the values of the microdeposits sent to the bank account. @optional @param descriptor_code [String?] A six-character code starting with SM present in the microdeposit sent to the bank account. @optional @param expand [Array(String)?] Specifies which fields in the response should be expanded. @return [Stripe::SetupIntent]

[View source]
def post_setup_intents_intent_verify_microdeposits(*, intent : String | Nil = nil, amounts : Array(Int32) | Nil = nil, descriptor_code : String | Nil = nil, expand : Array(String) | Nil = nil, &block : Crest::Response -> ) : Nil #

<p>Verifies microdeposits on a SetupIntent object.</p> @required @param intent [String?] @optional @param amounts [Array(Int32)?] Two positive integers, in cents, equal to the values of the microdeposits sent to the bank account. @optional @param descriptor_code [String?] A six-character code starting with SM present in the microdeposit sent to the bank account. @optional @param expand [Array(String)?] Specifies which fields in the response should be expanded. @return nil


[View source]
def post_setup_intents_intent_verify_microdeposits_with_http_info(*, intent : String | Nil = nil, amounts : Array(Int32) | Nil = nil, descriptor_code : String | Nil = nil, expand : Array(String) | Nil = nil) : Tuple(Stripe::SetupIntent, Int32, Hash(String, Array(String) | String)) #

<p>Verifies microdeposits on a SetupIntent object.</p> @required @param intent [String?] @optional @param amounts [Array(Int32)?] Two positive integers, in cents, equal to the values of the microdeposits sent to the bank account. @optional @param descriptor_code [String?] A six-character code starting with SM present in the microdeposit sent to the bank account. @optional @param expand [Array(String)?] Specifies which fields in the response should be expanded. @return [Tuple(Stripe::SetupIntent, Integer, Hash)] Stripe::SetupIntent, response status code and response headers


[View source]
def post_setup_intents_intent_with_http_info(*, intent : String | Nil = nil, attach_to_self : Bool | Nil = nil, customer : String | Nil = nil, description : String | Nil = nil, expand : Array(String) | Nil = nil, flow_directions : Array(String) | Nil = nil, metadata : Stripe::PostAccountsRequestMetadata | Nil = nil, payment_method : String | Nil = nil, payment_method_configuration : String | Nil = nil, payment_method_data : Stripe::PaymentMethodDataParams | Nil = nil, payment_method_options : Stripe::PaymentMethodOptionsParam | Nil = nil, payment_method_types : Array(String) | Nil = nil) : Tuple(Stripe::SetupIntent, Int32, Hash(String, Array(String) | String)) #

<p>Updates a SetupIntent object.</p> @required @param intent [String?] @optional @param attach_to_self [Bool?] If present, the SetupIntent's payment method will be attached to the in-context Stripe Account. It can only be used for this Stripe Account’s own money movement flows like InboundTransfer and OutboundTransfers. It cannot be set to true when setting up a PaymentMethod for a Customer, and defaults to false when attaching a PaymentMethod to a Customer. @optional @param customer [String?] 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. @optional @param description [String?] An arbitrary string attached to the object. Often useful for displaying to users. @optional @param expand [Array(String)?] Specifies which fields in the response should be expanded. @optional @param flow_directions [Array(String)?] Indicates the directions of money movement for which this payment method is intended to be used. Include inbound if you intend to use the payment method as the origin to pull funds from. Include outbound if you intend to use the payment method as the destination to send funds to. You can include both if you intend to use the payment method for both purposes. @optional @param metadata [Stripe::PostAccountsRequestMetadata?] @optional @param payment_method [String?] ID of the payment method (a PaymentMethod, Card, or saved Source object) to attach to this SetupIntent. To unset this field to null, pass in an empty string. @optional @param payment_method_configuration [String?] The ID of the payment method configuration to use with this SetupIntent. @optional @param payment_method_data [Stripe::PaymentMethodDataParams?] @optional @param payment_method_options [Stripe::PaymentMethodOptionsParam?] @optional @param payment_method_types [Array(String)?] The list of payment method types (for example, card) that this SetupIntent can set up. If you don't provide this array, it defaults to [\"card\"]. @return [Tuple(Stripe::SetupIntent, Integer, Hash)] Stripe::SetupIntent, response status code and response headers


[View source]
def post_setup_intents_with_http_info(*, attach_to_self : Bool | Nil = nil, automatic_payment_methods : Stripe::AutomaticPaymentMethodsParam | Nil = nil, confirm : Bool | Nil = nil, confirmation_token : String | Nil = nil, customer : String | Nil = nil, description : String | Nil = nil, expand : Array(String) | Nil = nil, flow_directions : Array(String) | Nil = nil, mandate_data : Stripe::PostSetupIntentsRequestMandateData | Nil = nil, metadata : Hash(String, String) | Nil = nil, on_behalf_of : String | Nil = nil, payment_method : String | Nil = nil, payment_method_configuration : String | Nil = nil, payment_method_data : Stripe::PaymentMethodDataParams | Nil = nil, payment_method_options : Stripe::PaymentMethodOptionsParam | Nil = nil, payment_method_types : Array(String) | Nil = nil, return_url : String | Nil = nil, single_use : Stripe::SetupIntentSingleUseParams | Nil = nil, usage : String | Nil = nil, use_stripe_sdk : Bool | Nil = nil) : Tuple(Stripe::SetupIntent, Int32, Hash(String, Array(String) | String)) #

<p>Creates a SetupIntent object.</p> <p>After you create the SetupIntent, attach a payment method and <a href=&quot;/docs/api/setup_intents/confirm&quot;>confirm</a> it to collect any required permissions to charge the payment method later.</p> @optional @param attach_to_self [Bool?] If present, the SetupIntent's payment method will be attached to the in-context Stripe Account. It can only be used for this Stripe Account’s own money movement flows like InboundTransfer and OutboundTransfers. It cannot be set to true when setting up a PaymentMethod for a Customer, and defaults to false when attaching a PaymentMethod to a Customer. @optional @param automatic_payment_methods [Stripe::AutomaticPaymentMethodsParam?] @optional @param confirm [Bool?] Set to true to attempt to confirm this SetupIntent immediately. This parameter defaults to false. If a card is the attached payment method, you can provide a return_url in case further authentication is necessary. @optional @param confirmation_token [String?] ID of the ConfirmationToken used to confirm this SetupIntent. If the provided ConfirmationToken contains properties that are also being provided in this request, such as payment_method, then the values in this request will take precedence. @optional @param customer [String?] 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. @optional @param description [String?] An arbitrary string attached to the object. Often useful for displaying to users. @optional @param expand [Array(String)?] Specifies which fields in the response should be expanded. @optional @param flow_directions [Array(String)?] Indicates the directions of money movement for which this payment method is intended to be used. Include inbound if you intend to use the payment method as the origin to pull funds from. Include outbound if you intend to use the payment method as the destination to send funds to. You can include both if you intend to use the payment method for both purposes. @optional @param mandate_data [Stripe::PostSetupIntentsRequestMandateData?] @optional @param metadata [Hash(String, String)?] @optional @param on_behalf_of [String?] The Stripe account ID created for this SetupIntent. @optional @param payment_method [String?] ID of the payment method (a PaymentMethod, Card, or saved Source object) to attach to this SetupIntent. @optional @param payment_method_configuration [String?] The ID of the payment method configuration to use with this SetupIntent. @optional @param payment_method_data [Stripe::PaymentMethodDataParams?] @optional @param payment_method_options [Stripe::PaymentMethodOptionsParam?] @optional @param payment_method_types [Array(String)?] The list of payment method types (for example, card) that this SetupIntent can use. If you don't provide this, it defaults to [\"card\"]. @optional @param return_url [String?] The URL to redirect your customer back to after they authenticate or cancel their payment on the payment method's app or site. To redirect to a mobile application, you can alternatively supply an application URI scheme. This parameter can only be used with confirm=true. @optional @param single_use [Stripe::SetupIntentSingleUseParams?] @optional @param usage [String?] Indicates how the payment method is intended to be used in the future. If not provided, this value defaults to off_session. @optional @param use_stripe_sdk [Bool?] Set to true when confirming server-side and using Stripe.js, iOS, or Android client-side SDKs to handle the next actions. @return [Tuple(Stripe::SetupIntent, Integer, Hash)] Stripe::SetupIntent, response status code and response headers


[View source]