@capgo/capacitor-pay

March 27, 2026 · View on GitHub

Capgo - Instant updates for capacitor

➡️ Get Instant updates for your App with Capgo

Missing a feature? We'll build the plugin for you 💪

Capacitor plugin to trigger native payments with Apple Pay and Google Pay using a unified JavaScript API.

Documentation

The most complete doc is available here: https://capgo.app/docs/plugins/pay/

Compatibility

Plugin versionCapacitor compatibilityMaintained
v8.*.*v8.*.*
v7.*.*v7.*.*On demand
v6.*.*v6.*.*
v5.*.*v5.*.*

Note: The major version of this plugin follows the major version of Capacitor. Use the version that matches your Capacitor installation (e.g., plugin v8 for Capacitor 8). Only the latest major version is actively maintained.

Install

# Install (choose one)
npm install @capgo/capacitor-pay
pnpm add @capgo/capacitor-pay
yarn add @capgo/capacitor-pay
bun add @capgo/capacitor-pay

# Then sync Capacitor (choose one)
npx cap sync
pnpm exec cap sync
yarn cap sync
bunx cap sync

Platform setup

Before invoking the plugin, complete the native configuration documented in this repository:

  • Apple Pay (iOS): see docs/apple-pay-setup.md for merchant ID creation, certificates, Xcode entitlements, and device testing.
  • Google Pay (Android): follow docs/google-pay-setup.md to configure the business profile, tokenization settings, and runtime JSON payloads.

Finish both guides once per app to unlock the native payment sheets on devices.

Google Pay request and response types are bundled with this plugin, so you do not need to install @types/googlepay unless you also use Google's web JavaScript client elsewhere in your app.

Usage

import { Pay } from '@capgo/capacitor-pay';

// Check availability on the current platform.
const availability = await Pay.isPayAvailable({
  apple: {
    supportedNetworks: ['visa', 'masterCard', 'amex'],
  },
  google: {
    // Optional: falls back to a basic CARD request if omitted.
    isReadyToPayRequest: {
      apiVersion: 2,
      apiVersionMinor: 0,
      allowedPaymentMethods: [
        {
          type: 'CARD',
          parameters: {
            allowedAuthMethods: ['PAN_ONLY', 'CRYPTOGRAM_3DS'],
            allowedCardNetworks: ['AMEX', 'DISCOVER', 'MASTERCARD', 'VISA'],
          },
        },
      ],
    },
  },
});

if (!availability.available) {
  // Surface a friendly message or provide an alternative checkout.
  return;
}

if (availability.platform === 'ios') {
  const result = await Pay.requestPayment({
    apple: {
      merchantIdentifier: 'merchant.com.example.app',
      countryCode: 'US',
      currencyCode: 'USD',
      supportedNetworks: ['visa', 'masterCard'],
      paymentSummaryItems: [
        { label: 'Example Product', amount: '19.99' },
        { label: 'Tax', amount: '1.60' },
        { label: 'Example Store', amount: '21.59' },
      ],
      requiredShippingContactFields: ['postalAddress', 'name', 'emailAddress'],
    },
  });
  console.log(result.apple?.paymentData);
} else if (availability.platform === 'android') {
  const result = await Pay.requestPayment({
    google: {
      environment: 'test',
      paymentDataRequest: {
        apiVersion: 2,
        apiVersionMinor: 0,
        allowedPaymentMethods: [
          {
            type: 'CARD',
            parameters: {
              allowedAuthMethods: ['PAN_ONLY', 'CRYPTOGRAM_3DS'],
              allowedCardNetworks: ['AMEX', 'DISCOVER', 'MASTERCARD', 'VISA'],
              billingAddressRequired: true,
              billingAddressParameters: {
                format: 'FULL',
              },
            },
            tokenizationSpecification: {
              type: 'PAYMENT_GATEWAY',
              parameters: {
                gateway: 'example',
                gatewayMerchantId: 'exampleGatewayMerchantId',
              },
            },
          },
        ],
        merchantInfo: {
          merchantId: '01234567890123456789',
          merchantName: 'Example Merchant',
        },
        transactionInfo: {
          totalPriceStatus: 'FINAL',
          totalPrice: '21.59',
          currencyCode: 'USD',
          countryCode: 'US',
        },
      },
    },
  });

  console.log(result.google.paymentData);
  // Process the payment token on your backend server here.
}

