Get Started
Digital Card Engine: Getting Started
Welcome to the Digital Card Engine (DCE). This guide gives you the big-picture view of what you can do, how it’s structured, and where to go next. DCE ships SDKs for Android and iOS, plus ready-made UI “microfrontends” you can drop into your app—or you can go headless and build your own UI with the data APIs.
What the SDKs provide
- Unified card data: Fetch received cards, balances, events, transactions, and card art from Paymentology APIs.
- Secure card display: Render PAN/expiry/emboss/CVV via MeaWallet MCD using time-based secrets (TOTP) from the backend.
- Ready-made UI: Composable screens and components on Android, SwiftUI/UIKit components on iOS (matching patterns and theming knobs).
- Theming: Palette, typography, spacing, and view-level properties that mirror across platforms.
- Headless mode: Call the data APIs directly and build your own UI.
SDK structure
- Android
- UI SDK:
digital_card_engine_sdk_android(Compose microfrontends, theming, MCD integration helpers). - Core SDK:
card_provider_sdk(Kotlin Multiplatform, networking, auth, TOTP, card art, transactions, events). - Reference app:
androidTestApp/shows end-to-end setup, navigation, and theming.
- UI SDK:
- iOS
- UI SDK: Swift package with ready-made screens/components (SwiftUI wrappers).
- Core SDK: KMP core consumed via XCFramework. Mirrors Android data APIs (cards, transactions, events, TOTP).
- Reference app:
iOSTestApp/demonstrates initialization, theming, and navigation.
When to use the UI vs headless
- Use the UI microfrontends when you want fast integration with aligned UX, built-in loading/error states, and secure display via MCD.
- Go headless when you need bespoke UI, custom navigation, or your own state management. The data APIs expose cards, balances, transactions, events, TOTP, and card images.
Environments and security
- Envs:
DEV,TEST,PROD(same names across Android/iOS). - Tokens: short-lived, provided by your backend; never hardcode secrets. The SDKs validate tokens and surface auth errors.
- Secure fields: PAN/expiry/name/CVV require a selected card, a valid TOTP secret from the backend, and the MeaWallet MCD artifact. Do not log or persist secrets.
Platform highlights
- Android
- Minimum SDK 29, Compose-based UI kit with theming via
StyleConfiguration. - Core data APIs are suspend functions; integrate with coroutines/ViewModels.
- MCD integration handled in the UI SDK; headless access via
getCardImages()orgetCardView().
- Minimum SDK 29, Compose-based UI kit with theming via
- iOS
- Swift API surface mirrors Android concepts (initialize with token + environment, fetch cards/transactions/events, request TOTP, render secure card).
- UI components are themeable; you can use SwiftUI or UIKit wrappers.
Typical integration paths
- Drop-in UI: Initialize → render card list → open card details (transactions, events, secure card view) → optional theming.
- Headless: Initialize → fetch cards → select card → fetch transactions/events/TOTP → render your own UI → optionally use bitmap/card views for secure fields.
Where to go next
- Setup: Platform-specific setup pages (repos, dependencies, permissions).
- Initialize: Platform-specific initialization guides for token/env + MCD bootstrap.
- Card List / Card Details / Transaction History: UI microfrontends and customization.
- Data APIs (Headless): How to fetch cards, history, TOTP, and secure images without the UI kit.
Updated 5 months ago
