[Alpha] Credit Cards
React Native Web Wrapper SDK — Credit Cards Integration Guide (Alpha)
Overview
The Web Wrapper delivers the Credit Cards marketplace flow as an embedded widget, sharing one implementation across multiple tech stacks. This page covers installation, prerequisites, the core configuration props (channel, zone, productTypes), a basic usage example, prefilling lead data, client tags, and event handlers.
This approach is in [Alpha] while we finalize the cross-stack API.
You'll need the correct channel and zone values for your integration. Ask your Partner Manager to provide these values for Credit Cards.
Before you start, request an API token from your Partner Manager. It authenticates with the Engine API and is required to use the Prefill API. You may want multiple tokens depending on how many entry points your app has into the SDK.
Requirements
React Native
Install
Install the SDK from npm using your package manager:
npm install --save @moneylion/react-native-web-wrapperyarn add @moneylion/react-native-web-wrapper
Initialize
Import the WebWrapper component into any file where you want to render the Engine flow:
Basic Example
Properties
channel
string
Yes
Identifies your integration in Engine. Provided by your Partner Manager (e.g. 'direct').
zone
string
Yes
Identifies the placement or distribution surface for the SDK. Provided by your Partner Manager (e.g. 'marketplace').
productTypes
ApiModels.ProductType[]
Yes
Product flow(s) to render. Use [ApiModels.ProductType.CreditCard] for Credit Cards.
bearerToken
string
For prefill
API token from your Partner Manager. Required to use the Prefill API. Without it, the standard non-prefilled flow renders.
isDev
boolean
No
When true, the SDK targets Engine's dev/staging hosts. Defaults to false (production).
style
ViewStyle
No
Style applied to the underlying view, e.g. {{ height: '100%' }}.
personalInformation, financialInformation, creditInformation, creditCardInformation
Lead*Information
No
Prefill data. See Prefilling Lead Data.
onExit
OnExitCallback
Yes
Fired when the user exits the flow.
onInitialize, onCreate, onUpdate, onNavigate, onSubmit, onRateTableRender, onOfferClick, onErrorPageView, onErrorPageRetry, onEmbedError, onEmbedErrorRetry
(props) => void
No
Optional tracking hooks. See Event Handlers.
Prefilling Lead Data
Prefill any user data you already have to reduce what the user has to type in-flow. Prefilled data is grouped into typed information objects, each passed as its own prop on WebWrapper (e.g. personalInformation, financialInformation, creditInformation, creditCardInformation).
Prefilling requires a bearerToken. Pass only the fields you have — omitted fields are collected from the user in-flow.
Example
Type Definitions
Every prop and field is optional — pass only what you have.
Enums / Accepted Values
Use a member of the corresponding ApiModels enum (each member maps to the on-the-wire value shown):
Do not prefill any fields that are empty or unavailable — omit them so the user is prompted in-flow. Prefilled data must match the type definitions above, and any field backed by an enum must use a valid value. If a value is invalid, that attribute is stripped and the user will have to enter it again manually.
Client Tags
The Engine Web Wrapper SDK supports adding your unique Client Tags to track performance of specific campaigns or users. All Client Tag data is attributed to the lead level.
Client Tags are added via the clientTags prop, a map of string keys to lists of string values. We strongly recommend including only one element per list for ease of reporting and attribution — if you want two separate tags, include the second tag under a different key. There is no limit to the number of keys.
Note: Client Tags are only sent as part of a prefill request. You must provide both a bearerToken and prefill data (via the information props such as personalInformation). If no prefill data is supplied, the SDK makes no prefill call and any clientTags you pass are ignored.
Event Handlers
The WebWrapper component exposes optional event callback props that notify your app when key moments occur during the user's journey. Each callback receives an event object containing a timestamp (ISO 8601 UTC) and event-specific fields.
All callbacks are optional. If a callback is not provided, the SDK will still log the event to the debug console in development mode.
Available Events
onInitialize
SDK finished loading the embed
onCreate
New lead created
onUpdate
Lead data updated
onNavigate
Page navigation within the flow
onSubmit
Lead form submitted
onRateTableRender
Rate table displayed with offers
onOfferClick
User clicked an offer
onErrorPageView
Error page displayed in the flow
onErrorPageRetry
User retried from the error page
onExit
User exited the SDK
onEmbedError
Web embed failed to load
onEmbedErrorRetry
User retried after embed failure
For Credit Cards, onRateTableRender populates creditCardOffers, and onOfferClick includes card-specific fields such as financialInstitutionBrandName, cardName, isITA, and cardNetwork. Every event includes a timestamp (ISO 8601 UTC).
Last updated
Was this helpful?