Create
Create a PaymentRequestObject
Last verified 2026-09-24
Is this helpful?
stripe.paymentRequest(options: object) Use stripe.paymentRequest to create a PaymentRequest object. Creating a PaymentRequest requires that you configure it with an options object. In Safari, stripe.paymentRequest uses Apple Pay, and in other browsers it uses the Payment Request API standard. > stripe.paymentRequest abstracts over a number of implementation > details to work uniformly across Apple Pay and the Payment Request > browser standard. In particular, under the hood we set supportedNetworks > to its most permissive setting, dynamically accounting for country > and platform. It is currently not possible to override this and make > supportedNetworks be more restrictive. - options A set of options to create this PaymentRequest instance with. These options can be updated using paymentRequest.update. - country The two-letter country code of your Stripe account (e.g., US). - currency Three character currency code (e.g., usd). - total A PaymentItem object. This PaymentItem is shown to the customer in the browser’s payment interface. - displayItems An array of PaymentItem objects. These objects are shown as line items in the browser’s payment interface. Note that the sum of the line item amounts does not need to add up to the total amount above. - requestPayerName By default, the browser‘s payment interface only asks the customer for actual payment information. A customer name can be collected by setting this option to true. This collected name will appears in the PaymentResponse object. We highly recommend you collect name as this also results in collection of billing address for Apple Pay. The billing address can be used to perform address verification and block fraudulent payments. For all other payment methods, the billing address is automatically collected when available. - requestPayerEmail See the requestPayerName option. - requestPayerPhone See the requestPayerName option. - requestShipping Collect shipping address by setting this option to true. The address appears in the PaymentResponse. You must also supply a valid [ShippingOptions] to the shippingOptions property. This can be up front at the time stripe.paymentRequest is called, or in response to a shippingaddresschange event using the updateWith callback. - shippingOptions An array of ShippingOption objects. The first shipping option listed appears in the browser payment interface as the default option. - disableWallets An array of wallet strings. Can be one or more of applePay, googlePay, link, and browserCard. Use this option to disable Apple Pay, Google Pay, Link (also known as Onelink in the UK), and/or browser-saved cards. - applePay Specify Apple Pay specific options. These are passed through to the Apple Pay API. - recurringPaymentRequest Specify a request to set up a recurring payment. See the Apple Pay documentation for more details. - paymentDescription - managementURL - regularBilling - amount - label - recurringPaymentStartDate - recurringPaymentEndDate - recurringPaymentIntervalUnit - recurringPaymentIntervalCount - trialBilling - amount - label - recurringPaymentStartDate - recurringPaymentEndDate - recurringPaymentIntervalUnit - recurringPaymentIntervalCount - billingAgreement - deferredPaymentRequest Specify a request to set up a deferred payment. See the Apple Pay documentation for more details. - paymentDescription - managementURL - deferredBilling - amount - amountType Indicates whether the billing amount is known at request time. When set to 'final', the Apple Pay payment sheet shows the configured amount. - label - deferredPaymentDate - billingAgreement - freeCancellationDate If set, you must also supply a freeCancellationDateTimeZone. - freeCancellationDateTimeZone If set, you must also supply a freeCancellationDate. These are tz timezones such as America/Los_Angeles, Europe/Dublin, and Asia/Singapore. - automaticReloadPaymentRequest Specify a request to set up an automatic reload payment. See the Apple Pay documentation for more details. - paymentDescription - managementURL - automaticReloadBilling - amount - label - automaticReloadPaymentThresholdAmount - billingAgreement - cardFunding By default, Apple Pay allows both credit and debit cards. You can specify if you only want to support one type of card with either 'supportsDebit' or 'supportsCredit'. - onBehalfOf The Stripe account ID which is the business of record. See use cases to determine if this option is relevant for your integration. This should match the on_behalf_of provided on the Intent used when confirming payment. ### Example title Create a PaymentRequestObject Is this helpful?