Recurring payments

Apple Pay has first-class support via recurringPaymentRequest (iOS 16+):

import { Pay } from '@capgo/capacitor-pay';

await Pay.requestPayment({
  apple: {
    merchantIdentifier: 'merchant.com.example.app',
    countryCode: 'US',
    currencyCode: 'USD',
    supportedNetworks: ['visa', 'masterCard'],
    paymentSummaryItems: [
      { label: 'Pro Plan', amount: '9.99' },
      { label: 'Example Store', amount: '9.99' },
    ],
    recurringPaymentRequest: {
      paymentDescription: 'Pro Plan Subscription',
      managementURL: 'https://example.com/account/subscription',
      regularBilling: {
        label: 'Pro Plan',
        amount: '9.99',
        intervalUnit: 'month',
        intervalCount: 1,
        startDate: Date.now(),
      },
    },
  },
});

Google Pay does not have a dedicated "recurring request" object in PaymentDataRequest. For subscriptions you typically:

  1. Collect a token once with a normal paymentDataRequest.
  2. Store it server-side and create recurring charges with your PSP/gateway (Stripe/Adyen/Braintree/etc).
import { Pay, type GooglePayPaymentDataRequest } from '@capgo/capacitor-pay';

const paymentDataRequest: GooglePayPaymentDataRequest = {
  apiVersion: 2,
  apiVersionMinor: 0,
  allowedPaymentMethods: [
    {
      type: 'CARD',
      parameters: {
        allowedAuthMethods: ['PAN_ONLY', 'CRYPTOGRAM_3DS'],
        allowedCardNetworks: ['AMEX', 'DISCOVER', 'MASTERCARD', 'VISA'],
      },
      tokenizationSpecification: {
        type: 'PAYMENT_GATEWAY',
        parameters: {
          gateway: 'example',
          gatewayMerchantId: 'exampleGatewayMerchantId',
        },
      },
    },
  ],
  merchantInfo: {
    merchantId: '01234567890123456789',
    merchantName: 'Example Merchant',
  },
  transactionInfo: {
    totalPriceStatus: 'FINAL',
    totalPrice: '9.99',
    currencyCode: 'USD',
    countryCode: 'US',
  },
};

const result = await Pay.requestPayment({
  google: {
    environment: 'test',
    paymentDataRequest,
  },
});

// Send `result.google.paymentData` to your backend and use your PSP to start the subscription.

requestPayment() is the completion path on both platforms.

API

isPayAvailable(...)

isPayAvailable(options?: PayAvailabilityOptions | undefined) => Promise<PayAvailabilityResult>

Checks whether native pay is available on the current platform. On iOS this evaluates Apple Pay, on Android it evaluates Google Pay.

ParamType
optionsPayAvailabilityOptions

Returns: Promise<PayAvailabilityResult>


requestPayment(...)

requestPayment(options: PayPaymentOptions) => Promise<PayPaymentResult>

Presents the native pay sheet for the current platform. Provide the Apple Pay configuration on iOS and the Google Pay configuration on Android.

This promise is the completion path on both platforms.

ParamType
optionsPayPaymentOptions

Returns: Promise<PayPaymentResult>


getPluginVersion()

getPluginVersion() => Promise<{ version: string; }>

Get the native Capacitor plugin version

Returns: Promise<{ version: string; }>


Interfaces

PayAvailabilityResult

PropType
availableboolean
platformPayPlatform
appleApplePayAvailabilityResult
googleGooglePayAvailabilityResult

ApplePayAvailabilityResult

PropTypeDescription
canMakePaymentsbooleanIndicates whether the device can make Apple Pay payments in general.
canMakePaymentsUsingNetworksbooleanIndicates whether the device can make Apple Pay payments with the supplied networks.

GooglePayAvailabilityResult

