Class: Stripe::PaymentIntentCreateParams

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

Defined Under Namespace

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

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods inherited from RequestParams

#to_h

Constructor Details

#initialize(allocated_funds: nil, 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, fx_quote: 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, payments_orchestration: nil, radar_options: nil, receipt_email: nil, return_url: nil, secret_key_confirmation: nil, setup_future_usage: nil, shared_payment_granted_token: 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.



5732
5733
5734
5735
5736
5737
5738
5739
5740
5741
5742
5743
5744
5745
5746
5747
5748
5749
5750
5751
5752
5753
5754
5755
5756
5757
5758
5759
5760
5761
5762
5763
5764
5765
5766
5767
5768
5769
5770
5771
5772
5773
5774
5775
5776
5777
5778
5779
5780
5781
5782
5783
5784
5785
5786
5787
5788
5789
5790
5791
5792
5793
5794
5795
5796
5797
5798
5799
5800
5801
5802
5803
5804
5805
5806
5807
5808
5809
5810
5811
5812
5813
5814
5815
5816
5817
5818
# File 'lib/stripe/params/payment_intent_create_params.rb', line 5732

def initialize(
  allocated_funds: nil,
  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,
  fx_quote: 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,
  payments_orchestration: nil,
  radar_options: nil,
  receipt_email: nil,
  return_url: nil,
  secret_key_confirmation: nil,
  setup_future_usage: nil,
  shared_payment_granted_token: nil,
  shipping: nil,
  statement_descriptor: nil,
  statement_descriptor_suffix: nil,
  transfer_data: nil,
  transfer_group: nil,
  use_stripe_sdk: nil
)
  @allocated_funds = allocated_funds
  @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
  @customer_account = 
  @description = description
  @error_on_requires_action = error_on_requires_action
  @excluded_payment_method_types = excluded_payment_method_types
  @expand = expand
  @fx_quote = fx_quote
  @hooks = hooks
  @mandate = mandate
  @mandate_data = mandate_data
  @metadata = 
  @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
  @payments_orchestration = payments_orchestration
  @radar_options = radar_options
  @receipt_email = receipt_email
  @return_url = return_url
  @secret_key_confirmation = secret_key_confirmation
  @setup_future_usage = setup_future_usage
  @shared_payment_granted_token = shared_payment_granted_token
  @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

#allocated_fundsObject

Allocated Funds configuration for this PaymentIntent.



5623
5624
5625
# File 'lib/stripe/params/payment_intent_create_params.rb', line 5623

def allocated_funds
  @allocated_funds
end

#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).



5625
5626
5627
# File 'lib/stripe/params/payment_intent_create_params.rb', line 5625

def amount
  @amount
end

#amount_detailsObject

Provides industry-specific information about the amount.



5627
5628
5629
# File 'lib/stripe/params/payment_intent_create_params.rb', line 5627

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).



5629
5630
5631
# File 'lib/stripe/params/payment_intent_create_params.rb', line 5629

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.



5631
5632
5633
# File 'lib/stripe/params/payment_intent_create_params.rb', line 5631

def automatic_payment_methods
  @automatic_payment_methods
end

#capture_methodObject

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



5633
5634
5635
# File 'lib/stripe/params/payment_intent_create_params.rb', line 5633

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).



5635
5636
5637
# File 'lib/stripe/params/payment_intent_create_params.rb', line 5635

def confirm
  @confirm
end

#confirmation_methodObject

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



5637
5638
5639
# File 'lib/stripe/params/payment_intent_create_params.rb', line 5637

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.



5641
5642
5643
# File 'lib/stripe/params/payment_intent_create_params.rb', line 5641

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).



5643
5644
5645
# File 'lib/stripe/params/payment_intent_create_params.rb', line 5643

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.



5649
5650
5651
# File 'lib/stripe/params/payment_intent_create_params.rb', line 5649

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.



5655
5656
5657
# File 'lib/stripe/params/payment_intent_create_params.rb', line 5655

def 
  @customer_account
end

#descriptionObject

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



5657
5658
5659
# File 'lib/stripe/params/payment_intent_create_params.rb', line 5657

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).



5659
5660
5661
# File 'lib/stripe/params/payment_intent_create_params.rb', line 5659

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.



5661
5662
5663
# File 'lib/stripe/params/payment_intent_create_params.rb', line 5661

