public static class PaymentIntentCreateParams.Builder
extends java.lang.Object
| Constructor and Description |
|---|
Builder() |
| Modifier and Type | Method and Description |
|---|---|
PaymentIntentCreateParams.Builder |
addAllExpand(java.util.List<java.lang.String> elements)
Add all elements to `expand` list.
|
PaymentIntentCreateParams.Builder |
addAllPaymentMethodType(java.util.List<java.lang.String> elements)
Add all elements to `paymentMethodTypes` list.
|
PaymentIntentCreateParams.Builder |
addExpand(java.lang.String element)
Add an element to `expand` list.
|
PaymentIntentCreateParams.Builder |
addPaymentMethodType(java.lang.String element)
Add an element to `paymentMethodTypes` list.
|
PaymentIntentCreateParams |
build()
Finalize and obtain parameter instance from this builder.
|
PaymentIntentCreateParams.Builder |
putAllExtraParam(java.util.Map<java.lang.String,java.lang.Object> map)
Add all map key/value pairs to `extraParams` map.
|
PaymentIntentCreateParams.Builder |
putAllMetadata(java.util.Map<java.lang.String,java.lang.String> map)
Add all map key/value pairs to `metadata` map.
|
PaymentIntentCreateParams.Builder |
putExtraParam(java.lang.String key,
java.lang.Object value)
Add a key/value pair to `extraParams` map.
|
PaymentIntentCreateParams.Builder |
putMetadata(java.lang.String key,
java.lang.String value)
Add a key/value pair to `metadata` map.
|
PaymentIntentCreateParams.Builder |
setAmount(java.lang.Long amount)
Amount intended to be collected by this PaymentIntent.
|
PaymentIntentCreateParams.Builder |
setApplicationFeeAmount(java.lang.Long applicationFeeAmount)
The amount of the application fee (if any) that will be applied to the payment and
transferred to the application owner's Stripe account.
|
PaymentIntentCreateParams.Builder |
setCaptureMethod(PaymentIntentCreateParams.CaptureMethod captureMethod)
Controls when the funds will be captured from the customer's account.
|
PaymentIntentCreateParams.Builder |
setConfirm(java.lang.Boolean confirm)
Set to
true to attempt to confirm this PaymentIntent
immediately. |
PaymentIntentCreateParams.Builder |
setConfirmationMethod(PaymentIntentCreateParams.ConfirmationMethod confirmationMethod) |
PaymentIntentCreateParams.Builder |
setCurrency(java.lang.String currency)
Three-letter ISO currency
code, in lowercase.
|
PaymentIntentCreateParams.Builder |
setCustomer(java.lang.String customer)
ID of the Customer this PaymentIntent belongs to, if one exists.
|
PaymentIntentCreateParams.Builder |
setDescription(java.lang.String description)
An arbitrary string attached to the object.
|
PaymentIntentCreateParams.Builder |
setErrorOnRequiresAction(java.lang.Boolean errorOnRequiresAction)
Set to
true to fail the payment attempt if the PaymentIntent transitions into requires_action. |
PaymentIntentCreateParams.Builder |
setMandate(java.lang.String mandate)
ID of the mandate to be used for this payment.
|
PaymentIntentCreateParams.Builder |
setMandateData(PaymentIntentCreateParams.MandateData mandateData)
This hash contains details about the Mandate to create.
|
PaymentIntentCreateParams.Builder |
setOffSession(java.lang.Boolean offSession)
Set to
true to indicate that the customer is not in your checkout flow during this
payment attempt, and therefore is unable to authenticate. |
PaymentIntentCreateParams.Builder |
setOffSession(PaymentIntentCreateParams.OffSession offSession)
Set to
true to indicate that the customer is not in your checkout flow during this
payment attempt, and therefore is unable to authenticate. |
PaymentIntentCreateParams.Builder |
setOnBehalfOf(java.lang.String onBehalfOf)
The Stripe account ID for which these funds are intended.
|
PaymentIntentCreateParams.Builder |
setPaymentMethod(java.lang.String paymentMethod)
ID of the payment method (a PaymentMethod, Card, or compatible Source
object) to attach to this PaymentIntent.
|
PaymentIntentCreateParams.Builder |
setPaymentMethodData(PaymentIntentCreateParams.PaymentMethodData paymentMethodData)
If provided, this hash will be used to create a PaymentMethod.
|
PaymentIntentCreateParams.Builder |
setPaymentMethodOptions(PaymentIntentCreateParams.PaymentMethodOptions paymentMethodOptions)
Payment-method-specific configuration for this PaymentIntent.
|
PaymentIntentCreateParams.Builder |
setReceiptEmail(java.lang.String receiptEmail)
Email address that the receipt for the resulting payment will be sent to.
|
PaymentIntentCreateParams.Builder |
setReturnUrl(java.lang.String returnUrl)
The URL to redirect your customer back to after they authenticate or cancel their payment on
the payment method's app or site.
|
PaymentIntentCreateParams.Builder |
setSavePaymentMethod(java.lang.Boolean savePaymentMethod)
If the PaymentIntent has a
payment_method and a customer or if you're
attaching a payment method to the PaymentIntent in this request, you can pass save_payment_method=true to save the payment method to the customer immediately. |
PaymentIntentCreateParams.Builder |
setSetupFutureUsage(PaymentIntentCreateParams.SetupFutureUsage setupFutureUsage)
Indicates that you intend to make future payments with this PaymentIntent's payment method.
|
PaymentIntentCreateParams.Builder |
setShipping(PaymentIntentCreateParams.Shipping shipping)
Shipping information for this PaymentIntent.
|
PaymentIntentCreateParams.Builder |
setSource(java.lang.String source)
This is a legacy field that will be removed in the future.
|
PaymentIntentCreateParams.Builder |
setStatementDescriptor(java.lang.String statementDescriptor)
For non-card charges, you can use this value as the complete description that appears on your
customers’ statements.
|
PaymentIntentCreateParams.Builder |
setStatementDescriptorSuffix(java.lang.String statementDescriptorSuffix)
Provides information about a card payment that customers see on their statements.
|
PaymentIntentCreateParams.Builder |
setTransferData(PaymentIntentCreateParams.TransferData transferData)
The parameters used to automatically create a Transfer when the payment succeeds.
|
PaymentIntentCreateParams.Builder |
setTransferGroup(java.lang.String transferGroup)
A string that identifies the resulting payment as part of a group.
|
PaymentIntentCreateParams.Builder |
setUseStripeSdk(java.lang.Boolean useStripeSdk)
Set to
true only when using manual confirmation and the iOS or Android SDKs to handle
additional authentication steps. |
public PaymentIntentCreateParams build()
public PaymentIntentCreateParams.Builder setAmount(java.lang.Long amount)
public PaymentIntentCreateParams.Builder setApplicationFeeAmount(java.lang.Long applicationFeeAmount)
public PaymentIntentCreateParams.Builder setCaptureMethod(PaymentIntentCreateParams.CaptureMethod captureMethod)
public PaymentIntentCreateParams.Builder setConfirm(java.lang.Boolean confirm)
public PaymentIntentCreateParams.Builder setConfirmationMethod(PaymentIntentCreateParams.ConfirmationMethod confirmationMethod)
public PaymentIntentCreateParams.Builder setCurrency(java.lang.String currency)
public PaymentIntentCreateParams.Builder setCustomer(java.lang.String customer)
Payment methods attached to other Customers cannot be used with this PaymentIntent.
If present in combination with setup_future_usage, this PaymentIntent's payment method will be attached to the Customer after the PaymentIntent has been confirmed and any required actions from the user are complete.
public PaymentIntentCreateParams.Builder setDescription(java.lang.String description)
public PaymentIntentCreateParams.Builder setErrorOnRequiresAction(java.lang.Boolean errorOnRequiresAction)
true to fail the payment attempt if the PaymentIntent transitions into requires_action. This parameter is intended for simpler integrations that do not handle
customer actions, like saving cards without
authentication. This parameter can only be used with confirm=true.public PaymentIntentCreateParams.Builder addExpand(java.lang.String element)
PaymentIntentCreateParams.expand for the field documentation.public PaymentIntentCreateParams.Builder addAllExpand(java.util.List<java.lang.String> elements)
PaymentIntentCreateParams.expand for the field documentation.public PaymentIntentCreateParams.Builder putExtraParam(java.lang.String key, java.lang.Object value)
PaymentIntentCreateParams.extraParams for the field documentation.public PaymentIntentCreateParams.Builder putAllExtraParam(java.util.Map<java.lang.String,java.lang.Object> map)
PaymentIntentCreateParams.extraParams for the field documentation.public PaymentIntentCreateParams.Builder setMandate(java.lang.String mandate)
confirm=true.public PaymentIntentCreateParams.Builder setMandateData(PaymentIntentCreateParams.MandateData mandateData)
confirm=true.public PaymentIntentCreateParams.Builder putMetadata(java.lang.String key, java.lang.String value)
PaymentIntentCreateParams.metadata for the field documentation.public PaymentIntentCreateParams.Builder putAllMetadata(java.util.Map<java.lang.String,java.lang.String> map)
PaymentIntentCreateParams.metadata for the field documentation.public PaymentIntentCreateParams.Builder setOffSession(java.lang.Boolean offSession)
true to indicate that the customer is not in your checkout flow during this
payment attempt, and therefore is unable to authenticate. This parameter is intended for
scenarios where you collect card details and charge them later.
This parameter can only be used with confirm=true.public PaymentIntentCreateParams.Builder setOffSession(PaymentIntentCreateParams.OffSession offSession)
true to indicate that the customer is not in your checkout flow during this
payment attempt, and therefore is unable to authenticate. This parameter is intended for
scenarios where you collect card details and charge them later.
This parameter can only be used with confirm=true.public PaymentIntentCreateParams.Builder setOnBehalfOf(java.lang.String onBehalfOf)
public PaymentIntentCreateParams.Builder setPaymentMethod(java.lang.String paymentMethod)
If neither the payment_method parameter nor the source parameter are
provided with confirm=true, source will be automatically populated with
customer.default_source to improve the migration experience for users of the Charges
API. We recommend that you explicitly provide the payment_method going forward.
public PaymentIntentCreateParams.Builder setPaymentMethodData(PaymentIntentCreateParams.PaymentMethodData paymentMethodData)
public PaymentIntentCreateParams.Builder setPaymentMethodOptions(PaymentIntentCreateParams.PaymentMethodOptions paymentMethodOptions)
public PaymentIntentCreateParams.Builder addPaymentMethodType(java.lang.String element)
PaymentIntentCreateParams.paymentMethodTypes for the field documentation.public PaymentIntentCreateParams.Builder addAllPaymentMethodType(java.util.List<java.lang.String> elements)
PaymentIntentCreateParams.paymentMethodTypes for the field documentation.public PaymentIntentCreateParams.Builder setReceiptEmail(java.lang.String receiptEmail)
receipt_email is specified for a payment in live mode, a receipt will be sent regardless of
your email settings.public PaymentIntentCreateParams.Builder setReturnUrl(java.lang.String returnUrl)
confirm=true.public PaymentIntentCreateParams.Builder setSavePaymentMethod(java.lang.Boolean savePaymentMethod)
payment_method and a customer or if you're
attaching a payment method to the PaymentIntent in this request, you can pass save_payment_method=true to save the payment method to the customer immediately.
If the payment method is already saved to a customer, this parameter does nothing. If this type of payment method cannot be saved to a customer, the request will error.
Saving a payment method using this parameter is not recommended because it will save the payment method even if it cannot be charged (e.g. the user made a typo). To ensure that only payment methods which are likely to be chargeable are saved to a customer, use the (setup_future_usage)[#payment_intents/object#payment_intent_object-setup_future_usage] property, which saves the payment method after the PaymentIntent has been confirmed and all required actions by the customer are complete.
public PaymentIntentCreateParams.Builder setSetupFutureUsage(PaymentIntentCreateParams.SetupFutureUsage setupFutureUsage)
Providing this parameter will attach the payment method to the PaymentIntent's Customer, if present, after the PaymentIntent is confirmed and any required actions from the user are complete. If no Customer was provided, the payment method can still be attached to a Customer after the transaction completes.
When processing card payments, Stripe also uses setup_future_usage to dynamically
optimize your payment flow and comply with regional legislation and network rules, such as SCA.
public PaymentIntentCreateParams.Builder setShipping(PaymentIntentCreateParams.Shipping shipping)
public PaymentIntentCreateParams.Builder setSource(java.lang.String source)
payment_method field instead, which
also supports Cards and compatible Source
objects.If neither the payment_method parameter nor the source parameter are
provided with confirm=true, this field will be automatically populated with customer.default_source to improve the migration experience for users of the Charges API. We
recommend that you explicitly provide the source or payment_method parameter
going forward.public PaymentIntentCreateParams.Builder setStatementDescriptor(java.lang.String statementDescriptor)
public PaymentIntentCreateParams.Builder setStatementDescriptorSuffix(java.lang.String statementDescriptorSuffix)
public PaymentIntentCreateParams.Builder setTransferData(PaymentIntentCreateParams.TransferData transferData)
public PaymentIntentCreateParams.Builder setTransferGroup(java.lang.String transferGroup)
public PaymentIntentCreateParams.Builder setUseStripeSdk(java.lang.Boolean useStripeSdk)
true only when using manual confirmation and the iOS or Android SDKs to handle
additional authentication steps.