PropTypeDescription
isReadybooleanWhether the user is able to provide payment information through the Google Pay payment sheet.
paymentMethodPresentbooleanThe current user's ability to pay with one or more of the payment methods specified in IsReadyToPayRequest.allowedPaymentMethods. This property only exists if IsReadyToPayRequest.existingPaymentMethodRequired was set to true. The property value will always be true if the request is configured for a test environment.

PayAvailabilityOptions

PropType
appleApplePayAvailabilityOptions
googleGooglePayAvailabilityOptions

ApplePayAvailabilityOptions

PropTypeDescription
supportedNetworksApplePayNetwork[]Optional list of payment networks you intend to use. Passing networks determines the return value of canMakePaymentsUsingNetworks.

GooglePayAvailabilityOptions

PropTypeDescription
environmentGooglePayEnvironmentEnvironment used to construct the Google Payments client. Defaults to 'test'.
isReadyToPayRequestGooglePayIsReadyToPayRequestRaw IsReadyToPayRequest JSON as defined by the Google Pay API. Supply the card networks and auth methods you intend to support at runtime.

GooglePayIsReadyToPayRequest

Self-contained Google Pay request type based on the official request objects and DefinitelyTyped definitions.

The plugin forwards the provided JSON to the native Google Pay SDK on Android, while keeping the type surface local so consumers do not need to install @types/googlepay.

PropTypeDescription
apiVersionnumberGoogle Pay API major version. Use 2 for current integrations.
apiVersionMinornumberGoogle Pay API minor version. Use 0 for current integrations.
allowedPaymentMethodsGooglePayAllowedPaymentMethod[]Payment methods you want to test for readiness.
existingPaymentMethodRequiredbooleanWhen true, Google Pay also indicates whether an existing matching payment method is present. In the test environment this always resolves to true.

GooglePayAllowedPaymentMethod

PropTypeDescription
typeGooglePayPaymentMethodTypeSupported payment method type. CARD is the only value currently accepted by Google Pay request objects.
parametersGooglePayCardPaymentMethodParametersParameters that control which cards can be shown and what extra data is collected.
tokenizationSpecificationGooglePayTokenizationSpecificationTokenization settings for the selected payment method. In Google Pay, this is required for PaymentDataRequest card payment methods, but ignored by IsReadyToPayRequest.

GooglePayCardPaymentMethodParameters

PropTypeDescription
allowedAuthMethodsGooglePayAuthMethod[]Authentication methods your gateway or processor accepts.
allowedCardNetworksGooglePayCardNetwork[]Card networks your gateway or processor accepts.
allowPrepaidCardsbooleanWhether prepaid cards are allowed. Defaults to true in Google Pay.
allowCreditCardsbooleanWhether credit cards are allowed. Defaults to true in Google Pay.
allowedIssuerCountryCodesstring[]Restricts users to cards issued in the provided ISO 3166-1 alpha-2 countries.
blockedIssuerCountryCodesstring[]Blocks cards issued in the provided ISO 3166-1 alpha-2 countries. This is mutually exclusive with allowedIssuerCountryCodes.
assuranceDetailsRequiredbooleanWhether Google Pay should include assurance details about the selected card.
billingAddressRequiredbooleanWhether a billing address is required from the buyer.
billingAddressParametersGooglePayBillingAddressParametersAdditional billing-address controls used when billingAddressRequired is true.
cardNetworkParametersGooglePayCardNetworkParameters[]Optional network-specific processing parameters for supported networks.
cvcRequiredbooleanWhether the card verification code should be returned in the payment token. This requires Google enablement for your account.

GooglePayBillingAddressParameters

PropTypeDescription
formatGooglePayBillingAddressFormatBilling address format to return when billingAddressRequired is true. Use FULL only when you truly need the extra fields to complete the order.
phoneNumberRequiredbooleanWhether a billing phone number should also be returned.

GooglePayCardNetworkParameters

PropTypeDescription
cardNetworkGooglePayCardNetworkCard network these network-specific parameters apply to.
acquirerBinstringAcquiring institution identification code used by some network-specific flows.
acquirerMerchantIdstringAcquirer-assigned merchant identifier used by some network-specific flows.

