From 2682a14f25535aca8440dd2476d9b8963e47ded3 Mon Sep 17 00:00:00 2001 From: Santhosh Charan Murarishetty Date: Wed, 8 Jul 2026 12:15:41 +0530 Subject: [PATCH 1/3] docs: document last4/network fields on ApplePayResult --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 1ab675e..e33d1c8 100644 --- a/README.md +++ b/README.md @@ -411,7 +411,7 @@ The migration is a one-line import change. The controller API (`on()`, `tokenize | Prop | Type | Default | Description | | ------------- | -------------------------------------- | ----------- | ----------------------------------------------------------------------------------------------------------------- | | `config` | `ApplePayConfig` | required | Country/currency, total amount, and optional merchant ID (`mode='native'` only) | -| `onComplete` | `(ApplePayResult) => void` | required | Called with token, bin, expiration, and billing contact on success | +| `onComplete` | `(ApplePayResult) => void` | required | Called with token, bin, network, expiration, and billing contact on success (plus last4 in webview mode) | | `onError` | `(Error) => void` | — | Called on payment failure | | `mode` | `'webview' \| 'native'` | `'webview'` | `'webview'` uses the Bolt-hosted iframe (no entitlement needed). `'native'` uses PKPaymentButton + PassKit sheet. | | `buttonType` | `ApplePayButtonType` | `'plain'` | Button label variant. Auto-localized by Apple. | @@ -449,7 +449,7 @@ The migration is a one-line import change. The controller API (`on()`, `tokenize - `CreditCardInfo` — `CreditCardId | TokenResult` (input for `fetchReferenceID`) - `NativeCardFieldStyles` — `{ textColor?, fontSize?, placeholderColor?, borderColor?, borderWidth?, borderRadius?, backgroundColor?, fontFamily? }` (for `NativeCreditCard`) - `EventType` — `'error' | 'valid' | 'blur' | 'focus'` -- `ApplePayResult` — `{ token, bin?, expiration?, billingContact?, boltReference? }` (`boltReference` is webview-mode only) +- `ApplePayResult` — `{ token, bin?, last4?, network?, expiration?, billingContact?, boltReference? }` (`last4` and `boltReference` are webview-mode only — native mode's decrypted PassKit payload never carries last4) - `ApplePayButtonType` — Apple-approved button label variants (`'plain'`, `'buy'`, `'checkout'`, `'book'`, `'subscribe'`, `'donate'`, `'order'`, `'setUp'`, `'inStore'`, `'reload'`, `'addMoney'`, `'topUp'`, `'rent'`, `'support'`, `'contribute'`, `'tip'`) - `GooglePayResult` — `{ token, bin?, last4?, expiration?, email?, billingAddress? }` - `GooglePayButtonType` — Google-approved button label variants (`'plain'`, `'buy'`, `'pay'`, `'checkout'`, `'subscribe'`, `'donate'`, `'order'`, `'book'`) From 01255556d60680cd1f87a000e02b5cd23aaeb21c Mon Sep 17 00:00:00 2001 From: Santhosh Charan Murarishetty Date: Wed, 8 Jul 2026 13:03:17 +0530 Subject: [PATCH 2/3] docs: rephrase last4 webview-only note in ApplePay props table --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index e33d1c8..986b5b6 100644 --- a/README.md +++ b/README.md @@ -411,7 +411,7 @@ The migration is a one-line import change. The controller API (`on()`, `tokenize | Prop | Type | Default | Description | | ------------- | -------------------------------------- | ----------- | ----------------------------------------------------------------------------------------------------------------- | | `config` | `ApplePayConfig` | required | Country/currency, total amount, and optional merchant ID (`mode='native'` only) | -| `onComplete` | `(ApplePayResult) => void` | required | Called with token, bin, network, expiration, and billing contact on success (plus last4 in webview mode) | +| `onComplete` | `(ApplePayResult) => void` | required | Called with token, bin, network, expiration, and billing contact on success. `last4` is included in webview mode only | | `onError` | `(Error) => void` | — | Called on payment failure | | `mode` | `'webview' \| 'native'` | `'webview'` | `'webview'` uses the Bolt-hosted iframe (no entitlement needed). `'native'` uses PKPaymentButton + PassKit sheet. | | `buttonType` | `ApplePayButtonType` | `'plain'` | Button label variant. Auto-localized by Apple. | From 5eac0a932600fb6b9260d1ac37b61ba869a08488 Mon Sep 17 00:00:00 2001 From: Santhosh Charan Murarishetty Date: Wed, 8 Jul 2026 13:49:02 +0530 Subject: [PATCH 3/3] docs: note boltReference is also webview-mode only in ApplePay props table --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 986b5b6..8c63d09 100644 --- a/README.md +++ b/README.md @@ -411,7 +411,7 @@ The migration is a one-line import change. The controller API (`on()`, `tokenize | Prop | Type | Default | Description | | ------------- | -------------------------------------- | ----------- | ----------------------------------------------------------------------------------------------------------------- | | `config` | `ApplePayConfig` | required | Country/currency, total amount, and optional merchant ID (`mode='native'` only) | -| `onComplete` | `(ApplePayResult) => void` | required | Called with token, bin, network, expiration, and billing contact on success. `last4` is included in webview mode only | +| `onComplete` | `(ApplePayResult) => void` | required | Called with token, bin, network, expiration, and billing contact on success. `last4` and `boltReference` are included in webview mode only | | `onError` | `(Error) => void` | — | Called on payment failure | | `mode` | `'webview' \| 'native'` | `'webview'` | `'webview'` uses the Bolt-hosted iframe (no entitlement needed). `'native'` uses PKPaymentButton + PassKit sheet. | | `buttonType` | `ApplePayButtonType` | `'plain'` | Button label variant. Auto-localized by Apple. |