PlatformPayButton Component Props

interface PlatformPayButtonProps {
    accessible?: boolean;
    accessibilityActions?: readonly Readonly<{ name: string; label?: string }>[];
    accessibilityLabel?: string;
    "aria-label"?: string;
    accessibilityRole?: AccessibilityRole;
    accessibilityState?: AccessibilityState;
    "aria-busy"?: boolean;
    "aria-checked"?: boolean | "mixed";
    "aria-disabled"?: boolean;
    "aria-expanded"?: boolean;
    "aria-selected"?: boolean;
    accessibilityHint?: string;
    accessibilityValue?: AccessibilityValue;
    "aria-valuemax"?: number;
    "aria-valuemin"?: number;
    "aria-valuenow"?: number;
    "aria-valuetext"?: string;
    onAccessibilityAction?: (event: AccessibilityActionEvent) => void;
    importantForAccessibility?: "auto" | "yes" | "no" | "no-hide-descendants";
    "aria-hidden"?: boolean;
    "aria-modal"?: boolean;
    role?: Role;
    accessibilityLabelledBy?: string | string[];
    "aria-labelledby"?: string;
    accessibilityLiveRegion?: "none" | "polite" | "assertive";
    "aria-live"?: "off" | "polite" | "assertive";
    accessibilityElementsHidden?: boolean;
    accessibilityViewIsModal?: boolean;
    onAccessibilityEscape?: () => void;
    onAccessibilityTap?: () => void;
    onMagicTap?: () => void;
    accessibilityIgnoresInvertColors?: boolean;
    accessibilityLanguage?: string;
    accessibilityShowsLargeContentViewer?: boolean;
    accessibilityLargeContentTitle?: string;
    type?: ButtonType;
    appearance?: ButtonStyle;
    borderRadius?: number;
    onPress(): void;
    disabled?: boolean;
    onShippingMethodSelected?: (
        event: { shippingMethod: ShippingMethod },
    ) => void;
    onShippingContactSelected?: (
        event: { shippingContact: ShippingContact },
    ) => void;
    onCouponCodeEntered?: (event: { couponCode: string }) => void;
    setOrderTracking?: (
        completion: (
            orderIdentifier: string,
            orderTypeIdentifier: string,
            authenticationToken: string,
            webServiceUrl: string,
        ) => void,
    ) => void;
    testID?: string;
    style?: StyleProp<ViewStyle>;
}

Hierarchy

  • AccessibilityProps
    • PlatformPayButtonProps

Properties

accessible?: boolean

When true, indicates that the view is an accessibility element. By default, all the touchable elements are accessible.

accessibilityActions?: readonly Readonly<{ name: string; label?: string }>[]

Provides an array of custom actions available for accessibility.

accessibilityLabel?: string

Overrides the text that's read by the screen reader when the user interacts with the element. By default, the label is constructed by traversing all the children and accumulating all the Text nodes separated by space.

"aria-label"?: string
accessibilityRole?: AccessibilityRole

Accessibility Role tells a person using either VoiceOver on iOS or TalkBack on Android the type of element that is focused on.

accessibilityState?: AccessibilityState

Accessibility State tells a person using either VoiceOver on iOS or TalkBack on Android the state of the element currently focused on.

"aria-busy"?: boolean
"aria-checked"?: boolean | "mixed"
"aria-disabled"?: boolean
"aria-expanded"?: boolean
"aria-selected"?: boolean
accessibilityHint?: string

An accessibility hint helps users understand what will happen when they perform an action on the accessibility element when that result is not obvious from the accessibility label.

accessibilityValue?: AccessibilityValue

Represents the current value of a component. It can be a textual description of a component's value, or for range-based components, such as sliders and progress bars, it contains range information (minimum, current, and maximum).

"aria-valuemax"?: number
"aria-valuemin"?: number
"aria-valuenow"?: number
"aria-valuetext"?: string
onAccessibilityAction?: (event: AccessibilityActionEvent) => void

When accessible is true, the system will try to invoke this function when the user performs an accessibility custom action.

importantForAccessibility?: "auto" | "yes" | "no" | "no-hide-descendants"

[Android] Controlling if a view fires accessibility events and if it is reported to accessibility services.

"aria-hidden"?: boolean

A value indicating whether the accessibility elements contained within this accessibility element are hidden.

"aria-modal"?: boolean
role?: Role

Indicates to accessibility services to treat UI component like a specific role.