GooglePayGatewayTokenizationSpecification

PropTypeDescription
type'PAYMENT_GATEWAY'Tokenize payment data for a supported third-party gateway.
parametersGooglePayPaymentGatewayTokenizationParametersGateway-specific tokenization parameters.

GooglePayPaymentGatewayTokenizationParameters

Tokenization parameters for PAYMENT_GATEWAY tokenization, which sends the payment data to a supported third-party gateway for tokenization and processing.

PropTypeDescription
gatewaystringGoogle Pay gateway identifier.
gatewayMerchantIdstringMerchant identifier issued by your payment gateway when required.

GooglePayDirectTokenizationSpecification

PropTypeDescription
type'DIRECT'Tokenize payment data directly for merchant-side decryption.
parametersGooglePayDirectTokenizationParametersDirect tokenization parameters for payment data cryptography.

GooglePayDirectTokenizationParameters

PropTypeDescription
protocolVersionstringPayment data cryptography protocol version.
publicKeystringBase64-encoded elliptic-curve public key used to encrypt the payment data.

GooglePayCustomTokenizationSpecification

PropTypeDescription
typeGooglePayTokenizationTypeTokenization type understood by your Google Pay integration.
parametersRecord<string, string>Tokenization parameters. Google Pay expects string values.

ApplePayRequestPaymentResult

PropTypeDescription
platform'ios'Platform that resolved the payment request.
appleApplePayPaymentResultApple Pay payment payload.

ApplePayPaymentResult

PropTypeDescription
paymentDatastringRaw payment token encoded as base64 string.
paymentStringstringRaw payment token JSON string, useful for debugging.
transactionIdentifierstringPayment transaction identifier.
paymentMethod{ displayName?: string; network?: ApplePayNetwork; type: 'credit' | 'debit' | 'prepaid' | 'store'; }
shippingContactApplePayContact
billingContactApplePayContact

ApplePayContact

PropType
name{ givenName?: string; familyName?: string; middleName?: string; namePrefix?: string; nameSuffix?: string; nickname?: string; }
emailAddressstring
phoneNumberstring
postalAddress{ street?: string; city?: string; state?: string; postalCode?: string; country?: string; isoCountryCode?: string; subAdministrativeArea?: string; subLocality?: string; }

GooglePayRequestPaymentResult

PropTypeDescription
platform'android'Platform that resolved the payment request.
googleGooglePayPaymentResultGoogle Pay payment payload.

GooglePayPaymentResult

PropTypeDescription
paymentDataGooglePayPaymentDataPayment data returned by Google Pay.

GooglePayPaymentData

PropTypeDescription
apiVersionnumberGoogle Pay API major version returned in the response.
apiVersionMinornumberGoogle Pay API minor version returned in the response.
emailstringBuyer email address when emailRequired was requested.
shippingAddressGooglePayAddressShipping address when shippingAddressRequired was requested.
paymentMethodDataGooglePayPaymentMethodDataSelected payment method details and tokenized payload.
offerDataGooglePayOfferDataOffer redemption data when an offer was applied.
shippingOptionDataGooglePaySelectionOptionDataSelected shipping option data when shipping options were used.

GooglePayAddress

PropTypeDescription
namestringRecipient or cardholder name.
address1stringFirst address line.
address2stringSecond address line.
address3stringThird address line.
localitystringCity or locality.
administrativeAreastringState, province, or other administrative area.
countryCodestringTwo-letter ISO 3166-1 alpha-2 country code.
postalCodestringPostal or ZIP code.
sortingCodestringSorting code used in some countries.
phoneNumberstringPhone number returned when it was requested.
iso3166AdministrativeAreastringISO 3166-2 code for the administrative area when FULL-ISO3166 formatting is used.

GooglePayPaymentMethodData

PropTypeDescription
typeGooglePayPaymentMethodTypePayment method type returned by Google Pay.
infoGooglePayCardInfoAdditional information about the selected card.
descriptionstringUser-facing description of the selected funding source.
tokenizationDataGooglePayPaymentMethodTokenizationDataTokenized payment data you send to your backend or processor.

