Primary + companion mobile app
This page covers the primary + companion mobile app certification path: your existing app remains the primary issuer experience, while a deep-linked companion app provided by Weavr handles in-app provisioningIn-app provisioning The flow that adds a card to a digital wallet (Apple Pay, Google Pay) from inside an issuer's mobile app, using the issuer's own authentication. In Weavr's stack, in-app provisioning is implemented via our Push Provisioning SDK on iOS or React Native. to Apple Wallet.
We have outstanding questions with Apple on a small number of points in this path. We update this page as Apple confirms its position. Speak to our support team for the latest position before committing to this route.
When this path applies
Choose this path when:
- Your end-users perform Card Lifecycle ManagementCard Lifecycle Management The set of in-app card operations Apple and Mastercard expect an issuer app to surface so cardholders can self-serve without leaving the app. Typical operations: view card number / CVV / PIN, lock and unlock, freeze and unfreeze, replace, report lost or stolen, view balance, and view transactions. Issuer apps that omit any of these are flagged at lab certification. on your primary mobile app.
- In-app provisioningIn-app provisioning The flow that adds a card to a digital wallet (Apple Pay, Google Pay) from inside an issuer's mobile app, using the issuer's own authentication. In Weavr's stack, in-app provisioning is implemented via our Push Provisioning SDK on iOS or React Native. to Apple Wallet happens on a separate, deep-linked companion app provided by us.
It is the right fallback for existing embeddersEmbedder A company or developer that integrates Weavr's embedded finance services into their own application to provide financial services to their end customers. that want to minimize the development they take on inside their primary mobile app while still giving cardholders an in-app provisioningIn-app provisioning The flow that adds a card to a digital wallet (Apple Pay, Google Pay) from inside an issuer's mobile app, using the issuer's own authentication. In Weavr's stack, in-app provisioning is implemented via our Push Provisioning SDK on iOS or React Native. experience.
Constraints to be aware of
- Both apps must be deep-linked. A web-only entry point does not satisfy Apple in this path.
- The companion app cannot be initiated from the web alone; the primary app must be the launchpad for provisioning.
- You must obtain Apple's approval before integrating Apple Pay functionality (such as in-app provisioningIn-app provisioning The flow that adds a card to a digital wallet (Apple Pay, Google Pay) from inside an issuer's mobile app, using the issuer's own authentication. In Weavr's stack, in-app provisioning is implemented via our Push Provisioning SDK on iOS or React Native.) into any app that is not your primary card-issuer appIssuer app Apple's term for the mobile app that authenticates a cardholder and provisions their card to Apple Wallet. Apple's certification, brand, and Card Lifecycle Management requirements apply specifically to this app. In a primary + companion architecture, your primary app remains the issuer app even if the provisioning step happens in a companion app..
Apple's requirement for linking apps
Per Apple's functional requirements for issuer appsIssuer app Apple's term for the mobile app that authenticates a cardholder and provisions their card to Apple Wallet. Apple's certification, brand, and Card Lifecycle Management requirements apply specifically to this app. In a primary + companion architecture, your primary app remains the issuer app even if the provisioning step happens in a companion app.:
Card Issuers must have approval from Apple before integrating Apple Pay functionality (such as In-App ProvisioningIn-app provisioning The flow that adds a card to a digital wallet (Apple Pay, Google Pay) from inside an issuer's mobile app, using the issuer's own authentication. In Weavr's stack, in-app provisioning is implemented via our Push Provisioning SDK on iOS or React Native.) within a mobile app that is not the primary Card Issuer Mobile App.
In that case, Card Issuers must include a deep link between the primary Card Issuer Mobile App and the app offering Apple Pay In-App ProvisioningIn-app provisioning The flow that adds a card to a digital wallet (Apple Pay, Google Pay) from inside an issuer's mobile app, using the issuer's own authentication. In Weavr's stack, in-app provisioning is implemented via our Push Provisioning SDK on iOS or React Native. functionality (e.g., landing page, banner, or dedicated home page space).
— Apple, FR 3.5 – Req 4.2
In practice, this means:
- Engage our support team early so we can prepare the Apple approval request alongside you.
- Plan the deep link from your primary app to the companion app before lab certificationLab certification The formal test pass run by an Apple-affiliated test centre that verifies an issuer app meets Apple Pay's functional, security, and brand requirements. The test exercises every Card Lifecycle Management operation, the in-app provisioning flow, and the Wallet Extension. A successful pass is required before launching Apple Pay on a card programme; most first-time integrations fail at least one item and need a remediation round., not after.
Requirements for your primary mobile app
Use this checklist when scoping the work on your primary app. Tick items off as you complete them — your progress is saved in this browser.
Strong cardholder authenticationStrong cardholder authentication Apple Pay's requirement that a cardholder authenticate with at least two factors — typically a knowledge factor (password) plus an inherence factor (biometrics on a trusted device) — before adding a card to Apple Wallet or accessing sensitive card details. The principle aligns with PSD2 SCA but applies specifically to issuer-app interactions Apple inspects during certification.
Apple requires Strong cardholder authenticationStrong cardholder authentication Apple Pay's requirement that a cardholder authenticate with at least two factors — typically a knowledge factor (password) plus an inherence factor (biometrics on a trusted device) — before adding a card to Apple Wallet or accessing sensitive card details. The principle aligns with PSD2 SCA but applies specifically to issuer-app interactions Apple inspects during certification. — a password (knowledge factor) plus biometrics (inherence factor) — before cardholders can manage cards. Our biometrics SDK — for iOS native and React Native — implements the recommended pattern: password on first login via our secure Password component, biometrics for subsequent sessions. The requirement applies the same way regardless of which SDK you use.
Passcode is deprecated for biometric login flows. Use a password as the primary credential.
Card Lifecycle ManagementCard Lifecycle Management The set of in-app card operations Apple and Mastercard expect an issuer app to surface so cardholders can self-serve without leaving the app. Typical operations: view card number / CVV / PIN, lock and unlock, freeze and unfreeze, replace, report lost or stolen, view balance, and view transactions. Issuer apps that omit any of these are flagged at lab certification.
"Complete" Card Lifecycle ManagementCard Lifecycle Management The set of in-app card operations Apple and Mastercard expect an issuer app to surface so cardholders can self-serve without leaving the app. Typical operations: view card number / CVV / PIN, lock and unlock, freeze and unfreeze, replace, report lost or stolen, view balance, and view transactions. Issuer apps that omit any of these are flagged at lab certification. means a cardholder can perform every operation Apple expects without leaving your primary app. At a minimum, surface:
- View card details (PAN, CVV, expiry) using our card components — iOS native or React Native.
- Lock and unlock the card.
- Freeze and unfreeze the card.
- Replace the card (where the product allows it).
- Report the card as lost or stolen.
- View balance and transactions.
If any of these are not in your app, Apple flags the integration during lab certificationLab certification The formal test pass run by an Apple-affiliated test centre that verifies an issuer app meets Apple Pay's functional, security, and brand requirements. The test exercises every Card Lifecycle Management operation, the in-app provisioning flow, and the Wallet Extension. A successful pass is required before launching Apple Pay on a card programme; most first-time integrations fail at least one item and need a remediation round..
Mapping requirements to Weavr building blocks
Each Apple requirement on your primary app maps to a specific Weavr SDK component, secure UI component, or MultiMulti Weavr Multi is an embedded finance solution that allows you to integrate financial services into your own application, providing a seamless experience for your customers. It enables you to offer managed accounts, managed cards, and transactions without requiring financial expertise. API endpoint.
| Apple requirement | Weavr building block |
|---|---|
| Password authentication (knowledge factor) | Password secure UI component — web, iOS login components, React Native login components |
| Biometric authentication (inherence factor) | Biometrics SDK — iOS, React Native |
| View card number, CVV, expiry | Card components — iOS, React Native, web |
| View PIN | Show Card PIN component — iOS, React Native, web |
| Lock / unlock card | MultiMulti Weavr Multi is an embedded finance solution that allows you to integrate financial services into your own application, providing a seamless experience for your customers. It enables you to offer managed accounts, managed cards, and transactions without requiring financial expertise. API: POST /managed_cards/{id}/block and POST /managed_cards/{id}/unblock |
| Replace card (lost / stolen / damaged) | MultiMulti Weavr Multi is an embedded finance solution that allows you to integrate financial services into your own application, providing a seamless experience for your customers. It enables you to offer managed accounts, managed cards, and transactions without requiring financial expertise. API: POST /managed_cards/{id}/physical/replace_lost_stolen and POST /managed_cards/{id}/physical/replace_damaged — see replace a card |
| Report card lost or stolen | MultiMulti Weavr Multi is an embedded finance solution that allows you to integrate financial services into your own application, providing a seamless experience for your customers. It enables you to offer managed accounts, managed cards, and transactions without requiring financial expertise. API: POST /managed_cards/{id}/physical/report_lost and POST /managed_cards/{id}/physical/report_stolen — see report a card |
| View balance | MultiMulti Weavr Multi is an embedded finance solution that allows you to integrate financial services into your own application, providing a seamless experience for your customers. It enables you to offer managed accounts, managed cards, and transactions without requiring financial expertise. API: GET /managed_cards/{id} (balance is returned in the card resource) |
| View transactions | MultiMulti Weavr Multi is an embedded finance solution that allows you to integrate financial services into your own application, providing a seamless experience for your customers. It enables you to offer managed accounts, managed cards, and transactions without requiring financial expertise. API: transaction list endpoints — see Transactions |
| Deep link to the companion app | Implemented in your primary app — see the deep-link section below |
Deep link
Add a deep link from your primary app to the companion app. Apple's wording allows for several placements; choose what fits your UX:
- A banner on the home or cards screen.
- A landing page describing Apple Pay.
- Dedicated home-page space for the "Add to Apple Wallet" entry point.
The link must clearly communicate to the user that they are leaving your primary app and entering the Weavr companion app to add the card to Apple Wallet.
Implementation guidance for the deep link itself (universal links, App Links, custom schemes) is not yet documented here. Contact our support team for the recommended pattern.
Requirements for the Weavr companion app
The companion app is provided and operated by Weavr, but a few items depend on us coordinating with you. Use this checklist to track that coordination.
Mapping companion-app requirements to Weavr building blocks
| Apple requirement | Weavr building block |
|---|---|
| In-app provisioningIn-app provisioning The flow that adds a card to a digital wallet (Apple Pay, Google Pay) from inside an issuer's mobile app, using the issuer's own authentication. In Weavr's stack, in-app provisioning is implemented via our Push Provisioning SDK on iOS or React Native. from the companion app | Push ProvisioningPush Provisioning A method that allows cardholders to add their card to a digital wallet (such as Apple Pay or Google Pay) directly from your app. The card details are securely tokenized and sent to the wallet provider, streamlining the process and enhancing the user experience compared to manual provisioning. This feature is currently in beta. SDK — iOS, React Native (handled by Weavr) |
| Wallet ExtensionWallet Extension An iOS app extension that integrates an issuer app with Apple Wallet. The UI Wallet Extension provisions a card from the issuer app into Wallet (the in-app provisioning flow). The Non-UI Wallet Extension exposes the issuer's card-management actions (such as 'View card details') from inside Wallet itself. Apple requires both for a primary issuer-app integration. (UI + Non-UI) | Apple Wallet extension guide (handled by Weavr; React Native wires the same extensions at the native iOS layer) |
| Card status surfaced in Wallet | Card status for iOS, Card status for React Native (handled by Weavr) |
For the technical detail behind these items, see:
iOS native:
React Native:
- Push provisioning overview
- Push provisioning setup (covers Wallet ExtensionWallet Extension An iOS app extension that integrates an issuer app with Apple Wallet. The UI Wallet Extension provisions a card from the issuer app into Wallet (the in-app provisioning flow). The Non-UI Wallet Extension exposes the issuer's card-management actions (such as 'View card details') from inside Wallet itself. Apple requires both for a primary issuer-app integration. wiring at the native iOS layer)
- Card status
Solution mapping
| Weavr solution | Companion mobile app with embedded push provisioningPush Provisioning A method that allows cardholders to add their card to a digital wallet (such as Apple Pay or Google Pay) directly from your app. The card details are securely tokenized and sent to the wallet provider, streamlining the process and enhancing the user experience compared to manual provisioning. This feature is currently in beta. |
|---|---|
| Enables | Primary + companion app certification |
| Provides | Push provisioningPush Provisioning A method that allows cardholders to add their card to a digital wallet (such as Apple Pay or Google Pay) directly from your app. The card details are securely tokenized and sent to the wallet provider, streamlining the process and enhancing the user experience compared to manual provisioning. This feature is currently in beta. on the companion app |
| Constraints | Both apps must be deep-linked; this path cannot support web-only initiation |
| Use case | Fallback for existing embeddersEmbedder A company or developer that integrates Weavr's embedded finance services into their own application to provide financial services to their end customers. that prefer to minimize development on their primary mobile app |
Next steps
- Confirm with our support team that this path is the right fit.
- Work the primary-app checklist into your roadmap.
- Coordinate Apple approval and bundle-identifier allow-listing with us before lab certificationLab certification The formal test pass run by an Apple-affiliated test centre that verifies an issuer app meets Apple Pay's functional, security, and brand requirements. The test exercises every Card Lifecycle Management operation, the in-app provisioning flow, and the Wallet Extension. A successful pass is required before launching Apple Pay on a card programme; most first-time integrations fail at least one item and need a remediation round..
- Walk through the integration during a pre-cert review with our team.