Skip to content

Express Docs v0.1.0


Express Docs / ApplePayOptions

Interface: ApplePayOptions ​

Defined in: src/types.ts:984

SDK-level options for Apple Pay providers using the W3C Payment Request API.

Remarks ​

Used by providers like Computop:ApplePay that implement the Apple Pay flow via the browser's native PaymentRequest API rather than the Apple Pay JS SDK.

Example ​

ts
const computopApplePay: ProviderButtonConfig<'Computop:ApplePay'> = {
  providerProtocolType: 'Computop',
  paymentMethodType: 'ApplePay',
  container: '#applepay-container',
  style: { buttonstyle: 'black', type: 'buy' },
  options: {
    totalAmount: 19300,
    currencyCode: 'USD',
    countryCode: 'US',
    merchantIdentifier: 'merchant.com.example',
    merchantDisplayName: 'Example Shop',
  },
};

Extends ​

  • CheckoutFlowFlags

Properties ​

countryCode ​

countryCode: string

Defined in: src/types.ts:996

ISO 3166-1 alpha-2 country code for the merchant (e.g. 'US', 'DE').


currencyCode ​

currencyCode: string

Defined in: src/types.ts:994

ISO 4217 currency code (e.g. 'USD', 'EUR').


isBillingCustomerDataRequired? ​

optional isBillingCustomerDataRequired?: boolean

Defined in: src/types.ts:1018

When true, the integrator's backend already supplies the customer's billing address and Apple Pay should not request it from the payer. When false or unset (default), Apple Pay collects the billing address.

Maps (inverted) to the W3C Payment Request requestBillingAddress option: requestBillingAddress = !isBillingCustomerDataRequired.

Default Value ​

false — Apple Pay collects billing address

Overrides ​

CheckoutFlowFlags.isBillingCustomerDataRequired


isShippingCustomerDataRequired? ​

optional isShippingCustomerDataRequired?: boolean

Defined in: src/types.ts:1032

When true, the integrator's backend already supplies the customer's shipping address and Apple Pay should not request it from the payer. When false or unset (default), Apple Pay collects the shipping address and payer contact (name, email, phone).

Maps (inverted) to the W3C Payment Request requestShipping option: requestShipping = !isShippingCustomerDataRequired. Payer contact fields (name, email, phone) are collected automatically when either address is collected by Apple Pay.

Default Value ​

false — Apple Pay collects shipping address and payer contact

Overrides ​

CheckoutFlowFlags.isShippingCustomerDataRequired


merchantDisplayName ​

merchantDisplayName: string

Defined in: src/types.ts:1005

Merchant name shown as the payment line item label in the Apple Pay sheet.


merchantIdentifier ​

merchantIdentifier: string

Defined in: src/types.ts:1003

The merchant identifier registered with Apple Pay.

Remarks ​

Must match the identifier configured in your Apple Developer account.


nativeOnly? ​

optional nativeOnly?: boolean

Defined in: src/types.ts:1055

If true, the Apple Pay button is only rendered when the browser supports Apple Pay natively (i.e. Safari on macOS/iOS). In non-native browsers the provider's render promise rejects with an APPLE_PAY_UNAVAILABLE error which is routed to the integrator's global onError handler.

Disables the cross-device "Scan with iPhone" QR handoff that the Apple Pay JS polyfill enables on Chrome/Edge/Firefox.

Default Value ​

false


pspAutoCaptureEnabled ​

pspAutoCaptureEnabled: boolean

Defined in: src/types.ts:263

When true (default), the payment is captured immediately after authorization. When false, the payment is authorized only and must be captured separately.

Remarks ​

This flag is mapped to the provider-native concept:

  • PayPal / Braintree / Adyen PayPal → intent: 'capture' (true) / 'authorize' (false)
  • Stripe → captureMethod: 'automatic' (true) / 'manual' (false)

Inherited from ​

CheckoutFlowFlags.pspAutoCaptureEnabled


supportedNetworks? ​

optional supportedNetworks?: string[]

Defined in: src/types.ts:1007

Card networks accepted by the merchant.

Default Value ​

['amex', 'discover', 'masterCard', 'visa']


supportedShippingCountries? ​

optional supportedShippingCountries?: string[]

Defined in: src/types.ts:1042

List of ISO 3166-1 alpha-2 country codes to which the merchant ships. When set and non-empty, the Apple Pay sheet validates the selected shipping country against this list and displays an error if it is not included. When omitted or set to an empty array, all countries are accepted.

Example ​

ts
`['DE', 'AT', 'CH']` — restrict to DACH region

Default Value ​

undefined — all countries accepted


totalAmount ​

totalAmount: number

Defined in: src/types.ts:992

Transaction amount in minor units (e.g. 19300 = $193.00).

Remarks ​

Divided by 100 and formatted to two decimal places for the Payment Request total.amount.value field.

collana pay SDK Documentation