Skip to content

Stripe: Update a Payment Intent

Stripe paymentIntents.postPaymentIntentsIntent: arguments, response, policy and SDK examples.

← Payment intents operations · Get started

Operation stripe.postpaymentintentsintent

Provider route: POST /v1/payment_intents/{intent}. Alter supplies the connection’s credentials and routing.

Install @alter-ai/sdk @alter-ai/stripe with npm, or alter-sdk-stripe with pip. Supply your connected customer’s grant ID and the arguments described below.

import { App } from "@alter-ai/sdk";
import { StripeIntegration } from "@alter-ai/stripe";
async function execute(input: Parameters<StripeIntegration["paymentIntents"]["postPaymentIntentsIntent"]>[0]) {
const app = new App({ apiKey: process.env.ALTER_API_KEY! });
try {
const provider = new StripeIntegration(app, { grantId: process.env.PROVIDER_GRANT_ID! });
const call = await provider.paymentIntents.postPaymentIntentsIntent(input);
const result = await call.wait();
return result.bodyJson();
} finally {
await app.close();
}
}
import os
from alter_sdk import App
from alter_sdk_stripe import StripeIntegration
async def execute(arguments):
async with App(api_key=os.environ["ALTER_API_KEY"]) as app:
provider = StripeIntegration(app, {"grant_id": os.environ["PROVIDER_GRANT_ID"]})
call = await provider.payment_intents.post_payment_intents_intent(arguments)
result = await call.wait()
return result.body_json()
FieldTypePresenceDescription and constraints
$objectRootAdditional keys: not allowed
pathobjectRequired within parentAdditional keys: not allowed
path.intentstringRequired within parentMaximum length: 5000
headersobjectOptionalAdditional keys: not allowed
headers.Idempotency-KeystringOptionalMinimum length: 1
Maximum length: 255
bodyobjectOptionalAdditional keys: not allowed
body.allowed_payment_method_typesarrayOptionalThe 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`.
body.allowed_payment_method_types[]stringEach itemOne of: acss_debit, affirm, afterpay_clearpay, alipay, alma, amazon_pay, au_becs_debit, bacs_debit, bancontact, billie, bizum, blik, boku_promptpay, boleto, capchase_pay, card, card_present, cashapp, check_scan, click_to_pay, crypto, customer_balance, demo_pay, duitnow, dummy_auth_push, dummy_passthrough_card, edenred, eps, fpx, gcash, getbalance, gift_card, giropay, gopay, grabpay, id_bank_transfer, ideal, interac_present, kakao_pay, klarna, knet, konbini, kr_card, kr_market, kriya, link, mb_way, mobilepay, momo, mondu, multibanco, naver_pay, netbanking, ng_bank, ng_bank_transfer, ng_card, ng_market, ng_ussd, ng_wallet, nz_bank_account, octopus, oxxo, p24, paper_check, pay_by_bank, payco, paynow, paypal, paypay, payto, pix, promptpay, qris, rechnung, revolut_pay, samsung_pay, satispay, scalapay, sepa_debit, sequra, shop_pay, shopeepay, sofort, south_korea_market, stripe_balance, sunbit, swish, tamara, test_pay, touch_n_go, truemoney, twint, upi, us_bank_account, us_cash_voucher, vipps, wechat_pay, wero, zip
body.amountintegerOptionalAmount intended to be collected by this PaymentIntent. A positive integer representing how much to charge in the [smallest currency unit](https://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](https://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).
body.amount_detailsJSONOptionalProvides industry-specific information about the amount.
body.amount_details (anyOf 1)ModelAlternativeExpand Update a Payment Intent — request body — body amount details discount amount, enforce arithmetic validation, line items, shipping, tax
body.amount_details (anyOf 2)stringAlternativeOne of:
body.application_fee_amountJSONOptionalThe 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](https://docs.stripe.com/payments/connected-accounts).
body.application_fee_amount (anyOf 1)integerAlternative
body.application_fee_amount (anyOf 2)stringAlternativeOne of:
body.capture_methodstringOptionalControls when the funds will be captured from the customer’s account.
One of: automatic, automatic_async, manual
body.currencystringOptionalThree-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://stripe.com/docs/currencies).
Format: currency
body.customerstringOptionalID 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](https://docs.stripe.com/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](https://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.
Maximum length: 5000
body.customer_accountstringOptionalID 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](https://docs.stripe.com/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](https://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.
Maximum length: 5000
body.descriptionstringOptionalAn arbitrary string attached to the object. Often useful for displaying to users.
Maximum length: 1000
body.excluded_payment_method_typesJSONOptionalThe list of payment method types to exclude from use with this payment.
body.excluded_payment_method_types (anyOf 1)arrayAlternative
body.excluded_payment_method_types (anyOf 1)[]stringEach itemOne of: acss_debit, affirm, afterpay_clearpay, alipay, alma, amazon_pay, au_becs_debit, bacs_debit, bancontact, billie, bizum, blik, boleto, card, cashapp, crypto, customer_balance, eps, fpx, giropay, grabpay, ideal, kakao_pay, klarna, konbini, kr_card, mb_way, mobilepay, multibanco, naver_pay, nz_bank_account, oxxo, p24, pay_by_bank, payco, paynow, paypal, paypay, payto, pix, promptpay, revolut_pay, samsung_pay, satispay, scalapay, sepa_debit, sequra, sofort, sunbit, swish, twint, upi, us_bank_account, wechat_pay, zip
body.excluded_payment_method_types (anyOf 2)stringAlternativeOne of:
body.expandarrayOptionalSpecifies which fields in the response should be expanded.
body.expand[]stringEach itemMaximum length: 5000
body.hooksobjectOptionalAutomations to be run during the PaymentIntent lifecycle
body.hooks.inputsobjectOptional
body.hooks.inputs.taxobjectOptional
body.hooks.inputs.tax.calculationJSONRequired within parent
body.hooks.inputs.tax.calculation (anyOf 1)stringAlternativeMaximum length: 5000
body.hooks.inputs.tax.calculation (anyOf 2)stringAlternativeOne of:
body.metadataJSONOptionalSet of [key-value pairs](https://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`.
body.metadata (anyOf 1)objectAlternativeAdditional keys: see wildcard field
body.metadata (anyOf 1).*stringAdditional keys
body.metadata (anyOf 2)stringAlternativeOne of:
body.payment_detailsJSONOptionalProvides industry-specific information about the charge.
body.payment_details (anyOf 1)objectAlternative
body.payment_details (anyOf 1).customer_referenceJSONOptional
body.payment_details (anyOf 1).customer_reference (anyOf 1)stringAlternativeMaximum length: 5000
body.payment_details (anyOf 1).customer_reference (anyOf 2)stringAlternativeOne of:
body.payment_details (anyOf 1).order_referenceJSONOptional
body.payment_details (anyOf 1).order_reference (anyOf 1)stringAlternativeMaximum length: 5000
body.payment_details (anyOf 1).order_reference (anyOf 2)stringAlternativeOne of:
body.payment_details (anyOf 2)stringAlternativeOne of:
body.payment_methodstringOptionalID of the payment method (a PaymentMethod, Card, or [compatible Source](https://docs.stripe.com/payments/payment-methods/transitioning#compatibility) object) to attach to this PaymentIntent. To unset this field to null, pass in an empty string.
Maximum length: 5000
body.payment_method_configurationstringOptionalThe ID of the [payment method configuration](https://docs.stripe.com/api/payment_method_configurations) to use with this PaymentIntent.
Maximum length: 100
body.payment_method_dataModelOptionalExpand Create a Payment Intent — request body — body payment method data
body.payment_method_optionsobjectOptionalPayment-method-specific configuration for this PaymentIntent.
body.payment_method_options.acss_debitJSONOptional
body.payment_method_options.acss_debit (anyOf 1)ModelAlternativeExpand Create a PaymentIntent — request body — body / payment_method_options / acss_debit / setup_future_usage: , none, off session, on session, verification method: automatic, instant, microdeposits
body.payment_method_options.acss_debit (anyOf 2)stringAlternativeOne of:
body.payment_method_options.affirmJSONOptional
body.payment_method_options.affirm (anyOf 1)objectAlternative
body.payment_method_options.affirm (anyOf 1).capture_methodstringOptionalOne of: , manual
body.payment_method_options.affirm (anyOf 1).preferred_localestringOptionalMaximum length: 30
body.payment_method_options.affirm (anyOf 1).setup_future_usagestringOptionalOne of: none
body.payment_method_options.affirm (anyOf 2)stringAlternativeOne of:
body.payment_method_options.afterpay_clearpayJSONOptional
body.payment_method_options.afterpay_clearpay (anyOf 1)objectAlternative
body.payment_method_options.afterpay_clearpay (anyOf 1).capture_methodstringOptionalOne of: , manual
body.payment_method_options.afterpay_clearpay (anyOf 1).referencestringOptionalMaximum length: 128
body.payment_method_options.afterpay_clearpay (anyOf 1).setup_future_usagestringOptionalOne of: none
body.payment_method_options.afterpay_clearpay (anyOf 2)stringAlternativeOne of:
body.payment_method_options.alipayJSONOptional
body.payment_method_options.alipay (anyOf 1)objectAlternative
body.payment_method_options.alipay (anyOf 1).setup_future_usagestringOptionalOne of: , none, off_session
body.payment_method_options.alipay (anyOf 2)stringAlternativeOne of:
body.payment_method_options.almaJSONOptional
body.payment_method_options.alma (anyOf 1)objectAlternative
body.payment_method_options.alma (anyOf 1).capture_methodstringOptionalOne of: , manual
body.payment_method_options.alma (anyOf 2)stringAlternativeOne of:
body.payment_method_options.amazon_payJSONOptional
body.payment_method_options.amazon_pay (anyOf 1)objectAlternative
body.payment_method_options.amazon_pay (anyOf 1).capture_methodstringOptionalOne of: , manual
body.payment_method_options.amazon_pay (anyOf 1).setup_future_usagestringOptionalOne of: , none, off_session
body.payment_method_options.amazon_pay (anyOf 2)stringAlternativeOne of:
body.payment_method_options.au_becs_debitJSONOptional
body.payment_method_options.au_becs_debit (anyOf 1)objectAlternative
body.payment_method_options.au_becs_debit (anyOf 1).setup_future_usagestringOptionalOne of: , none, off_session, on_session
body.payment_method_options.au_becs_debit (anyOf 1).target_datestringOptionalMaximum length: 5000
body.payment_method_options.au_becs_debit (anyOf 2)stringAlternativeOne of:
body.payment_method_options.bacs_debitJSONOptional
body.payment_method_options.bacs_debit (anyOf 1)objectAlternative
body.payment_method_options.bacs_debit (anyOf 1).mandate_optionsobjectOptional
body.payment_method_options.bacs_debit (anyOf 1).mandate_options.reference_prefixJSONOptional
body.payment_method_options.bacs_debit (anyOf 1).mandate_options.reference_prefix (anyOf 1)stringAlternativeMaximum length: 12
body.payment_method_options.bacs_debit (anyOf 1).mandate_options.reference_prefix (anyOf 2)stringAlternativeOne of:
body.payment_method_options.bacs_debit (anyOf 1).setup_future_usagestringOptionalOne of: , none, off_session, on_session
body.payment_method_options.bacs_debit (anyOf 1).target_datestringOptionalMaximum length: 5000
body.payment_method_options.bacs_debit (anyOf 2)stringAlternativeOne of:
body.payment_method_options.bancontactJSONOptional
body.payment_method_options.bancontact (anyOf 1)objectAlternative
body.payment_method_options.bancontact (anyOf 1).preferred_languagestringOptionalOne of: de, en, fr, nl
body.payment_method_options.bancontact (anyOf 1).setup_future_usagestringOptionalOne of: , none, off_session
body.payment_method_options.bancontact (anyOf 2)stringAlternativeOne of:
body.payment_method_options.billieJSONOptional
body.payment_method_options.billie (anyOf 1)ModelAlternativeExpand Create a PaymentIntent — request body — body / payment_method_options / billie / capture_method: , manual
body.payment_method_options.billie (anyOf 2)stringAlternativeOne of:
body.payment_method_options.bizumJSONOptional
body.payment_method_options.bizum (anyOf 1)objectAlternative
body.payment_method_options.bizum (anyOf 2)stringAlternativeOne of:
body.payment_method_options.blikJSONOptional
body.payment_method_options.blik (anyOf 1)objectAlternative
body.payment_method_options.blik (anyOf 1).codestringOptionalMaximum length: 5000
body.payment_method_options.blik (anyOf 1).mandate_optionsobjectOptional
body.payment_method_options.blik (anyOf 1).mandate_options.expires_atintegerOptionalFormat: unix-time
body.payment_method_options.blik (anyOf 1).setup_future_usagestringOptionalOne of: , none, off_session
body.payment_method_options.blik (anyOf 2)stringAlternativeOne of:
body.payment_method_options.boletoJSONOptional
body.payment_method_options.boleto (anyOf 1)objectAlternative
body.payment_method_options.boleto (anyOf 1).expires_after_daysintegerOptional
body.payment_method_options.boleto (anyOf 1).setup_future_usagestringOptionalOne of: , none, off_session, on_session
body.payment_method_options.boleto (anyOf 2)stringAlternativeOne of:
body.payment_method_options.cardJSONOptional
body.payment_method_options.card (anyOf 1)ModelAlternativeExpand Create a PaymentIntent — request body — body / payment_method_options / card / capture_method: , manual, request extended authorization: if available, never, request incremental authorization: if available, never, request multicapture: if available, never, request overcapture: if available, never, request three d secure: any, automatic, challenge, setup future usage: , none, off session, on session
body.payment_method_options.card (anyOf 2)stringAlternativeOne of:
body.payment_method_options.card_presentJSONOptional
body.payment_method_options.card_present (anyOf 1)objectAlternative
body.payment_method_options.card_present (anyOf 1).capture_methodstringOptionalOne of: manual, manual_preferred
body.payment_method_options.card_present (anyOf 1).request_extended_authorizationbooleanOptional
body.payment_method_options.card_present (anyOf 1).request_incremental_authorization_supportbooleanOptional
body.payment_method_options.card_present (anyOf 1).routingobjectOptional
body.payment_method_options.card_present (anyOf 1).routing.requested_prioritystringOptionalOne of: domestic, international
body.payment_method_options.card_present (anyOf 2)stringAlternativeOne of:
body.payment_method_options.cashappJSONOptional
body.payment_method_options.cashapp (anyOf 1)objectAlternative
body.payment_method_options.cashapp (anyOf 1).capture_methodstringOptionalOne of: , manual
body.payment_method_options.cashapp (anyOf 1).setup_future_usagestringOptionalOne of: , none, off_session, on_session
body.payment_method_options.cashapp (anyOf 2)stringAlternativeOne of:
body.payment_method_options.cryptoJSONOptional
body.payment_method_options.crypto (anyOf 1)objectAlternative
body.payment_method_options.crypto (anyOf 1).setup_future_usagestringOptionalOne of: none
body.payment_method_options.crypto (anyOf 2)stringAlternativeOne of:
body.payment_method_options.customer_balanceJSONOptional
body.payment_method_options.customer_balance (anyOf 1)ModelAlternativeExpand Create a Checkout Session — request body — body payment method options customer balance
body.payment_method_options.customer_balance (anyOf 2)stringAlternativeOne of:
body.payment_method_options.epsJSONOptional
body.payment_method_options.eps (anyOf 1)objectAlternative
body.payment_method_options.eps (anyOf 1).setup_future_usagestringOptionalOne of: none
body.payment_method_options.eps (anyOf 2)stringAlternativeOne of:
body.payment_method_options.fpxJSONOptional
body.payment_method_options.fpx (anyOf 1)objectAlternative
body.payment_method_options.fpx (anyOf 1).setup_future_usagestringOptionalOne of: none
body.payment_method_options.fpx (anyOf 2)stringAlternativeOne of:
body.payment_method_options.giropayJSONOptional
body.payment_method_options.giropay (anyOf 1)objectAlternative
body.payment_method_options.giropay (anyOf 1).setup_future_usagestringOptionalOne of: none
body.payment_method_options.giropay (anyOf 2)stringAlternativeOne of:
body.payment_method_options.grabpayJSONOptional
body.payment_method_options.grabpay (anyOf 1)objectAlternative
body.payment_method_options.grabpay (anyOf 1).setup_future_usagestringOptionalOne of: none
body.payment_method_options.grabpay (anyOf 2)stringAlternativeOne of:
body.payment_method_options.idealJSONOptional
body.payment_method_options.ideal (anyOf 1)objectAlternative
body.payment_method_options.ideal (anyOf 1).setup_future_usagestringOptionalOne of: , none, off_session
body.payment_method_options.ideal (anyOf 2)stringAlternativeOne of:
body.payment_method_options.interac_presentJSONOptional
body.payment_method_options.interac_present (anyOf 1)objectAlternative
body.payment_method_options.interac_present (anyOf 2)stringAlternativeOne of:
body.payment_method_options.kakao_payJSONOptional
body.payment_method_options.kakao_pay (anyOf 1)objectAlternative
body.payment_method_options.kakao_pay (anyOf 1).capture_methodstringOptionalOne of: , manual
body.payment_method_options.kakao_pay (anyOf 1).setup_future_usagestringOptionalOne of: , none, off_session
body.payment_method_options.kakao_pay (anyOf 2)stringAlternativeOne of:
body.payment_method_options.klarnaJSONOptional
body.payment_method_options.klarna (anyOf 1)ModelAlternativeExpand Create a PaymentIntent — request body — body / payment_method_options / klarna / capture_method: , manual, setup future usage: none, off session, on session
body.payment_method_options.klarna (anyOf 2)stringAlternativeOne of:
body.payment_method_options.konbiniJSONOptional
body.payment_method_options.konbini (anyOf 1)objectAlternative
body.payment_method_options.konbini (anyOf 1).confirmation_numberJSONOptional
body.payment_method_options.konbini (anyOf 1).confirmation_number (anyOf 1)stringAlternativeMaximum length: 11
body.payment_method_options.konbini (anyOf 1).confirmation_number (anyOf 2)stringAlternativeOne of:
body.payment_method_options.konbini (anyOf 1).expires_after_daysJSONOptional
body.payment_method_options.konbini (anyOf 1).expires_after_days (anyOf 1)integerAlternative
body.payment_method_options.konbini (anyOf 1).expires_after_days (anyOf 2)stringAlternativeOne of:
body.payment_method_options.konbini (anyOf 1).expires_atJSONOptional
body.payment_method_options.konbini (anyOf 1).expires_at (anyOf 1)integerAlternativeFormat: unix-time
body.payment_method_options.konbini (anyOf 1).expires_at (anyOf 2)stringAlternativeOne of:
body.payment_method_options.konbini (anyOf 1).product_descriptionJSONOptional
body.payment_method_options.konbini (anyOf 1).product_description (anyOf 1)stringAlternativeMaximum length: 22
body.payment_method_options.konbini (anyOf 1).product_description (anyOf 2)stringAlternativeOne of:
body.payment_method_options.konbini (anyOf 1).setup_future_usagestringOptionalOne of: none
body.payment_method_options.konbini (anyOf 2)stringAlternativeOne of:
body.payment_method_options.kr_cardJSONOptional
body.payment_method_options.kr_card (anyOf 1)objectAlternative
body.payment_method_options.kr_card (anyOf 1).capture_methodstringOptionalOne of: , manual
body.payment_method_options.kr_card (anyOf 1).setup_future_usagestringOptionalOne of: , none, off_session
body.payment_method_options.kr_card (anyOf 2)stringAlternativeOne of:
body.payment_method_options.linkJSONOptional
body.payment_method_options.link (anyOf 1)objectAlternative
body.payment_method_options.link (anyOf 1).capture_methodstringOptionalOne of: , manual
body.payment_method_options.link (anyOf 1).setup_future_usagestringOptionalOne of: , none, off_session
body.payment_method_options.link (anyOf 2)stringAlternativeOne of:
body.payment_method_options.mb_wayJSONOptional
body.payment_method_options.mb_way (anyOf 1)objectAlternative
body.payment_method_options.mb_way (anyOf 1).setup_future_usagestringOptionalOne of: none
body.payment_method_options.mb_way (anyOf 2)stringAlternativeOne of:
body.payment_method_options.mobilepayJSONOptional
body.payment_method_options.mobilepay (anyOf 1)objectAlternative
body.payment_method_options.mobilepay (anyOf 1).capture_methodstringOptionalOne of: , manual
body.payment_method_options.mobilepay (anyOf 1).setup_future_usagestringOptionalOne of: none
body.payment_method_options.mobilepay (anyOf 2)stringAlternativeOne of:
body.payment_method_options.multibancoJSONOptional
body.payment_method_options.multibanco (anyOf 1)objectAlternative
body.payment_method_options.multibanco (anyOf 1).setup_future_usagestringOptionalOne of: none
body.payment_method_options.multibanco (anyOf 2)stringAlternativeOne of:
body.payment_method_options.naver_payJSONOptional
body.payment_method_options.naver_pay (anyOf 1)objectAlternative
body.payment_method_options.naver_pay (anyOf 1).capture_methodstringOptionalOne of: , manual
body.payment_method_options.naver_pay (anyOf 1).setup_future_usagestringOptionalOne of: , none, off_session
body.payment_method_options.naver_pay (anyOf 2)stringAlternativeOne of:
body.payment_method_options.nz_bank_accountJSONOptional
body.payment_method_options.nz_bank_account (anyOf 1)objectAlternative
body.payment_method_options.nz_bank_account (anyOf 1).setup_future_usagestringOptionalOne of: , none, off_session, on_session
body.payment_method_options.nz_bank_account (anyOf 1).target_datestringOptionalMaximum length: 5000
body.payment_method_options.nz_bank_account (anyOf 2)stringAlternativeOne of:
body.payment_method_options.oxxoJSONOptional
body.payment_method_options.oxxo (anyOf 1)objectAlternative
body.payment_method_options.oxxo (anyOf 1).expires_after_daysintegerOptional
body.payment_method_options.oxxo (anyOf 1).setup_future_usagestringOptionalOne of: none
body.payment_method_options.oxxo (anyOf 2)stringAlternativeOne of:
body.payment_method_options.p24JSONOptional
body.payment_method_options.p24 (anyOf 1)objectAlternative
body.payment_method_options.p24 (anyOf 1).setup_future_usagestringOptionalOne of: none
body.payment_method_options.p24 (anyOf 1).tos_shown_and_acceptedbooleanOptional
body.payment_method_options.p24 (anyOf 2)stringAlternativeOne of:
body.payment_method_options.pay_by_bankJSONOptional
body.payment_method_options.pay_by_bank (anyOf 1)objectAlternative
body.payment_method_options.pay_by_bank (anyOf 2)stringAlternativeOne of:
body.payment_method_options.paycoJSONOptional
body.payment_method_options.payco (anyOf 1)objectAlternative
body.payment_method_options.payco (anyOf 1).capture_methodstringOptionalOne of: , manual
body.payment_method_options.payco (anyOf 1).setup_future_usagestringOptionalOne of: none
body.payment_method_options.payco (anyOf 2)stringAlternativeOne of:
body.payment_method_options.paynowJSONOptional
body.payment_method_options.paynow (anyOf 1)objectAlternative
body.payment_method_options.paynow (anyOf 1).setup_future_usagestringOptionalOne of: none
body.payment_method_options.paynow (anyOf 2)stringAlternativeOne of:
body.payment_method_options.paypalJSONOptional
body.payment_method_options.paypal (anyOf 1)ModelAlternativeExpand Create a Checkout Session — request body — body payment method options paypal
body.payment_method_options.paypal (anyOf 2)stringAlternativeOne of:
body.payment_method_options.paypayJSONOptional
body.payment_method_options.paypay (anyOf 1)objectAlternative
body.payment_method_options.paypay (anyOf 2)stringAlternativeOne of:
body.payment_method_options.paytoJSONOptional
body.payment_method_options.payto (anyOf 1)ModelAlternativeExpand Create a PaymentIntent — request body — body / payment_method_options / payto / setup_future_usage: , none, off session
body.payment_method_options.payto (anyOf 2)stringAlternativeOne of:
body.payment_method_options.pixJSONOptional
body.payment_method_options.pix (anyOf 1)ModelAlternativeExpand Create a PaymentIntent — request body — body / payment_method_options / pix / amount_includes_iof: always, never, setup future usage: none, off session
body.payment_method_options.pix (anyOf 2)stringAlternativeOne of:
body.payment_method_options.promptpayJSONOptional
body.payment_method_options.promptpay (anyOf 1)objectAlternative
body.payment_method_options.promptpay (anyOf 1).setup_future_usagestringOptionalOne of: none
body.payment_method_options.promptpay (anyOf 2)stringAlternativeOne of:
body.payment_method_options.revolut_payJSONOptional
body.payment_method_options.revolut_pay (anyOf 1)objectAlternative
body.payment_method_options.revolut_pay (anyOf 1).capture_methodstringOptionalOne of: , manual
body.payment_method_options.revolut_pay (anyOf 1).setup_future_usagestringOptionalOne of: , none, off_session
body.payment_method_options.revolut_pay (anyOf 2)stringAlternativeOne of:
body.payment_method_options.samsung_payJSONOptional
body.payment_method_options.samsung_pay (anyOf 1)objectAlternative
body.payment_method_options.samsung_pay (anyOf 1).capture_methodstringOptionalOne of: , manual
body.payment_method_options.samsung_pay (anyOf 1).setup_future_usagestringOptionalOne of: none
body.payment_method_options.samsung_pay (anyOf 2)stringAlternativeOne of:
body.payment_method_options.satispayJSONOptional
body.payment_method_options.satispay (anyOf 1)objectAlternative
body.payment_method_options.satispay (anyOf 1).capture_methodstringOptionalOne of: , manual
body.payment_method_options.satispay (anyOf 1).setup_future_usagestringOptionalOne of: , none, off_session, on_session
body.payment_method_options.satispay (anyOf 2)stringAlternativeOne of:
body.payment_method_options.scalapayJSONOptional
body.payment_method_options.scalapay (anyOf 1)objectAlternative
body.payment_method_options.scalapay (anyOf 1).capture_methodstringOptionalOne of: , manual
body.payment_method_options.scalapay (anyOf 2)stringAlternativeOne of:
body.payment_method_options.sepa_debitJSONOptional
body.payment_method_options.sepa_debit (anyOf 1)objectAlternative
body.payment_method_options.sepa_debit (anyOf 1).mandate_optionsobjectOptional
body.payment_method_options.sepa_debit (anyOf 1).mandate_options.reference_prefixJSONOptional
body.payment_method_options.sepa_debit (anyOf 1).mandate_options.reference_prefix (anyOf 1)stringAlternativeMaximum length: 12
body.payment_method_options.sepa_debit (anyOf 1).mandate_options.reference_prefix (anyOf 2)stringAlternativeOne of:
body.payment_method_options.sepa_debit (anyOf 1).setup_future_usagestringOptionalOne of: , none, off_session, on_session
body.payment_method_options.sepa_debit (anyOf 1).target_datestringOptionalMaximum length: 5000
body.payment_method_options.sepa_debit (anyOf 2)stringAlternativeOne of:
body.payment_method_options.sequraJSONOptional
body.payment_method_options.sequra (anyOf 1)objectAlternative
body.payment_method_options.sequra (anyOf 1).capture_methodstringOptionalOne of: , manual
body.payment_method_options.sequra (anyOf 1).setup_future_usagestringOptionalOne of: none
body.payment_method_options.sequra (anyOf 2)stringAlternativeOne of:
body.payment_method_options.sofortJSONOptional
body.payment_method_options.sofort (anyOf 1)objectAlternative
body.payment_method_options.sofort (anyOf 1).preferred_languagestringOptionalOne of: , de, en, es, fr, it, nl, pl
body.payment_method_options.sofort (anyOf 1).setup_future_usagestringOptionalOne of: , none, off_session
body.payment_method_options.sofort (anyOf 2)stringAlternativeOne of:
body.payment_method_options.sunbitJSONOptional
body.payment_method_options.sunbit (anyOf 1)objectAlternative
body.payment_method_options.sunbit (anyOf 1).capture_methodstringOptionalOne of: , manual
body.payment_method_options.sunbit (anyOf 1).setup_future_usagestringOptionalOne of: none
body.payment_method_options.sunbit (anyOf 2)stringAlternativeOne of:
body.payment_method_options.swishJSONOptional
body.payment_method_options.swish (anyOf 1)objectAlternative
body.payment_method_options.swish (anyOf 1).referenceJSONOptional
body.payment_method_options.swish (anyOf 1).reference (anyOf 1)stringAlternativeMaximum length: 5000
body.payment_method_options.swish (anyOf 1).reference (anyOf 2)stringAlternativeOne of:
body.payment_method_options.swish (anyOf 1).setup_future_usagestringOptionalOne of: none
body.payment_method_options.swish (anyOf 2)stringAlternativeOne of:
body.payment_method_options.twintJSONOptional
body.payment_method_options.twint (anyOf 1)objectAlternative
body.payment_method_options.twint (anyOf 1).setup_future_usagestringOptionalOne of: none, off_session
body.payment_method_options.twint (anyOf 2)stringAlternativeOne of:
body.payment_method_options.upiJSONOptional
body.payment_method_options.upi (anyOf 1)objectAlternative
body.payment_method_options.upi (anyOf 1).mandate_optionsobjectOptional
body.payment_method_options.upi (anyOf 1).mandate_options.amountintegerOptional
body.payment_method_options.upi (anyOf 1).mandate_options.amount_typestringOptionalOne of: fixed, maximum
body.payment_method_options.upi (anyOf 1).mandate_options.descriptionstringOptionalMaximum length: 20
body.payment_method_options.upi (anyOf 1).mandate_options.end_dateintegerOptionalFormat: unix-time
body.payment_method_options.upi (anyOf 1).setup_future_usagestringOptionalOne of: , none, off_session, on_session
body.payment_method_options.upi (anyOf 2)stringAlternativeOne of:
body.payment_method_options.us_bank_accountJSONOptional
body.payment_method_options.us_bank_account (anyOf 1)ModelAlternativeExpand Create a PaymentIntent — request body — body / payment_method_options / us_bank_account / setup_future_usage: , none, off session, on session, transaction purpose: , goods, other, services, unspecified, verification method: automatic, instant, microdeposits
body.payment_method_options.us_bank_account (anyOf 2)stringAlternativeOne of:
body.payment_method_options.wechat_payJSONOptional
body.payment_method_options.wechat_pay (anyOf 1)objectAlternative
body.payment_method_options.wechat_pay (anyOf 1).app_idstringOptionalMaximum length: 5000
body.payment_method_options.wechat_pay (anyOf 1).clientstringOptionalOne of: android, ios, web
body.payment_method_options.wechat_pay (anyOf 1).setup_future_usagestringOptionalOne of: none
body.payment_method_options.wechat_pay (anyOf 2)stringAlternativeOne of:
body.payment_method_options.zipJSONOptional
body.payment_method_options.zip (anyOf 1)objectAlternative
body.payment_method_options.zip (anyOf 1).setup_future_usagestringOptionalOne of: none
body.payment_method_options.zip (anyOf 2)stringAlternativeOne of:
body.receipt_emailJSONOptionalEmail address that the receipt for the resulting payment will be sent to. If `receipt_email` is specified for a payment in live mode, a receipt will be sent regardless of your [email settings](https://dashboard.stripe.com/account/emails).
body.receipt_email (anyOf 1)stringAlternative
body.receipt_email (anyOf 2)stringAlternativeOne of:
body.setup_future_usagestringOptionalIndicates 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).

If you’ve already set `setup_future_usage` and you’re performing a request using a publishable key, you can only update the value from `on_session` to `off_session`.
One of: , off_session, on_session
body.shippingJSONOptionalShipping information for this PaymentIntent.
body.shipping (anyOf 1)ModelAlternativeExpand Update a Payment Intent — request body — body shipping address, carrier, name, phone, tracking number
body.shipping (anyOf 2)stringAlternativeOne of:
body.statement_descriptorstringOptionalText 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](https://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](https://docs.stripe.com/get-started/account/statement-descriptors#dynamic) instead.
Maximum length: 22
body.statement_descriptor_suffixstringOptionalProvides information about a card charge. Concatenated to the account’s [statement descriptor prefix](https://docs.stripe.com/get-started/account/statement-descriptors#static) to form the complete statement descriptor that appears on the customer’s statement.
Maximum length: 22
body.transfer_dataobjectOptionalUse this parameter to automatically create a Transfer when the payment succeeds. Learn more about the [use case for connected accounts](https://docs.stripe.com/payments/connected-accounts).
body.transfer_data.amountintegerOptional
body.transfer_data.descriptionstringOptionalMaximum length: 5000
body.transfer_data.metadataJSONOptional
body.transfer_data.metadata (anyOf 1)objectAlternativeAdditional keys: see wildcard field
body.transfer_data.metadata (anyOf 1).*stringAdditional keys
body.transfer_data.metadata (anyOf 2)stringAlternativeOne of:
body.transfer_data.payment_dataobjectOptional
body.transfer_data.payment_data.descriptionstringOptionalMaximum length: 5000
body.transfer_data.payment_data.metadataJSONOptional
body.transfer_data.payment_data.metadata (anyOf 1)objectAlternativeAdditional keys: see wildcard field
body.transfer_data.payment_data.metadata (anyOf 1).*stringAdditional keys
body.transfer_data.payment_data.metadata (anyOf 2)stringAlternativeOne of:
body.transfer_groupstringOptionalA string that identifies the resulting payment as part of a group. You can only provide `transfer_group` if it hasn’t been set. Learn more about the [use case for connected accounts](https://docs.stripe.com/payments/connected-accounts).

Referenced models: Create a PaymentIntent — request body — body / payment_method_options / acss_debit / setup_future_usage: , none, off session, on session, verification method: automatic, instant, microdeposits, Update a Payment Intent — request body — body amount details discount amount, enforce arithmetic validation, line items, shipping, tax, Create a PaymentIntent — request body — body / payment_method_options / billie / capture_method: , manual, Create a PaymentIntent — request body — body / payment_method_options / card / capture_method: , manual, request extended authorization: if available, never, request incremental authorization: if available, never, request multicapture: if available, never, request overcapture: if available, never, request three d secure: any, automatic, challenge, setup future usage: , none, off session, on session, Create a Checkout Session — request body — body payment method options customer balance, Create a PaymentIntent — request body — body / payment_method_options / klarna / capture_method: , manual, setup future usage: none, off session, on session, Create a Payment Intent — request body — body payment method data, Create a Checkout Session — request body — body payment method options paypal, Create a PaymentIntent — request body — body / payment_method_options / payto / setup_future_usage: , none, off session, Create a PaymentIntent — request body — body / payment_method_options / pix / amount_includes_iof: always, never, setup future usage: none, off session, Update a Payment Intent — request body — body shipping address, carrier, name, phone, tracking number, Create a PaymentIntent — request body — body / payment_method_options / us_bank_account / setup_future_usage: , none, off session, on session, transaction purpose: , goods, other, services, unspecified, verification method: automatic, instant, microdeposits

Response media type: application/json. The table describes the pinned successful response. Referenced models link to their complete fields.

FieldTypePresenceDescription and constraints
$ModelRootExpand Cancel a Payment Intent — response body

Referenced models: Cancel a Payment Intent — response body

724 more schemas are linked from the tables above, on the schema pages.

Create a PaymentIntent — request body — body / payment_method_options / acss_debit / setup_future_usage: , none, off session, on session, verification method: automatic, instant, microdeposits
FieldTypePresenceDescription and constraints
$objectRoot
mandate_optionsobjectOptional
mandate_options.custom_mandate_urlJSONOptional
mandate_options.custom_mandate_url (anyOf 1)stringAlternative
mandate_options.custom_mandate_url (anyOf 2)stringAlternativeOne of:
mandate_options.interval_descriptionstringOptionalMaximum length: 500
mandate_options.payment_schedulestringOptionalOne of: combined, interval, sporadic
mandate_options.transaction_typestringOptionalOne of: business, personal
setup_future_usagestringOptionalOne of: , none, off_session, on_session
target_datestringOptionalMaximum length: 5000
verification_methodstringOptionalOne of: automatic, instant, microdeposits
Update a Payment Intent — request body — body amount details discount amount, enforce arithmetic validation, line items, shipping, tax
FieldTypePresenceDescription and constraints
$objectRoot
discount_amountJSONOptional
discount_amount (anyOf 1)integerAlternative
discount_amount (anyOf 2)stringAlternativeOne of:
enforce_arithmetic_validationbooleanOptional
line_itemsJSONOptional
line_items (anyOf 1)arrayAlternative
line_items (anyOf 1)[]ModelEach itemExpand Create a Payment Intent — request body — body amount details line items array item
line_items (anyOf 2)stringAlternativeOne of:
shippingJSONOptional
shipping (anyOf 1)objectAlternative
shipping (anyOf 1).amountJSONOptional
shipping (anyOf 1).amount (anyOf 1)integerAlternative
shipping (anyOf 1).amount (anyOf 2)stringAlternativeOne of:
shipping (anyOf 1).from_postal_codeJSONOptional
shipping (anyOf 1).from_postal_code (anyOf 1)stringAlternativeMaximum length: 10
shipping (anyOf 1).from_postal_code (anyOf 2)stringAlternativeOne of:
shipping (anyOf 1).to_postal_codeJSONOptional
shipping (anyOf 1).to_postal_code (anyOf 1)stringAlternativeMaximum length: 10
shipping (anyOf 1).to_postal_code (anyOf 2)stringAlternativeOne of:
shipping (anyOf 2)stringAlternativeOne of:
taxJSONOptional
tax (anyOf 1)objectAlternative
tax (anyOf 1).total_tax_amountintegerRequired within parent
tax (anyOf 2)stringAlternativeOne of:

Referenced models: Create a Payment Intent — request body — body amount details line items array item

Create a PaymentIntent — request body — body / payment_method_options / billie / capture_method: , manual
FieldTypePresenceDescription and constraints
$objectRoot
capture_methodstringOptionalOne of: , manual
company_detailsJSONOptional
company_details (anyOf 1)ModelAlternativeExpand Create a PaymentIntent — request body — body / payment_method_options / billie / capture_method: , manual company details registered address, registered name, registration number, registration type, vat
company_details (anyOf 2)stringAlternativeOne of:
referencestringOptionalMaximum length: 5000

Referenced models: Create a PaymentIntent — request body — body / payment_method_options / billie / capture_method: , manual company details registered address, registered name, registration number, registration type, vat

Create a PaymentIntent — request body — body / payment_method_options / card / capture_method: , manual, request extended authorization: if available, never, request incremental authorization: if available, never, request multicapture: if available, never, request overcapture: if available, never, request three d secure: any, automatic, challenge, setup future usage: , none, off session, on session
FieldTypePresenceDescription and constraints
$objectRoot
capture_methodstringOptionalOne of: , manual
cvc_tokenstringOptionalMaximum length: 5000
installmentsobjectOptional
installments.enabledbooleanOptional
installments.planJSONOptional
installments.plan (anyOf 1)objectAlternative
installments.plan (anyOf 1).countintegerOptional
installments.plan (anyOf 1).intervalstringOptionalOne of: month
installments.plan (anyOf 1).typestringRequired within parentOne of: bonus, fixed_count, revolving
installments.plan (anyOf 2)stringAlternativeOne of:
mandate_optionsModelOptionalExpand Create a PaymentIntent — request body — body / payment_method_options / card / capture_method: , manual, request extended authorization: if available, never, request incremental authorization: if available, never, request multicapture: if available, never, request overcapture: if available, never, request three d secure: any, automatic, challenge, setup future usage: , none, off session, on session mandate options
networkstringOptionalOne of: amex, cartes_bancaires, diners, discover, eftpos_au, girocard, interac, jcb, link, mastercard, unionpay, unknown, visa
Maximum length: 5000
request_extended_authorizationstringOptionalOne of: if_available, never
request_incremental_authorizationstringOptionalOne of: if_available, never
request_multicapturestringOptionalOne of: if_available, never
request_overcapturestringOptionalOne of: if_available, never
request_three_d_securestringOptionalOne of: any, automatic, challenge
require_cvc_recollectionbooleanOptional
setup_future_usagestringOptionalOne of: , none, off_session, on_session
statement_descriptor_suffix_kanaJSONOptional
statement_descriptor_suffix_kana (anyOf 1)stringAlternativeMaximum length: 22
statement_descriptor_suffix_kana (anyOf 2)stringAlternativeOne of:
statement_descriptor_suffix_kanjiJSONOptional
statement_descriptor_suffix_kanji (anyOf 1)stringAlternativeMaximum length: 17
statement_descriptor_suffix_kanji (anyOf 2)stringAlternativeOne of:
three_d_secureModelOptionalExpand Create a PaymentIntent — request body — body / payment_method_options / card / capture_method: , manual, request extended authorization: if available, never, request incremental authorization: if available, never, request multicapture: if available, never, request overcapture: if available, never, request three d secure: any, automatic, challenge, setup future usage: , none, off session, on session three d secure

Referenced models: Create a PaymentIntent — request body — body / payment_method_options / card / capture_method: , manual, request extended authorization: if available, never, request incremental authorization: if available, never, request multicapture: if available, never, request overcapture: if available, never, request three d secure: any, automatic, challenge, setup future usage: , none, off session, on session mandate options, Create a PaymentIntent — request body — body / payment_method_options / card / capture_method: , manual, request extended authorization: if available, never, request incremental authorization: if available, never, request multicapture: if available, never, request overcapture: if available, never, request three d secure: any, automatic, challenge, setup future usage: , none, off session, on session three d secure

Create a Checkout Session — request body — body payment method options customer balance
FieldTypePresenceDescription and constraints
$objectRoot
bank_transferobjectOptional
bank_transfer.eu_bank_transferobjectOptional
bank_transfer.eu_bank_transfer.countrystringRequired within parentMaximum length: 5000
bank_transfer.requested_address_typesarrayOptional
bank_transfer.requested_address_types[]stringEach itemOne of: aba, iban, sepa, sort_code, spei, swift, zengin
bank_transfer.typestringRequired within parentOne of: eu_bank_transfer, gb_bank_transfer, jp_bank_transfer, mx_bank_transfer, us_bank_transfer
funding_typestringOptionalOne of: bank_transfer
setup_future_usagestringOptionalOne of: none
Create a Checkout Session — request body — body payment method options paypal
FieldTypePresenceDescription and constraints
$objectRoot
capture_methodstringOptionalOne of: , manual
preferred_localestringOptionalOne of: cs-CZ, da-DK, de-AT, de-DE, de-LU, el-GR, en-GB, en-US, es-ES, fi-FI, fr-BE, fr-FR, fr-LU, hu-HU, it-IT, nl-BE, nl-NL, pl-PL, pt-PT, sk-SK, sv-SE
referencestringOptionalMaximum length: 127
risk_correlation_idstringOptionalMaximum length: 32
setup_future_usagestringOptionalOne of: , none, off_session
Delete a customer — response body
FieldTypePresenceDescription and constraints
$objectRoot
deletedbooleanRequired within parentAlways true for a deleted object
Known values: True
idstringRequired within parentUnique identifier for the object.
Maximum length: 5000
objectstringRequired within parentString representing the object's type. Objects of the same type share the same value.
Known values: customer

SDK function policy ID: stripe.postpaymentintentsintent. Catalog operation: PostPaymentIntentsIntent. Rules can name either ID; function rules distinguish managed calls and conservatively cover raw calls sharing the route. Existing grant permissions and policy rules apply. wait() returns an immediate result or waits for a required approval; it never approves the request itself. Persist the approval ID to resume after a restart.

Provider errors retain their response; JSON decoding raises ProviderAPIError for provider failures. ManagedOperationError identifies contract/input/retention errors. See error handling and provider-specific behavior. Sensitive input may be refused before approval storage. A decoding error never resubmits a write.

Pinned headers: {"Stripe-Version": "2026-09-30.endive"}

Official provider source

Report an issue with this page

Necessary

Required for sign-in, security, authorization, and remembering your choices.

Always active

Analytics

Helps us understand which product and documentation features are useful.

Performance diagnostics

Uses performance tracing and privacy-masked session replay to diagnose problems.

You can change these choices at any time from Cookie settings.