GooglePayCardInfo

PropTypeDescription
assuranceDetailsGooglePayAssuranceDetailsOptional assurance details returned when assuranceDetailsRequired was requested.
cardNetworkGooglePayCardNetworkCard network for the selected payment method.
cardDetailsstringCard details, typically the last four digits.
billingAddressGooglePayAddressBilling address returned when billingAddressRequired was requested.
cardFundingSourceGooglePayCardFundingSourceFunding source for the selected card when available.

GooglePayAssuranceDetails

PropTypeDescription
accountVerifiedbooleanWhether Google verified account possession for the selected card.
cardHolderAuthenticatedbooleanWhether cardholder authentication or ID&V was completed for the selected card.

GooglePayPaymentMethodTokenizationData

PropTypeDescription
typeGooglePayTokenizationTypeTokenization type used for the selected payment method.
tokenstringSerialized payment token or gateway payload.

GooglePayOfferData

PropTypeDescription
redemptionCodesstring[]Offer redemption codes applied by the buyer.

GooglePaySelectionOptionData

PropTypeDescription
idstringIdentifier of the selected option.

PayPaymentOptions

PropType
appleApplePayPaymentOptions
googleGooglePayPaymentOptions

ApplePayPaymentOptions

PropTypeDescription
merchantIdentifierstringMerchant identifier created in the Apple Developer portal.
countryCodestringTwo-letter ISO 3166 country code.
currencyCodestringThree-letter ISO 4217 currency code.
paymentSummaryItemsApplePaySummaryItem[]Payment summary items displayed in the Apple Pay sheet.
supportedNetworksApplePayNetwork[]Card networks to support.
merchantCapabilitiesApplePayMerchantCapability[]Merchant payment capabilities. Defaults to ['3DS'] when omitted.
requiredShippingContactFieldsApplePayContactField[]Contact fields that must be supplied for shipping.
requiredBillingContactFieldsApplePayContactField[]Contact fields that must be supplied for billing.
shippingTypeApplePayShippingTypeControls the shipping flow presented to the user.
supportedCountriesstring[]Optional ISO 3166 country codes where the merchant is supported.
applicationDatastringOptional opaque application data passed back in the payment token.
recurringPaymentRequestApplePayRecurringPaymentRequestRecurring payment configuration (iOS 16+).

ApplePaySummaryItem

PropType
labelstring
amountstring
typeApplePaySummaryItemType

ApplePayRecurringPaymentRequest

PropTypeDescription
paymentDescriptionstringA description for the recurring payment shown in the Apple Pay sheet.
regularBillingApplePayRecurringPaymentSummaryItemThe recurring billing item (for example your subscription).
managementURLstringURL where the user can manage the recurring payment (cancel, update, etc).
billingAgreementstringOptional billing agreement text shown to the user.
tokenNotificationURLstringOptional URL where Apple can send token update notifications.
trialBillingApplePayRecurringPaymentSummaryItemOptional trial billing item (for example a free trial period).

ApplePayRecurringPaymentSummaryItem

PropTypeDescription
intervalUnitApplePayRecurringPaymentIntervalUnitUnit of time between recurring payments.
intervalCountnumberNumber of intervalUnit units between recurring payments (for example 1 month, 2 weeks).
startDatestring | numberStart date of the recurring period. On supported platforms this may be either: - a number representing milliseconds since Unix epoch, or - a string in a date format accepted by the native implementation (for example an ISO 8601 date-time string or a yyyy-MM-dd date string).
endDatestring | numberEnd date of the recurring period. On supported platforms this may be either: - a number representing milliseconds since Unix epoch, or - a string in a date format accepted by the native implementation (for example an ISO 8601 date-time string or a yyyy-MM-dd date string).

GooglePayPaymentOptions

PropTypeDescription
environmentGooglePayEnvironmentEnvironment used to construct the Google Payments client. Defaults to 'test'.
paymentDataRequestGooglePayPaymentDataRequestRaw PaymentDataRequest JSON as defined by the Google Pay API. Provide transaction details, merchant info, and tokenization parameters.

GooglePayPaymentDataRequest

