Class PaymentIntentCreateParams.Builder
- java.lang.Object
-
- com.stripe.param.PaymentIntentCreateParams.Builder
-
- Enclosing class:
- PaymentIntentCreateParams
public static class PaymentIntentCreateParams.Builder extends java.lang.Object
-
-
Constructor Summary
Constructors Constructor Description Builder()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description PaymentIntentCreateParams.BuilderaddAllExpand(java.util.List<java.lang.String> elements)Add all elements to `expand` list.PaymentIntentCreateParams.BuilderaddAllPaymentMethodType(java.util.List<java.lang.String> elements)Add all elements to `paymentMethodTypes` list.PaymentIntentCreateParams.BuilderaddExpand(java.lang.String element)Add an element to `expand` list.PaymentIntentCreateParams.BuilderaddPaymentMethodType(java.lang.String element)Add an element to `paymentMethodTypes` list.PaymentIntentCreateParamsbuild()Finalize and obtain parameter instance from this builder.PaymentIntentCreateParams.BuilderputAllExtraParam(java.util.Map<java.lang.String,java.lang.Object> map)Add all map key/value pairs to `extraParams` map.PaymentIntentCreateParams.BuilderputAllMetadata(java.util.Map<java.lang.String,java.lang.String> map)Add all map key/value pairs to `metadata` map.PaymentIntentCreateParams.BuilderputExtraParam(java.lang.String key, java.lang.Object value)Add a key/value pair to `extraParams` map.PaymentIntentCreateParams.BuilderputMetadata(java.lang.String key, java.lang.String value)Add a key/value pair to `metadata` map.PaymentIntentCreateParams.BuildersetAmount(java.lang.Long amount)Amount intended to be collected by this PaymentIntent.PaymentIntentCreateParams.BuildersetApplicationFeeAmount(java.lang.Long applicationFeeAmount)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.PaymentIntentCreateParams.BuildersetCaptureMethod(PaymentIntentCreateParams.CaptureMethod captureMethod)Controls when the funds will be captured from the customer's account.PaymentIntentCreateParams.BuildersetConfirm(java.lang.Boolean confirm)Set totrueto attempt to confirm this PaymentIntent immediately.PaymentIntentCreateParams.BuildersetConfirmationMethod(PaymentIntentCreateParams.ConfirmationMethod confirmationMethod)PaymentIntentCreateParams.BuildersetCurrency(java.lang.String currency)Three-letter ISO currency code, in lowercase.PaymentIntentCreateParams.BuildersetCustomer(java.lang.String customer)ID of the Customer this PaymentIntent belongs to, if one exists.PaymentIntentCreateParams.BuildersetDescription(java.lang.String description)An arbitrary string attached to the object.PaymentIntentCreateParams.BuildersetErrorOnRequiresAction(java.lang.Boolean errorOnRequiresAction)Set totrueto fail the payment attempt if the PaymentIntent transitions intorequires_action.PaymentIntentCreateParams.BuildersetMandate(java.lang.String mandate)ID of the mandate to be used for this payment.PaymentIntentCreateParams.BuildersetMandateData(PaymentIntentCreateParams.MandateData mandateData)This hash contains details about the Mandate to create.PaymentIntentCreateParams.BuildersetOffSession(PaymentIntentCreateParams.OffSession offSession)Set totrueto indicate that the customer is not in your checkout flow during this payment attempt, and therefore is unable to authenticate.PaymentIntentCreateParams.BuildersetOffSession(java.lang.Boolean offSession)Set totrueto indicate that the customer is not in your checkout flow during this payment attempt, and therefore is unable to authenticate.PaymentIntentCreateParams.BuildersetOnBehalfOf(java.lang.String onBehalfOf)The Stripe account ID for which these funds are intended.PaymentIntentCreateParams.BuildersetPaymentMethod(java.lang.String paymentMethod)ID of the payment method (a PaymentMethod, Card, or compatible Source object) to attach to this PaymentIntent.PaymentIntentCreateParams.BuildersetPaymentMethodData(PaymentIntentCreateParams.PaymentMethodData paymentMethodData)If provided, this hash will be used to create a PaymentMethod.PaymentIntentCreateParams.BuildersetPaymentMethodOptions(PaymentIntentCreateParams.PaymentMethodOptions paymentMethodOptions)Payment-method-specific configuration for this PaymentIntent.PaymentIntentCreateParams.BuildersetReceiptEmail(java.lang.String receiptEmail)Email address that the receipt for the resulting payment will be sent to.PaymentIntentCreateParams.BuildersetReturnUrl(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.BuildersetSetupFutureUsage(PaymentIntentCreateParams.SetupFutureUsage setupFutureUsage)Indicates that you intend to make future payments with this PaymentIntent's payment method.PaymentIntentCreateParams.BuildersetShipping(PaymentIntentCreateParams.Shipping shipping)Shipping information for this PaymentIntent.PaymentIntentCreateParams.BuildersetStatementDescriptor(java.lang.String statementDescriptor)For non-card charges, you can use this value as the complete description that appears on your customers’ statements.PaymentIntentCreateParams.BuildersetStatementDescriptorSuffix(java.lang.String statementDescriptorSuffix)Provides information about a card payment that customers see on their statements.PaymentIntentCreateParams.BuildersetTransferData(PaymentIntentCreateParams.TransferData transferData)The parameters used to automatically create a Transfer when the payment succeeds.PaymentIntentCreateParams.BuildersetTransferGroup(java.lang.String transferGroup)A string that identifies the resulting payment as part of a group.PaymentIntentCreateParams.BuildersetUseStripeSdk(java.lang.Boolean useStripeSdk)Set totrueonly when using manual confirmation and the iOS or Android SDKs to handle additional authentication steps.
-
-
-
Method Detail
-
build
public PaymentIntentCreateParams build()
Finalize and obtain parameter instance from this builder.
-
setAmount
public PaymentIntentCreateParams.Builder setAmount(java.lang.Long amount)
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).
-
setApplicationFeeAmount
public PaymentIntentCreateParams.Builder setApplicationFeeAmount(java.lang.Long applicationFeeAmount)
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 payment amount. For more information, see the PaymentIntents use case for connected accounts.
-
setCaptureMethod
public PaymentIntentCreateParams.Builder setCaptureMethod(PaymentIntentCreateParams.CaptureMethod captureMethod)
Controls when the funds will be captured from the customer's account.
-
setConfirm
public PaymentIntentCreateParams.Builder setConfirm(java.lang.Boolean confirm)
-
setConfirmationMethod
public PaymentIntentCreateParams.Builder setConfirmationMethod(PaymentIntentCreateParams.ConfirmationMethod confirmationMethod)
-
setCurrency
public PaymentIntentCreateParams.Builder setCurrency(java.lang.String currency)
Three-letter ISO currency code, in lowercase. Must be a supported currency.
-
setCustomer
public PaymentIntentCreateParams.Builder setCustomer(java.lang.String customer)
ID of the Customer this PaymentIntent belongs to, if one exists.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.
-
setDescription
public PaymentIntentCreateParams.Builder setDescription(java.lang.String description)
An arbitrary string attached to the object. Often useful for displaying to users.
-
setErrorOnRequiresAction
public PaymentIntentCreateParams.Builder setErrorOnRequiresAction(java.lang.Boolean errorOnRequiresAction)
Set totrueto fail the payment attempt if the PaymentIntent transitions intorequires_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 withconfirm=true.
-
addExpand
public PaymentIntentCreateParams.Builder addExpand(java.lang.String element)
Add an element to `expand` list. A list is initialized for the first `add/addAll` call, and subsequent calls adds additional elements to the original list. SeePaymentIntentCreateParams.expandfor the field documentation.
-
addAllExpand
public PaymentIntentCreateParams.Builder addAllExpand(java.util.List<java.lang.String> elements)
Add all elements to `expand` list. A list is initialized for the first `add/addAll` call, and subsequent calls adds additional elements to the original list. SeePaymentIntentCreateParams.expandfor the field documentation.
-
putExtraParam
public PaymentIntentCreateParams.Builder putExtraParam(java.lang.String key, java.lang.Object value)
Add a key/value pair to `extraParams` map. A map is initialized for the first `put/putAll` call, and subsequent calls add additional key/value pairs to the original map. SeePaymentIntentCreateParams.extraParamsfor the field documentation.
-
putAllExtraParam
public PaymentIntentCreateParams.Builder putAllExtraParam(java.util.Map<java.lang.String,java.lang.Object> map)
Add all map key/value pairs to `extraParams` map. A map is initialized for the first `put/putAll` call, and subsequent calls add additional key/value pairs to the original map. SeePaymentIntentCreateParams.extraParamsfor the field documentation.
-
setMandate
public PaymentIntentCreateParams.Builder setMandate(java.lang.String mandate)
ID of the mandate to be used for this payment. This parameter can only be used withconfirm=true.
-
setMandateData
public PaymentIntentCreateParams.Builder setMandateData(PaymentIntentCreateParams.MandateData mandateData)
This hash contains details about the Mandate to create. This parameter can only be used withconfirm=true.
-
putMetadata
public PaymentIntentCreateParams.Builder putMetadata(java.lang.String key, java.lang.String value)
Add a key/value pair to `metadata` map. A map is initialized for the first `put/putAll` call, and subsequent calls add additional key/value pairs to the original map. SeePaymentIntentCreateParams.metadatafor the field documentation.
-
putAllMetadata
public PaymentIntentCreateParams.Builder putAllMetadata(java.util.Map<java.lang.String,java.lang.String> map)
Add all map key/value pairs to `metadata` map. A map is initialized for the first `put/putAll` call, and subsequent calls add additional key/value pairs to the original map. SeePaymentIntentCreateParams.metadatafor the field documentation.
-
setOffSession
public PaymentIntentCreateParams.Builder setOffSession(java.lang.Boolean offSession)
Set totrueto 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 withconfirm=true.
-
setOffSession
public PaymentIntentCreateParams.Builder setOffSession(PaymentIntentCreateParams.OffSession offSession)
Set totrueto 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 withconfirm=true.
-
setOnBehalfOf
public PaymentIntentCreateParams.Builder setOnBehalfOf(java.lang.String onBehalfOf)
The Stripe account ID for which these funds are intended. For details, see the PaymentIntents use case for connected accounts.
-
setPaymentMethod
public PaymentIntentCreateParams.Builder setPaymentMethod(java.lang.String paymentMethod)
ID of the payment method (a PaymentMethod, Card, or compatible Source object) to attach to this PaymentIntent.If neither the
payment_methodparameter nor thesourceparameter are provided withconfirm=true,sourcewill be automatically populated withcustomer.default_sourceto improve the migration experience for users of the Charges API. We recommend that you explicitly provide thepayment_methodgoing forward.
-
setPaymentMethodData
public PaymentIntentCreateParams.Builder setPaymentMethodData(PaymentIntentCreateParams.PaymentMethodData paymentMethodData)
If provided, this hash will be used to create a PaymentMethod. The new PaymentMethod will appear in the payment_method property on the PaymentIntent.
-
setPaymentMethodOptions
public PaymentIntentCreateParams.Builder setPaymentMethodOptions(PaymentIntentCreateParams.PaymentMethodOptions paymentMethodOptions)
Payment-method-specific configuration for this PaymentIntent.
-
addPaymentMethodType
public PaymentIntentCreateParams.Builder addPaymentMethodType(java.lang.String element)
Add an element to `paymentMethodTypes` list. A list is initialized for the first `add/addAll` call, and subsequent calls adds additional elements to the original list. SeePaymentIntentCreateParams.paymentMethodTypesfor the field documentation.
-
addAllPaymentMethodType
public PaymentIntentCreateParams.Builder addAllPaymentMethodType(java.util.List<java.lang.String> elements)
Add all elements to `paymentMethodTypes` list. A list is initialized for the first `add/addAll` call, and subsequent calls adds additional elements to the original list. SeePaymentIntentCreateParams.paymentMethodTypesfor the field documentation.
-
setReceiptEmail
public PaymentIntentCreateParams.Builder setReceiptEmail(java.lang.String receiptEmail)
Email address that the receipt for the resulting payment will be sent to. Ifreceipt_emailis specified for a payment in live mode, a receipt will be sent regardless of your email settings.
-
setReturnUrl
public 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. If you'd prefer to redirect to a mobile application, you can alternatively supply an application URI scheme. This parameter can only be used withconfirm=true.
-
setSetupFutureUsage
public PaymentIntentCreateParams.Builder setSetupFutureUsage(PaymentIntentCreateParams.SetupFutureUsage setupFutureUsage)
Indicates that you intend to make future payments with this PaymentIntent's payment method.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_usageto dynamically optimize your payment flow and comply with regional legislation and network rules, such as SCA.
-
setShipping
public PaymentIntentCreateParams.Builder setShipping(PaymentIntentCreateParams.Shipping shipping)
Shipping information for this PaymentIntent.
-
setStatementDescriptor
public 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. Must contain at least one letter, maximum 22 characters.
-
setStatementDescriptorSuffix
public PaymentIntentCreateParams.Builder setStatementDescriptorSuffix(java.lang.String statementDescriptorSuffix)
Provides information about a card payment that customers see on their statements. Concatenated with the prefix (shortened descriptor) or statement descriptor that’s set on the account to form the complete statement descriptor. Maximum 22 characters for the concatenated descriptor.
-
setTransferData
public PaymentIntentCreateParams.Builder setTransferData(PaymentIntentCreateParams.TransferData transferData)
The parameters used to automatically create a Transfer when the payment succeeds. For more information, see the PaymentIntents use case for connected accounts.
-
setTransferGroup
public PaymentIntentCreateParams.Builder setTransferGroup(java.lang.String transferGroup)
A string that identifies the resulting payment as part of a group. See the PaymentIntents use case for connected accounts for details.
-
setUseStripeSdk
public PaymentIntentCreateParams.Builder setUseStripeSdk(java.lang.Boolean useStripeSdk)
Set totrueonly when using manual confirmation and the iOS or Android SDKs to handle additional authentication steps.
-
-