accessibilityLabelledBy?: string | string[]

Identifies the element that labels the element it is applied to. When the assistive technology focuses on the component with this props, the text is read aloud. The value should should match the nativeID of the related element.

android

"aria-labelledby"?: string

Identifies the element that labels the element it is applied to. When the assistive technology focuses on the component with this props, the text is read aloud. The value should should match the nativeID of the related element.

android

accessibilityLiveRegion?: "none" | "polite" | "assertive"

Indicates to accessibility services whether the user should be notified when this view changes. Works for Android API >= 19 only.

"aria-live"?: "off" | "polite" | "assertive"

Indicates to accessibility services whether the user should be notified when this view changes. Works for Android API >= 19 only.

accessibilityElementsHidden?: boolean

A Boolean value indicating whether the accessibility elements contained within this accessibility element are hidden to the screen reader.

ios

accessibilityViewIsModal?: boolean

A Boolean value indicating whether VoiceOver should ignore the elements within views that are siblings of the receiver.

ios

onAccessibilityEscape?: () => void

When accessible is true, the system will invoke this function when the user performs the escape gesture (scrub with two fingers).

ios

onAccessibilityTap?: () => void

When accessible is true, the system will try to invoke this function when the user performs accessibility tap gesture.

ios

onMagicTap?: () => void

When accessible is true, the system will invoke this function when the user performs the magic tap gesture.

ios

accessibilityIgnoresInvertColors?: boolean

ios

accessibilityLanguage?: string

By using the accessibilityLanguage property, the screen reader will understand which language to use while reading the element's label, value and hint. The provided string value must follow the BCP 47 specification (https://www.rfc-editor.org/info/bcp47). https://reactnative.dev/docs/accessibility#accessibilitylanguage-ios

ios

accessibilityShowsLargeContentViewer?: boolean

A Boolean value that indicates whether or not to show the item in the large content viewer. Available on iOS 13.0+ https://reactnative.dev/docs/accessibility#accessibilityshowslargecontentviewer

ios

accessibilityLargeContentTitle?: string

When accessibilityShowsLargeContentViewer is set, this string will be used as title for the large content viewer. https://reactnative.dev/docs/accessibility#accessibilitylargecontenttitle

ios

type?: ButtonType

Sets the text displayed by the button.

appearance?: ButtonStyle

Sets the coloring of the button.

borderRadius?: number

Sets the border radius of the button.

disabled?: boolean

Set to true to disable the button from being pressed & apply a slight opacity to indicate that it is unpressable. Defaults to false.

onShippingMethodSelected?: (event: { shippingMethod: ShippingMethod }) => void

This callback is triggered whenever the user selects a shipping method in the Apple Pay sheet. It receives one parameter: an event object with a shippingMethod field. You MUST update the Apple Pay sheet in your callback using the updatePlatformPaySheet function, otherwise the Apple Pay sheet will hang and the payment flow will automatically cancel.

onShippingContactSelected?: (
    event: { shippingContact: ShippingContact },
) => void

This callback is triggered whenever the user selects a shipping contact in the Apple Pay sheet IF ContactField.PostalAddress was included in the requiredShippingAddressFields array. It receives one parameter: an event object with a shippingContact field. You MUST update the Apple Pay sheet in your callback using the updatePlatformPaySheet function, otherwise the Apple Pay sheet will hang and the payment flow will automatically cancel.

onCouponCodeEntered?: (event: { couponCode: string }) => void

This callback is triggered whenever the user inputs a coupon code in the Apple Pay sheet. It receives one parameter: an event object with a couponCode field. You MUST update the Apple Pay sheet in your callback using the updatePlatformPaySheet function, otherwise the Apple Pay sheet will hang and the payment flow will automatically cancel.

setOrderTracking?: (
    completion: (
        orderIdentifier: string,
        orderTypeIdentifier: string,
        authenticationToken: string,
        webServiceUrl: string,
    ) => void,
) => void

Callback function for setting the order details (retrieved from your server) to give users the ability to track and manage their purchases in Wallet. Stripe calls your implementation after the payment is complete, but before iOS dismisses the Apple Pay sheet. You must call the completion function, or else the Apple Pay sheet will hang.

testID?: string
style?: StyleProp<ViewStyle>

Methods

  • Function called whenever the button is pressed.

    Returns void

MMNEPVFCICPMFPCPTTAAATR