Self-contained Google Pay payment request type based on the official request objects and DefinitelyTyped definitions.

The plugin forwards the provided JSON to the native Google Pay SDK on Android, while keeping the type surface local so consumers do not need to install @types/googlepay.

PropTypeDescription
apiVersionnumberGoogle Pay API major version. Use 2 for current integrations.
apiVersionMinornumberGoogle Pay API minor version. Use 0 for current integrations.
merchantInfoGooglePayMerchantInfoMerchant information displayed in the Google Pay sheet.
allowedPaymentMethodsGooglePayAllowedPaymentMethod[]Allowed payment method configurations.
transactionInfoGooglePayTransactionInfoTransaction details such as amount, currency, and checkout behavior.
emailRequiredbooleanWhether the buyer email address should be returned.
shippingAddressRequiredbooleanWhether a shipping address should be collected.
shippingAddressParametersGooglePayShippingAddressParametersShipping-address restrictions used when shippingAddressRequired is true.
offerInfoGooglePayOfferInfoMerchant-provided offers to pre-populate in the Google Pay sheet. This is part of the official web request object and may not be supported by every native Android flow.
shippingOptionRequiredbooleanWhether the Google Pay sheet should collect a shipping option. This is part of the official web request object and is used with dynamic price updates.
shippingOptionParametersGooglePayShippingOptionParametersDefault shipping options for the Google Pay sheet. This is part of the official web request object and is used with dynamic price updates.
callbackIntentsGooglePayCallbackIntent[]Callback intents for dynamic price updates and payment authorization on the web. These values are included for completeness with the official Google Pay request object, but the Capacitor plugin does not currently expose the corresponding web callbacks.

GooglePayMerchantInfo

PropTypeDescription
merchantIdstringGoogle merchant identifier. This is required for recognized production web integrations and may also be supplied on Android.
merchantNamestringMerchant name displayed in the Google Pay sheet.
softwareInfoGooglePaySoftwareInfoOptional metadata about the software integrating with Google Pay.

GooglePaySoftwareInfo

PropTypeDescription
idstringIdentifier for the software integrating with Google Pay, such as your domain name.
versionstringVersion of the integrating software.

GooglePayTransactionInfo

PropTypeDescription
transactionIdstringMerchant-generated correlation identifier for the transaction.
currencyCodestringISO 4217 alphabetic currency code. Google Pay requires this for chargeable payment requests.
countryCodestringISO 3166-1 alpha-2 country code where the transaction is processed. This is required for EEA/SCA flows and recommended for country-specific behavior.
totalPricestringTotal transaction price using an optional decimal precision of two decimal places.
totalPriceLabelstringCustom total label shown with displayItems.
totalPriceStatusGooglePayTotalPriceStatusStatus of the total price.
transactionNotestringOptional transaction note. Some payment methods, such as UPI on web, require this.
checkoutOptionGooglePayCheckoutOptionControls the submit button label shown in the Google Pay sheet.
displayItemsGooglePayDisplayItem[]Optional cart line items shown in the Google Pay sheet.

GooglePayDisplayItem

PropTypeDescription
labelstringUser-visible line-item label.
typeGooglePayDisplayItemTypeCategory of the line item.
pricestringMonetary value for the item. Google Pay accepts an optional decimal precision of two decimal places.
statusGooglePayDisplayItemStatusWhether this line item is final or still pending.

GooglePayShippingAddressParameters

PropTypeDescription
allowedCountryCodesstring[]Restricts shipping addresses to the provided ISO 3166-1 alpha-2 country codes.
phoneNumberRequiredbooleanWhether a phone number should be collected with the shipping address.
formatGooglePayShippingAddressFormatShipping address format to return when shippingAddressRequired is true. MIN is not a valid value for shipping addresses.

GooglePayOfferInfo

PropTypeDescription
offersGooglePayOfferDetail[]Merchant-provided offers available for the current order.

GooglePayOfferDetail

PropTypeDescription
redemptionCodestringRedemption code that identifies the offer.
descriptionstringUser-visible description for the offer.

GooglePayShippingOptionParameters

