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

attr_accessor, coerce_params, coerce_value, field_encodings, new, #to_h

Constructor Details

#initialize(allocated_funds: nil, allowed_payment_method_types: 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, 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.



6582
6583
6584
6585
6586
6587
6588
6589
6590
6591
6592
6593
6594
6595
6596
6597
6598
6599
6600
6601
6602
6603
6604
6605
6606
6607
6608
6609
6610
6611
6612
6613
6614
6615
6616
6617
6618
6619
6620
6621
6622
6623
6624
6625
6626
6627
6628
6629
6630
6631
6632
6633
6634
6635
6636
6637
6638
6639
6640
6641
6642
6643
6644
6645
6646
6647
6648
6649
6650
6651
6652
6653
6654
6655
6656
6657
6658
6659
6660
6661
6662
6663
6664
6665
6666
6667
6668
# File 'lib/stripe/params/payment_intent_create_params.rb', line 6582

def initialize(
  allocated_funds: nil,
  allowed_payment_method_types: 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,
  shipping: nil,
  statement_descriptor: nil,
  statement_descriptor_suffix: nil,
  transfer_data: nil,
  transfer_group: nil,
  use_stripe_sdk: nil
)
  @allocated_funds = allocated_funds
  @allowed_payment_method_types = allowed_payment_method_types
  @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
  @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.



6473
6474
6475
# File 'lib/stripe/params/payment_intent_create_params.rb', line 6473

def allocated_funds
  @allocated_funds
end

#allowed_payment_method_typesObject

The list of payment method types allowed for use with this payment. Stripe automatically returns compatible payment methods from this list in the payment_method_types field of the response, based on the other PaymentIntent parameters, such as currency, amount, and customer.



6475
6476
6477
# File 'lib/stripe/params/payment_intent_create_params.rb', line 6475

def allowed_payment_method_types
  @allowed_payment_method_types
end

#amountObject

