Class: Stripe::PaymentIntentCreateParams

Inherits:
RequestParams show all
Defined in:
lib/stripe/params/payment_intent_create_params.rb

Defined Under Namespace

Classes: AmountDetails, AutomaticPaymentMethods, Hooks, MandateData, PaymentDetails, PaymentMethodData, PaymentMethodOptions, RadarOptions, Shipping, TransferData

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods inherited from RequestParams

attr_accessor, new, #to_h

Constructor Details

#initialize(amount: nil, amount_details: nil, application_fee_amount: nil, automatic_payment_methods: nil, capture_method: nil, confirm: nil, confirmation_method: nil, confirmation_token: nil, currency: nil, customer: nil, customer_account: nil, description: nil, error_on_requires_action: nil, excluded_payment_method_types: nil, expand: nil, hooks: nil, mandate: nil, mandate_data: nil, metadata: nil, off_session: nil, on_behalf_of: nil, payment_details: nil, payment_method: nil, payment_method_configuration: nil, payment_method_data: nil, payment_method_options: nil, payment_method_types: nil, radar_options: nil, receipt_email: nil, return_url: nil, setup_future_usage: nil, shipping: nil, statement_descriptor: nil, statement_descriptor_suffix: nil, transfer_data: nil, transfer_group: nil, use_stripe_sdk: nil) ⇒ PaymentIntentCreateParams

Returns a new instance of PaymentIntentCreateParams.



2735
2736
2737
2738
2739
2740
2741
2742
2743
2744
2745
2746
2747
2748
2749
2750
2751
2752
2753
2754
2755
2756
2757
2758
2759
2760
2761
2762
2763
2764
2765
2766
2767
2768
2769
2770
2771
2772
2773
2774
2775
2776
2777
2778
2779
2780
2781
2782
2783
2784
2785
2786
2787
2788
2789
2790
2791
2792
2793
2794
2795
2796
2797
2798
2799
2800
2801
2802
2803
2804
2805
2806
2807
2808
2809
2810
2811
# File 'lib/stripe/params/payment_intent_create_params.rb', line 2735

def initialize(
  amount: nil,
  amount_details: nil,
  application_fee_amount: nil,
  automatic_payment_methods: nil,
  capture_method: nil,
  confirm: nil,
  confirmation_method: nil,
  confirmation_token: nil,
  currency: nil,
  customer: nil,
  customer_account: nil,
  description: nil,
  error_on_requires_action: nil,
  excluded_payment_method_types: nil,
  expand: nil,
  hooks: nil,
  mandate: nil,
  mandate_data: nil,
  metadata: nil,
  off_session: nil,
  on_behalf_of: nil,
  payment_details: nil,
  payment_method: nil,
  payment_method_configuration: nil,
  payment_method_data: nil,
  payment_method_options: nil,
  payment_method_types: nil,
  radar_options: nil,
  receipt_email: nil,
  return_url: nil,
  setup_future_usage: nil,
  shipping: nil,
  statement_descriptor: nil,
  statement_descriptor_suffix: nil,
  transfer_data: nil,
  transfer_group: nil,
  use_stripe_sdk: nil
)
  @amount = amount
  @amount_details = amount_details
  @application_fee_amount = application_fee_amount
  @automatic_payment_methods = automatic_payment_methods
  @capture_method = capture_method
  @confirm = confirm
  @confirmation_method = confirmation_method
  @confirmation_token = confirmation_token
  @currency = currency
  @customer = customer
   = 
  @description = description
  @error_on_requires_action = error_on_requires_action
  @excluded_payment_method_types = excluded_payment_method_types
  @expand = expand
  @hooks = hooks
  @mandate = mandate
  @mandate_data = mandate_data
   = 
  @off_session = off_session
  @on_behalf_of = on_behalf_of
  @payment_details = payment_details
  @payment_method = payment_method
  @payment_method_configuration = payment_method_configuration
  @payment_method_data = payment_method_data
  @payment_method_options = payment_method_options
  @payment_method_types = payment_method_types
  @radar_options = radar_options
  @receipt_email = receipt_email
  @return_url = return_url
  @setup_future_usage = setup_future_usage
  @shipping = shipping
  @statement_descriptor = statement_descriptor
  @statement_descriptor_suffix = statement_descriptor_suffix
  @transfer_data = transfer_data
  @transfer_group = transfer_group
  @use_stripe_sdk = use_stripe_sdk
end

Instance Attribute Details

#amountObject

