Class: Stripe::PaymentIntentService::CreateParams
- Inherits:
-
RequestParams
- Object
- RequestParams
- Stripe::PaymentIntentService::CreateParams
- Defined in:
- lib/stripe/services/payment_intent_service.rb
Defined Under Namespace
Classes: AsyncWorkflows, AutomaticPaymentMethods, MandateData, PaymentDetails, PaymentMethodData, PaymentMethodOptions, RadarOptions, Shipping, TransferData
Instance Attribute Summary collapse
-
#amount ⇒ Object
Amount intended to be collected by this PaymentIntent.
-
#application_fee_amount ⇒ Object
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.
-
#async_workflows ⇒ Object
Automations to be run during the PaymentIntent lifecycle.
-
#automatic_payment_methods ⇒ Object
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.
-
#capture_method ⇒ Object
Controls when the funds will be captured from the customer’s account.
-
#confirm ⇒ Object
Set to ‘true` to attempt to [confirm this PaymentIntent](stripe.com/docs/api/payment_intents/confirm) immediately.
-
#confirmation_method ⇒ Object
Describes whether we can confirm this PaymentIntent automatically, or if it requires customer action to confirm the payment.
-
#confirmation_token ⇒ Object
ID of the ConfirmationToken used to confirm this PaymentIntent.
-
#currency ⇒ Object
Three-letter [ISO currency code](www.iso.org/iso-4217-currency-codes.html), in lowercase.
-
#customer ⇒ Object
ID of the Customer this PaymentIntent belongs to, if one exists.
-
#customer_account ⇒ Object
ID of the Account this PaymentIntent belongs to, if one exists.
-
#description ⇒ Object
An arbitrary string attached to the object.
-
#error_on_requires_action ⇒ Object
Set to ‘true` to fail the payment attempt if the PaymentIntent transitions into `requires_action`.
-
#expand ⇒ Object
Specifies which fields in the response should be expanded.
-
#mandate ⇒ Object
ID of the mandate that’s used for this payment.
-
#mandate_data ⇒ Object
This hash contains details about the Mandate to create.
-
#metadata ⇒ Object
Set of [key-value pairs](stripe.com/docs/api/metadata) that you can attach to an object.
-
#off_session ⇒ Object
Set to ‘true` to indicate that the customer isn’t in your checkout flow during this payment attempt and can’t authenticate.
-
#on_behalf_of ⇒ Object
The Stripe account ID that these funds are intended for.
-
#payment_details ⇒ Object
Provides industry-specific information about the charge.
-
#payment_method ⇒ Object
ID of the payment method (a PaymentMethod, Card, or [compatible Source](stripe.com/docs/payments/payment-methods#compatibility) object) to attach to this PaymentIntent.
-
#payment_method_configuration ⇒ Object
The ID of the [payment method configuration](stripe.com/docs/api/payment_method_configurations) to use with this PaymentIntent.
-
#payment_method_data ⇒ Object
If provided, this hash will be used to create a PaymentMethod.
-
#payment_method_options ⇒ Object
Payment method-specific configuration for this PaymentIntent.
-
#payment_method_types ⇒ Object
The list of payment method types (for example, a card) that this PaymentIntent can use.
-
#radar_options ⇒ Object
Options to configure Radar.
-
#receipt_email ⇒ Object
Email address to send the receipt to.
-
#return_url ⇒ Object
The URL to redirect your customer back to after they authenticate or cancel their payment on the payment method’s app or site.
-
#secret_key_confirmation ⇒ Object
Indicates whether confirmation for this PaymentIntent using a secret key is ‘required` or `optional`.
-
#setup_future_usage ⇒ Object
Indicates that you intend to make future payments with this PaymentIntent’s payment method.
-
#shipping ⇒ Object
Shipping information for this PaymentIntent.
-
#statement_descriptor ⇒ Object
Text that appears on the customer’s statement as the statement descriptor for a non-card charge.
-
#statement_descriptor_suffix ⇒ Object
Provides information about a card charge.
-
#transfer_data ⇒ Object
The parameters that you can use to automatically create a Transfer.
-
#transfer_group ⇒ Object
A string that identifies the resulting payment as part of a group.
-
#use_stripe_sdk ⇒ Object
Set to ‘true` when confirming server-side and using Stripe.js, iOS, or Android client-side SDKs to handle the next actions.
Instance Method Summary collapse
Methods inherited from RequestParams
Constructor Details
#initialize(amount: nil, application_fee_amount: nil, async_workflows: 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, expand: 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, 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) ⇒ CreateParams
Returns a new instance of CreateParams.
3492 3493 3494 3495 3496 3497 3498 3499 3500 3501 3502 3503 3504 3505 3506 3507 3508 3509 3510 3511 3512 3513 3514 3515 3516 3517 3518 3519 3520 3521 3522 3523 3524 3525 3526 3527 3528 3529 3530 3531 3532 3533 3534 3535 3536 3537 3538 3539 3540 3541 3542 3543 3544 3545 3546 3547 3548 3549 3550 3551 3552 3553 3554 3555 3556 3557 3558 3559 3560 3561 3562 3563 3564 3565 3566 |
# File 'lib/stripe/services/payment_intent_service.rb', line 3492 def initialize( amount: nil, application_fee_amount: nil, async_workflows: 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, expand: 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, 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 ) @amount = amount @application_fee_amount = application_fee_amount @async_workflows = async_workflows @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 = customer_account @description = description @error_on_requires_action = error_on_requires_action @expand = @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_types = payment_method_types @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
#amount ⇒ Object
Amount intended to be collected by this PaymentIntent. A positive integer representing how much to charge in the [smallest currency unit](stripe.com/docs/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](stripe.com/docs/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).
3397 3398 3399 |
# File 'lib/stripe/services/payment_intent_service.rb', line 3397 def amount @amount end |
#application_fee_amount ⇒ Object
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](stripe.com/docs/payments/connected-accounts).
3399 3400 3401 |
# File 'lib/stripe/services/payment_intent_service.rb', line 3399 def application_fee_amount @application_fee_amount end |
#async_workflows ⇒ Object
Automations to be run during the PaymentIntent lifecycle
3401 3402 3403 |
# File 'lib/stripe/services/payment_intent_service.rb', line 3401 def async_workflows @async_workflows end |
#automatic_payment_methods ⇒ Object
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.
3403 3404 3405 |
# File 'lib/stripe/services/payment_intent_service.rb', line 3403 def automatic_payment_methods @automatic_payment_methods end |
#capture_method ⇒ Object
Controls when the funds will be captured from the customer’s account.
3405 3406 3407 |
# File 'lib/stripe/services/payment_intent_service.rb', line 3405 def capture_method @capture_method end |
#confirm ⇒ Object
Set to ‘true` to attempt to [confirm this PaymentIntent](stripe.com/docs/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](stripe.com/docs/api/payment_intents/confirm).
3407 3408 3409 |
# File 'lib/stripe/services/payment_intent_service.rb', line 3407 def confirm @confirm end |
#confirmation_method ⇒ Object
Describes whether we can confirm this PaymentIntent automatically, or if it requires customer action to confirm the payment.
3409 3410 3411 |
# File 'lib/stripe/services/payment_intent_service.rb', line 3409 def confirmation_method @confirmation_method end |
#confirmation_token ⇒ Object
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.
3413 3414 3415 |
# File 'lib/stripe/services/payment_intent_service.rb', line 3413 def confirmation_token @confirmation_token end |
#currency ⇒ Object
Three-letter [ISO currency code](www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](stripe.com/docs/currencies).
3415 3416 3417 |
# File 'lib/stripe/services/payment_intent_service.rb', line 3415 def currency @currency end |
#customer ⇒ Object
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](stripe.com/docs/api#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.
3421 3422 3423 |
# File 'lib/stripe/services/payment_intent_service.rb', line 3421 def customer @customer end |
#customer_account ⇒ Object
ID of the Account this PaymentIntent belongs to, if one exists.
Payment methods attached to other Accounts cannot be used with this PaymentIntent.
If [setup_future_usage](stripe.com/docs/api#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.
3427 3428 3429 |
# File 'lib/stripe/services/payment_intent_service.rb', line 3427 def customer_account @customer_account end |
#description ⇒ Object
An arbitrary string attached to the object. Often useful for displaying to users.
3429 3430 3431 |
# File 'lib/stripe/services/payment_intent_service.rb', line 3429 def description @description end |
#error_on_requires_action ⇒ Object
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](stripe.com/docs/payments/save-card-without-authentication). This parameter can only be used with [‘confirm=true`](stripe.com/docs/api/payment_intents/create#create_payment_intent-confirm).
3431 3432 3433 |
# File 'lib/stripe/services/payment_intent_service.rb', line 3431 def error_on_requires_action @error_on_requires_action end |
#expand ⇒ Object
Specifies which fields in the response should be expanded.
3433 3434 3435 |
# File 'lib/stripe/services/payment_intent_service.rb', line 3433 def @expand end |
#mandate ⇒ Object
ID of the mandate that’s used for this payment. This parameter can only be used with [‘confirm=true`](stripe.com/docs/api/payment_intents/create#create_payment_intent-confirm).
3435 3436 3437 |
# File 'lib/stripe/services/payment_intent_service.rb', line 3435 def mandate @mandate end |
#mandate_data ⇒ Object
This hash contains details about the Mandate to create. This parameter can only be used with [‘confirm=true`](stripe.com/docs/api/payment_intents/create#create_payment_intent-confirm).
3437 3438 3439 |
# File 'lib/stripe/services/payment_intent_service.rb', line 3437 def mandate_data @mandate_data end |
#metadata ⇒ Object
Set of [key-value pairs](stripe.com/docs/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`.
3439 3440 3441 |
# File 'lib/stripe/services/payment_intent_service.rb', line 3439 def @metadata end |
#off_session ⇒ Object
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](stripe.com/docs/payments/cards/charging-saved-cards). This parameter can only be used with [‘confirm=true`](stripe.com/docs/api/payment_intents/create#create_payment_intent-confirm).
3441 3442 3443 |
# File 'lib/stripe/services/payment_intent_service.rb', line 3441 def off_session @off_session end |
#on_behalf_of ⇒ Object
The Stripe account ID that these funds are intended for. Learn more about the [use case for connected accounts](stripe.com/docs/payments/connected-accounts).
3443 3444 3445 |
# File 'lib/stripe/services/payment_intent_service.rb', line 3443 def on_behalf_of @on_behalf_of end |
#payment_details ⇒ Object
Provides industry-specific information about the charge.
3445 3446 3447 |
# File 'lib/stripe/services/payment_intent_service.rb', line 3445 def payment_details @payment_details end |
#payment_method ⇒ Object
ID of the payment method (a PaymentMethod, Card, or [compatible Source](stripe.com/docs/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.
3449 3450 3451 |
# File 'lib/stripe/services/payment_intent_service.rb', line 3449 def payment_method @payment_method end |
#payment_method_configuration ⇒ Object
The ID of the [payment method configuration](stripe.com/docs/api/payment_method_configurations) to use with this PaymentIntent.
3451 3452 3453 |
# File 'lib/stripe/services/payment_intent_service.rb', line 3451 def payment_method_configuration @payment_method_configuration end |
#payment_method_data ⇒ Object
If provided, this hash will be used to create a PaymentMethod. The new PaymentMethod will appear in the [payment_method](stripe.com/docs/api/payment_intents/object#payment_intent_object-payment_method) property on the PaymentIntent.
3455 3456 3457 |
# File 'lib/stripe/services/payment_intent_service.rb', line 3455 def payment_method_data @payment_method_data end |
#payment_method_options ⇒ Object
Payment method-specific configuration for this PaymentIntent.
3457 3458 3459 |
# File 'lib/stripe/services/payment_intent_service.rb', line 3457 def @payment_method_options end |
#payment_method_types ⇒ Object
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).
3459 3460 3461 |
# File 'lib/stripe/services/payment_intent_service.rb', line 3459 def payment_method_types @payment_method_types end |
#radar_options ⇒ Object
Options to configure Radar. Learn more about [Radar Sessions](stripe.com/docs/radar/radar-session).
3461 3462 3463 |
# File 'lib/stripe/services/payment_intent_service.rb', line 3461 def @radar_options end |
#receipt_email ⇒ Object
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).
3463 3464 3465 |
# File 'lib/stripe/services/payment_intent_service.rb', line 3463 def receipt_email @receipt_email end |
#return_url ⇒ Object
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`](stripe.com/docs/api/payment_intents/create#create_payment_intent-confirm).
3465 3466 3467 |
# File 'lib/stripe/services/payment_intent_service.rb', line 3465 def return_url @return_url end |
#secret_key_confirmation ⇒ Object
Indicates whether confirmation for this PaymentIntent using a secret key is ‘required` or `optional`.
3467 3468 3469 |
# File 'lib/stripe/services/payment_intent_service.rb', line 3467 def secret_key_confirmation @secret_key_confirmation end |
#setup_future_usage ⇒ Object
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).
3475 3476 3477 |
# File 'lib/stripe/services/payment_intent_service.rb', line 3475 def setup_future_usage @setup_future_usage end |
#shipping ⇒ Object
Shipping information for this PaymentIntent.
3477 3478 3479 |
# File 'lib/stripe/services/payment_intent_service.rb', line 3477 def shipping @shipping end |
#statement_descriptor ⇒ Object
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.
3481 3482 3483 |
# File 'lib/stripe/services/payment_intent_service.rb', line 3481 def statement_descriptor @statement_descriptor end |
#statement_descriptor_suffix ⇒ Object
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.
3483 3484 3485 |
# File 'lib/stripe/services/payment_intent_service.rb', line 3483 def statement_descriptor_suffix @statement_descriptor_suffix end |
#transfer_data ⇒ Object
The parameters that you can use to automatically create a Transfer. Learn more about the [use case for connected accounts](stripe.com/docs/payments/connected-accounts).
3486 3487 3488 |
# File 'lib/stripe/services/payment_intent_service.rb', line 3486 def transfer_data @transfer_data end |
#transfer_group ⇒ Object
A string that identifies the resulting payment as part of a group. Learn more about the [use case for connected accounts](stripe.com/docs/connect/separate-charges-and-transfers).
3488 3489 3490 |
# File 'lib/stripe/services/payment_intent_service.rb', line 3488 def transfer_group @transfer_group end |
#use_stripe_sdk ⇒ Object
Set to ‘true` when confirming server-side and using Stripe.js, iOS, or Android client-side SDKs to handle the next actions.
3490 3491 3492 |
# File 'lib/stripe/services/payment_intent_service.rb', line 3490 def use_stripe_sdk @use_stripe_sdk end |