Amount intended to be collected by this PaymentIntent. A positive integer representing how much to charge in the smallest currency unit (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. The amount value supports up to eight digits (e.g., a value of 99999999 for a USD charge of $999,999.99).



6477
6478
6479
# File 'lib/stripe/params/payment_intent_create_params.rb', line 6477

def amount
  @amount
end

#amount_detailsObject

Provides industry-specific information about the amount.



6479
6480
6481
# File 'lib/stripe/params/payment_intent_create_params.rb', line 6479

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.



6481
6482
6483
# File 'lib/stripe/params/payment_intent_create_params.rb', line 6481

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.



6483
6484
6485
# File 'lib/stripe/params/payment_intent_create_params.rb', line 6483

def automatic_payment_methods
  @automatic_payment_methods
end

#capture_methodObject

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



6485
6486
6487
# File 'lib/stripe/params/payment_intent_create_params.rb', line 6485

def capture_method
  @capture_method
end

#confirmObject

Set to true to attempt to confirm this PaymentIntent 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.



6487
6488
6489
# File 'lib/stripe/params/payment_intent_create_params.rb', line 6487

def confirm
  @confirm
end

#confirmation_methodObject

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



6489
6490
6491
# File 'lib/stripe/params/payment_intent_create_params.rb', line 6489

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.



6493
6494
6495
# File 'lib/stripe/params/payment_intent_create_params.rb', line 6493

def confirmation_token
  @confirmation_token
end

#currencyObject

Three-letter ISO currency code, in lowercase. Must be a supported currency.



6495
6496
6497
# File 'lib/stripe/params/payment_intent_create_params.rb', line 6495

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 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 payment method representing the card is created and attached to the Customer instead.



6501
6502
6503
# File 'lib/stripe/params/payment_intent_create_params.rb', line 6501

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 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 payment method representing the card is created and attached to the Account instead.



6507
6508
6509
# File 'lib/stripe/params/payment_intent_create_params.rb', line 6507

def 
  @customer_account
end

#descriptionObject

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



6509
6510
6511
# File 'lib/stripe/params/payment_intent_create_params.rb', line 6509

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. This parameter can only be used with confirm=true.



6511
6512
6513
# File 'lib/stripe/params/payment_intent_create_params.rb', line 6511

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.



6513
6514
6515
# File 'lib/stripe/params/payment_intent_create_params.rb', line 6513

def excluded_payment_method_types
  @excluded_payment_method_types
end

#expandObject

Specifies which fields in the response should be expanded.



6515
6516
6517
# File 'lib/stripe/params/payment_intent_create_params.rb', line 6515

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.



6517
6518
6519
# File 'lib/stripe/params/payment_intent_create_params.rb', line 6517

def fx_quote
  @fx_quote
end

#hooksObject

Automations to be run during the PaymentIntent lifecycle



6519
6520
6521
# File 'lib/stripe/params/payment_intent_create_params.rb', line 6519

def hooks
  @hooks
end

#mandateObject

ID of the mandate that's used for this payment. This parameter can only be used with confirm=true.



6521
6522
6523
# File 'lib/stripe/params/payment_intent_create_params.rb', line 6521

def mandate
  @mandate
end

#mandate_dataObject

This hash contains details about the Mandate to create. This parameter can only be used with confirm=true.



6523
6524
6525
# File 'lib/stripe/params/payment_intent_create_params.rb', line 6523

def mandate_data
  @mandate_data
end

#metadataObject

Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to metadata.



6525
6526
6527
# File 'lib/stripe/params/payment_intent_create_params.rb', line 6525

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 payment method details and charge them later. This parameter can only be used with confirm=true.



6527
6528
6529
# File 'lib/stripe/params/payment_intent_create_params.rb', line 6527

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.



6529
6530
6531
# File 'lib/stripe/params/payment_intent_create_params.rb', line 6529

def on_behalf_of
  @on_behalf_of
end

#payment_detailsObject

Provides industry-specific information about the charge.



6531
6532
6533
# File 'lib/stripe/params/payment_intent_create_params.rb', line 6531

def payment_details
  @payment_details
end

#payment_methodObject

ID of the payment method (a PaymentMethod, Card, or compatible Source 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 parameter of this PaymentIntent. end



6537
6538
6539
# File 'lib/stripe/params/payment_intent_create_params.rb', line 6537

def payment_method
  @payment_method
end

#payment_method_configurationObject

The ID of the payment method configuration to use with this PaymentIntent.



6539
6540
6541
# File 'lib/stripe/params/payment_intent_create_params.rb', line 6539

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 property on the PaymentIntent.



6543
6544
6545
# File 'lib/stripe/params/payment_intent_create_params.rb', line 6543

def payment_method_data
  @payment_method_data
end

#payment_method_optionsObject

Payment method-specific configuration for this PaymentIntent.



6545
6546
6547
# File 'lib/stripe/params/payment_intent_create_params.rb', line 6545

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. A list of valid payment method types can be found here.



6547
6548
6549
# File 'lib/stripe/params/payment_intent_create_params.rb', line 6547

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.



6549
6550
6551
# File 'lib/stripe/params/payment_intent_create_params.rb', line 6549

def payments_orchestration
  @payments_orchestration
end

#radar_optionsObject

Options to configure Radar. Learn more about Radar Sessions.



6551
6552
6553
# File 'lib/stripe/params/payment_intent_create_params.rb', line 6551

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.



6553
6554
6555
# File 'lib/stripe/params/payment_intent_create_params.rb', line 6553

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.



6555
6556
6557
# File 'lib/stripe/params/payment_intent_create_params.rb', line 6555

def return_url
  @return_url
end

#secret_key_confirmationObject

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



6557
6558
6559
# File 'lib/stripe/params/payment_intent_create_params.rb', line 6557

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



6565
6566
6567
# File 'lib/stripe/params/payment_intent_create_params.rb', line 6565

def setup_future_usage
  @setup_future_usage
end

#shippingObject

Shipping information for this PaymentIntent.



6567
6568
6569
# File 'lib/stripe/params/payment_intent_create_params.rb', line 6567

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.

Setting this value for a card charge returns an error. For card charges, set the statement_descriptor_suffix instead.



6571
6572
6573
# File 'lib/stripe/params/payment_intent_create_params.rb', line 6571

def statement_descriptor
  @statement_descriptor
end

#statement_descriptor_suffixObject

Provides information about a card charge. Concatenated to the account's statement descriptor prefix to form the complete statement descriptor that appears on the customer's statement.



6573
6574
6575
# File 'lib/stripe/params/payment_intent_create_params.rb', line 6573

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.



6576
6577
6578
# File 'lib/stripe/params/payment_intent_create_params.rb', line 6576

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.



6578
6579
6580
# File 'lib/stripe/params/payment_intent_create_params.rb', line 6578

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.



6580
6581
6582
# File 'lib/stripe/params/payment_intent_create_params.rb', line 6580

def use_stripe_sdk
  @use_stripe_sdk
end