PropTypeDescription
shippingOptionsGooglePaySelectionOption[]Available shipping options presented to the buyer.
defaultSelectedOptionIdstringIdentifier of the default selected shipping option.

GooglePaySelectionOption

PropTypeDescription
idstringUnique identifier for the option.
labelstringUser-visible label for the option.
descriptionstringOptional secondary description shown under the label.

Type Aliases

PayPlatform

'ios' | 'android' | 'web'

ApplePayNetwork

'AmEx' | 'amex' | 'Bancomat' | 'Bancontact' | 'PagoBancomat' | 'CarteBancaire' | 'CarteBancaires' | 'CartesBancaires' | 'ChinaUnionPay' | 'Dankort' | 'Discover' | 'discover' | 'Eftpos' | 'Electron' | 'Elo' | 'girocard' | 'Himyan' | 'Interac' | 'iD' | 'Jaywan' | 'JCB' | 'jcb' | 'mada' | 'Maestro' | 'maestro' | 'MasterCard' | 'masterCard' | 'Meeza' | 'Mir' | 'MyDebit' | 'NAPAS' | 'BankAxept' | 'PostFinanceAG' | 'PrivateLabel' | 'QUICPay' | 'Suica' | 'Visa' | 'visa' | 'VPay' | 'vPay'

GooglePayEnvironment

'test' | 'production'

GooglePayPaymentMethodType

'CARD' | (string & Record<never, never>)

Record

Construct a type with a set of properties K of type T

{ [P in K]: T; }

GooglePayAuthMethod

'PAN_ONLY' | 'CRYPTOGRAM_3DS' | (string & Record<never, never>)

GooglePayCardNetwork

'AMEX' | 'DISCOVER' | 'ELECTRON' | 'ELO' | 'ELO_DEBIT' | 'INTERAC' | 'JCB' | 'MAESTRO' | 'MASTERCARD' | 'VISA' | (string & Record<never, never>)

GooglePayBillingAddressFormat

'MIN' | 'FULL' | 'FULL-ISO3166' | (string & Record<never, never>)

GooglePayTokenizationSpecification

GooglePayGatewayTokenizationSpecification | GooglePayDirectTokenizationSpecification | GooglePayCustomTokenizationSpecification

GooglePayTokenizationType

'PAYMENT_GATEWAY' | 'DIRECT' | (string & Record<never, never>)

PayPaymentResult

ApplePayRequestPaymentResult | GooglePayRequestPaymentResult

GooglePayCardFundingSource

'UNKNOWN' | 'CREDIT' | 'DEBIT' | 'PREPAID' | (string & Record<never, never>)

ApplePaySummaryItemType

'final' | 'pending'

ApplePayMerchantCapability

'3DS' | 'credit' | 'debit' | 'emv'

ApplePayContactField

'emailAddress' | 'name' | 'phoneNumber' | 'postalAddress'

ApplePayShippingType

'shipping' | 'delivery' | 'servicePickup' | 'storePickup'

ApplePayRecurringPaymentIntervalUnit

'day' | 'week' | 'month' | 'year'

GooglePayTotalPriceStatus

'NOT_CURRENTLY_KNOWN' | 'ESTIMATED' | 'FINAL' | (string & Record<never, never>)

GooglePayCheckoutOption

'DEFAULT' | 'COMPLETE_IMMEDIATE_PURCHASE' | 'CONTINUE_TO_REVIEW' | (string & Record<never, never>)

GooglePayDisplayItemType

'LINE_ITEM' | 'SUBTOTAL' | 'TAX' | 'DISCOUNT' | 'SHIPPING_OPTION' | (string & Record<never, never>)

GooglePayDisplayItemStatus

'FINAL' | 'PENDING' | (string & Record<never, never>)

GooglePayShippingAddressFormat

'FULL' | 'FULL-ISO3166' | (string & Record<never, never>)

GooglePayCallbackIntent

'OFFER' | 'PAYMENT_AUTHORIZATION' | 'SHIPPING_ADDRESS' | 'SHIPPING_OPTION' | 'PAYMENT_METHOD' | (string & Record<never, never>)