Amount intended to be collected by this PaymentIntent. A positive integer representing how much to charge in the [smallest currency unit](docs.stripe.com/currencies#zero-decimal) (e.g., 100 cents to charge $1.00 or 100 to charge ¥100, a zero-decimal currency). The minimum amount is $0.50 US or [equivalent in charge currency](docs.stripe.com/currencies#minimum-and-maximum-charge-amounts). The amount value supports up to eight digits (e.g., a value of 99999999 for a USD charge of $999,999.99).



2636
2637
2638
# File 'lib/stripe/params/payment_intent_create_params.rb', line 2636

def amount
  @amount
end

#amount_detailsObject

Provides industry-specific information about the amount.



2638
2639
2640
# File 'lib/stripe/params/payment_intent_create_params.rb', line 2638

def amount_details
  @amount_details
end

#application_fee_amountObject

The amount of the application fee (if any) that will be requested to be applied to the payment and transferred to the application owner’s Stripe account. The amount of the application fee collected will be capped at the total amount captured. For more information, see the PaymentIntents [use case for connected accounts](docs.stripe.com/payments/connected-accounts).



2640
2641
2642
# File 'lib/stripe/params/payment_intent_create_params.rb', line 2640

def application_fee_amount
  @application_fee_amount
end

#automatic_payment_methodsObject

When you enable this parameter, this PaymentIntent accepts payment methods that you enable in the Dashboard and that are compatible with this PaymentIntent’s other parameters.



2642
2643
2644
# File 'lib/stripe/params/payment_intent_create_params.rb', line 2642

def automatic_payment_methods
  @automatic_payment_methods
end

#capture_methodObject

Controls when the funds will be captured from the customer’s account.



2644
2645
2646
# File 'lib/stripe/params/payment_intent_create_params.rb', line 2644

def capture_method
  @capture_method
end

#confirmObject

Set to true to attempt to [confirm this PaymentIntent](docs.stripe.com/api/payment_intents/confirm) immediately. This parameter defaults to false. When creating and confirming a PaymentIntent at the same time, you can also provide the parameters available in the [Confirm API](docs.stripe.com/api/payment_intents/confirm).



2646
2647
2648
# File 'lib/stripe/params/payment_intent_create_params.rb', line 2646

def confirm
  @confirm
end

#confirmation_methodObject

Describes whether we can confirm this PaymentIntent automatically, or if it requires customer action to confirm the payment.



2648
2649
2650
# File 'lib/stripe/params/payment_intent_create_params.rb', line 2648

def confirmation_method
  @confirmation_method
end

#confirmation_tokenObject

ID of the ConfirmationToken used to confirm this PaymentIntent.

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.



2652
2653
2654
# File 'lib/stripe/params/payment_intent_create_params.rb', line 2652

def confirmation_token
  @confirmation_token
end

#currencyObject

Three-letter [ISO currency code](www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](stripe.com/docs/currencies).



2654
2655
2656
# File 'lib/stripe/params/payment_intent_create_params.rb', line 2654

def currency
  @currency
end

#customerObject

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

Payment methods attached to other Customers cannot be used with this PaymentIntent.

If [setup_future_usage](api.stripe.com#payment_intent_object-setup_future_usage) is set and this PaymentIntent’s payment method is not card_present, then the payment method attaches to the Customer after the PaymentIntent has been confirmed and any required actions from the user are complete. If the payment method is card_present and isn’t a digital wallet, then a [generated_card](docs.stripe.com/api/charges/object#charge_object-payment_method_details-card_present-generated_card) payment method representing the card is created and attached to the Customer instead.



2660
2661
2662
# File 'lib/stripe/params/payment_intent_create_params.rb', line 2660

def customer
  @customer
end

#customer_accountObject

ID of the Account representing the customer that this PaymentIntent belongs to, if one exists.

Payment methods attached to other Accounts cannot be used with this PaymentIntent.

If [setup_future_usage](api.stripe.com#payment_intent_object-setup_future_usage) is set and this PaymentIntent’s payment method is not card_present, then the payment method attaches to the Account after the PaymentIntent has been confirmed and any required actions from the user are complete. If the payment method is card_present and isn’t a digital wallet, then a [generated_card](docs.stripe.com/api/charges/object#charge_object-payment_method_details-card_present-generated_card) payment method representing the card is created and attached to the Account instead.



2666
2667
2668
# File 'lib/stripe/params/payment_intent_create_params.rb', line 2666

def 
  
end

#descriptionObject

An arbitrary string attached to the object. Often useful for displaying to users.



2668
2669
2670
# File 'lib/stripe/params/payment_intent_create_params.rb', line 2668

def description
  @description
end

#error_on_requires_actionObject

Set to true to fail the payment attempt if the PaymentIntent transitions into requires_action. Use this parameter for simpler integrations that don’t handle customer actions, such as [saving cards without authentication](docs.stripe.com/payments/save-card-without-authentication). This parameter can only be used with [‘confirm=true`](docs.stripe.com/api/payment_intents/create#create_payment_intent-confirm).



2670
2671
2672
# File 'lib/stripe/params/payment_intent_create_params.rb', line 2670

def error_on_requires_action
  @error_on_requires_action
end

#excluded_payment_method_typesObject

The list of payment method types to exclude from use with this payment.



2672
2673
2674
# File 'lib/stripe/params/payment_intent_create_params.rb', line 2672

def excluded_payment_method_types
  @excluded_payment_method_types
end

#expandObject

Specifies which fields in the response should be expanded.



2674
2675
2676
# File 'lib/stripe/params/payment_intent_create_params.rb', line 2674

def expand
  @expand
end

#hooksObject

Automations to be run during the PaymentIntent lifecycle



2676
2677
2678
# File 'lib/stripe/params/payment_intent_create_params.rb', line 2676

def hooks
  @hooks
end

#mandateObject

ID of the mandate that’s used for this payment. This parameter can only be used with [‘confirm=true`](docs.stripe.com/api/payment_intents/create#create_payment_intent-confirm).



2678
2679
2680
# File 'lib/stripe/params/payment_intent_create_params.rb', line 2678

def mandate
  @mandate
end

#mandate_dataObject

This hash contains details about the Mandate to create. This parameter can only be used with [‘confirm=true`](docs.stripe.com/api/payment_intents/create#create_payment_intent-confirm).



2680
2681
2682
# File 'lib/stripe/params/payment_intent_create_params.rb', line 2680

def mandate_data
  @mandate_data
end

#metadataObject

Set of [key-value pairs](docs.stripe.com/api/metadata) 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. All keys can be unset by posting an empty value to metadata.



2682
2683
2684
# File 'lib/stripe/params/payment_intent_create_params.rb', line 2682

def 
  
end

#off_sessionObject

Set to true to indicate that the customer isn’t in your checkout flow during this payment attempt and can’t authenticate. Use this parameter in scenarios where you collect card details and [charge them later](docs.stripe.com/payments/cards/charging-saved-cards). This parameter can only be used with [‘confirm=true`](docs.stripe.com/api/payment_intents/create#create_payment_intent-confirm).



2684
2685
2686
# File 'lib/stripe/params/payment_intent_create_params.rb', line 2684

def off_session
  @off_session
end

#on_behalf_ofObject

The Stripe account ID that these funds are intended for. Learn more about the [use case for connected accounts](docs.stripe.com/payments/connected-accounts).



2686
2687
2688
# File 'lib/stripe/params/payment_intent_create_params.rb', line 2686

def on_behalf_of
  @on_behalf_of
end

#payment_detailsObject

Provides industry-specific information about the charge.



2688
2689
2690
# File 'lib/stripe/params/payment_intent_create_params.rb', line 2688

def payment_details
  @payment_details
end

#payment_methodObject

ID of the payment method (a PaymentMethod, Card, or [compatible Source](docs.stripe.com/payments/payment-methods#compatibility) object) to attach to this PaymentIntent.

If you don’t provide the payment_method parameter or the source parameter with ‘confirm=true`, source automatically populates with customer.default_source to improve migration for users of the Charges API. We recommend that you explicitly provide the payment_method moving forward. If the payment method is attached to a Customer, you must also provide the ID of that Customer as the [customer](api.stripe.com#create_payment_intent-customer) parameter of this PaymentIntent. end



2694
2695
2696
# File 'lib/stripe/params/payment_intent_create_params.rb', line 2694

def payment_method
  @payment_method
end

#payment_method_configurationObject

The ID of the [payment method configuration](docs.stripe.com/api/payment_method_configurations) to use with this PaymentIntent.



2696
2697
2698
# File 'lib/stripe/params/payment_intent_create_params.rb', line 2696

def payment_method_configuration
  @payment_method_configuration
end

#payment_method_dataObject

If provided, this hash will be used to create a PaymentMethod. The new PaymentMethod will appear in the [payment_method](docs.stripe.com/api/payment_intents/object#payment_intent_object-payment_method) property on the PaymentIntent.



2700
2701
2702
# File 'lib/stripe/params/payment_intent_create_params.rb', line 2700

def payment_method_data
  @payment_method_data
end

#payment_method_optionsObject

Payment method-specific configuration for this PaymentIntent.



2702
2703
2704
# File 'lib/stripe/params/payment_intent_create_params.rb', line 2702

def payment_method_options
  @payment_method_options
end

#payment_method_typesObject

The list of payment method types (for example, a card) that this PaymentIntent can use. If you don’t provide this, Stripe will dynamically show relevant payment methods from your [payment method settings](dashboard.stripe.com/settings/payment_methods). A list of valid payment method types can be found [here](docs.stripe.com/api/payment_methods/object#payment_method_object-type).



2704
2705
2706
# File 'lib/stripe/params/payment_intent_create_params.rb', line 2704

def payment_method_types
  @payment_method_types
end

#radar_optionsObject

Options to configure Radar. Learn more about [Radar Sessions](docs.stripe.com/radar/radar-session).



2706
2707
2708
# File 'lib/stripe/params/payment_intent_create_params.rb', line 2706

def radar_options
  @radar_options
end

#receipt_emailObject

Email address to send the receipt to. If you specify receipt_email for a payment in live mode, you send a receipt regardless of your [email settings](dashboard.stripe.com/account/emails).



2708
2709
2710
# File 'lib/stripe/params/payment_intent_create_params.rb', line 2708

def receipt_email
  @receipt_email
end

#return_urlObject

The URL to redirect your customer back to after they authenticate or cancel their payment 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 can only be used with [‘confirm=true`](docs.stripe.com/api/payment_intents/create#create_payment_intent-confirm).



2710
2711
2712
# File 'lib/stripe/params/payment_intent_create_params.rb', line 2710

def return_url
  @return_url
end

#setup_future_usageObject

Indicates that you intend to make future payments with this PaymentIntent’s payment method.

If you provide a Customer with the PaymentIntent, you can use this parameter to [attach the payment method](/payments/save-during-payment) to the Customer after the PaymentIntent is confirmed and the customer completes any required actions. If you don’t provide a Customer, you can still [attach](/api/payment_methods/attach) the payment method to a Customer after the transaction completes.

If the payment method is card_present and isn’t a digital wallet, Stripe creates and attaches a [generated_card](/api/charges/object#charge_object-payment_method_details-card_present-generated_card) payment method representing the card to the Customer instead.

When processing card payments, Stripe uses setup_future_usage to help you comply with regional legislation and network rules, such as [SCA](/strong-customer-authentication).



2718
2719
2720
# File 'lib/stripe/params/payment_intent_create_params.rb', line 2718

def setup_future_usage
  @setup_future_usage
end

#shippingObject

Shipping information for this PaymentIntent.



2720
2721
2722
# File 'lib/stripe/params/payment_intent_create_params.rb', line 2720

def shipping
  @shipping
end

#statement_descriptorObject

Text that appears on the customer’s statement as the statement descriptor for a non-card charge. This value overrides the account’s default statement descriptor. For information about requirements, including the 22-character limit, see [the Statement Descriptor docs](docs.stripe.com/get-started/account/statement-descriptors).

Setting this value for a card charge returns an error. For card charges, set the [statement_descriptor_suffix](docs.stripe.com/get-started/account/statement-descriptors#dynamic) instead.



2724
2725
2726
# File 'lib/stripe/params/payment_intent_create_params.rb', line 2724

def statement_descriptor
  @statement_descriptor
end

#statement_descriptor_suffixObject

Provides information about a card charge. Concatenated to the account’s [statement descriptor prefix](docs.stripe.com/get-started/account/statement-descriptors#static) to form the complete statement descriptor that appears on the customer’s statement.



2726
2727
2728
# File 'lib/stripe/params/payment_intent_create_params.rb', line 2726

def statement_descriptor_suffix
  @statement_descriptor_suffix
end

#transfer_dataObject

The parameters that you can use to automatically create a Transfer. Learn more about the [use case for connected accounts](docs.stripe.com/payments/connected-accounts).



2729
2730
2731
# File 'lib/stripe/params/payment_intent_create_params.rb', line 2729

def transfer_data
  @transfer_data
end

#transfer_groupObject

A string that identifies the resulting payment as part of a group. Learn more about the [use case for connected accounts](docs.stripe.com/connect/separate-charges-and-transfers).



2731
2732
2733
# File 'lib/stripe/params/payment_intent_create_params.rb', line 2731

def transfer_group
  @transfer_group
end

#use_stripe_sdkObject

Set to true when confirming server-side and using Stripe.js, iOS, or Android client-side SDKs to handle the next actions.



2733
2734
2735
# File 'lib/stripe/params/payment_intent_create_params.rb', line 2733

def use_stripe_sdk
  @use_stripe_sdk
end