def excluded_payment_method_types
  @excluded_payment_method_types
end

#expandObject

Specifies which fields in the response should be expanded.



5663
5664
5665
# File 'lib/stripe/params/payment_intent_create_params.rb', line 5663

def expand
  @expand
end

#fx_quoteObject

The FX rate in the quote is validated and used to convert the presentment amount to the settlement amount.



5665
5666
5667
# File 'lib/stripe/params/payment_intent_create_params.rb', line 5665

def fx_quote
  @fx_quote
end

#hooksObject

Automations to be run during the PaymentIntent lifecycle



5667
5668
5669
# File 'lib/stripe/params/payment_intent_create_params.rb', line 5667

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).



5669
5670
5671
# File 'lib/stripe/params/payment_intent_create_params.rb', line 5669

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).



5671
5672
5673
# File 'lib/stripe/params/payment_intent_create_params.rb', line 5671

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`.



5673
5674
5675
# File 'lib/stripe/params/payment_intent_create_params.rb', line 5673

def 
  @metadata
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).



5675
5676
5677
# File 'lib/stripe/params/payment_intent_create_params.rb', line 5675

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).



5677
5678
5679
# File 'lib/stripe/params/payment_intent_create_params.rb', line 5677

def on_behalf_of
  @on_behalf_of
end

#payment_detailsObject

Provides industry-specific information about the charge.



5679
5680
5681
# File 'lib/stripe/params/payment_intent_create_params.rb', line 5679

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



5685
5686
5687
# File 'lib/stripe/params/payment_intent_create_params.rb', line 5685

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.



5687
5688
5689
# File 'lib/stripe/params/payment_intent_create_params.rb', line 5687

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.



5691
5692
5693
# File 'lib/stripe/params/payment_intent_create_params.rb', line 5691

def payment_method_data
  @payment_method_data
end

#payment_method_optionsObject

Payment method-specific configuration for this PaymentIntent.



5693
5694
5695
# File 'lib/stripe/params/payment_intent_create_params.rb', line 5693

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).



5695
5696
5697
# File 'lib/stripe/params/payment_intent_create_params.rb', line 5695

def payment_method_types
  @payment_method_types
end

#payments_orchestrationObject

When you enable this parameter, this PaymentIntent will route your payment to processors that you configure in the dashboard.



5697
5698
5699
# File 'lib/stripe/params/payment_intent_create_params.rb', line 5697

def payments_orchestration
  @payments_orchestration
end

#radar_optionsObject

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



5699
5700
5701
# File 'lib/stripe/params/payment_intent_create_params.rb', line 5699

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).



5701
5702
5703
# File 'lib/stripe/params/payment_intent_create_params.rb', line 5701

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).



5703
5704
5705
# File 'lib/stripe/params/payment_intent_create_params.rb', line 5703

def return_url
  @return_url
end

#secret_key_confirmationObject

Indicates whether confirmation for this PaymentIntent using a secret key is ‘required` or `optional`.



5705
5706
5707
# File 'lib/stripe/params/payment_intent_create_params.rb', line 5705

def secret_key_confirmation
  @secret_key_confirmation
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).



5713
5714
5715
# File 'lib/stripe/params/payment_intent_create_params.rb', line 5713

def setup_future_usage
  @setup_future_usage
end

#shared_payment_granted_tokenObject

ID of the SharedPaymentToken used to confirm this PaymentIntent.



5715
5716
5717
# File 'lib/stripe/params/payment_intent_create_params.rb', line 5715

def shared_payment_granted_token
  @shared_payment_granted_token
end

#shippingObject

Shipping information for this PaymentIntent.



5717
5718
5719
# File 'lib/stripe/params/payment_intent_create_params.rb', line 5717

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.



5721
5722
5723
# File 'lib/stripe/params/payment_intent_create_params.rb', line 5721

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.



5723
5724
5725
# File 'lib/stripe/params/payment_intent_create_params.rb', line 5723

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).



5726
5727
5728
# File 'lib/stripe/params/payment_intent_create_params.rb', line 5726

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).



5728
5729
5730
# File 'lib/stripe/params/payment_intent_create_params.rb', line 5728

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.



5730
5731
5732
# File 'lib/stripe/params/payment_intent_create_params.rb', line 5730

def use_stripe_sdk
  @use_stripe_sdk
end