In version 2.3.1 (relased 28-Aug-2019) of our Mobile Wallet SDKs, we introduced user-interface (UI) components or views to expedite the development process and make it easier for developers to integrate with OST Platform.
This pages introduces the core features and points to detailed documentation on GitHub.
Watch a detailed video on how to initialize the Wallet SDK and make use of the User Interface Components
- How initialise the Wallet SDK
- How to set-up a user device
- Getter methods and how to call them
- How to activate a user
- How to configure the UI components
Workflows w/ UI Components (Views)
There are 12 supported workflows. Each workflow has one or more UI views. Views are re-used and both the content (text) and theme (design) are configurable for each workflow.
|1. Activate User||Create PIN, Confirm PIN|
|2. Add Session||Enter PIN|
|3. Get Mnemonic Phrase||Enter PIN, Show Mnemonics|
|4. Reset a User's PIN||Enter PIN, Set New PIN, Confirm New PIN|
|5. Initiate Recovery||Device List, Action Button, Enter PIN|
|6. Abort Device Recovery||Device List, Action Button, Enter PIN|
|7. Revoke Device||Device List, Action Button, Enter PIN|
|8. Update Biometric Preference||Enter PIN|
|9. Authorize Current Device With Mnemonics||Enter Mnemonics, Action Button, Enter PIN|
|10. Get Current Device QR-Code||Show QR|
|11. Scan QR-Code to Authorize Device||Scan QR, Accept Button, Reject Button, Enter PIN|
|12. Scan QR-Code to Execute Transaction||Scan QR, Accept Button, Reject Button, Enter PIN|
In every workflow we support two loaders with text configuration:
initial_loader: Loader shown before workflow request construct
loader: Loader shown after workflow request construct
In November 2019, we introduced support for Custom Loaders for OstWalletUI.
- Android: Version 2.3.6
- iOS: Version 2.3.5
- React Native: Version 2.3.10 -- To use the Custom Loader in React Native, you must update the downstream Android and/or iOS SDKs.
For more information, see the Custom Loaders section below.
List of Views
|View Configuration Keys||Description|
|create_pin||User sets PIN for first time|
|confirm_pin||User confirms PIN again|
|get_pin||User provides PIN for authentication|
|set_new_pin||User sets new PIN|
|confirm_new_pin||User confirms new PIN again|
|show_mnemnonics||Shows 12 word mnemonic phrase of device|
|provide_mnemonics||Get 12 word mnemonic phrase from user|
|show_qr||Show QR code of device|
|scan_qr||Scan QR code of another (registered) device or scan QR code of a transaction|
|verify_device||Dispays device data to be verified / authorized|
|verify_transaction||Displays transaction data to be verified / authorized|
|device_list||Shows list of authorized devices for user to choose from|
Detailed documentation is being maintained on GitHub
App developers can configure the content (text) and theme (design) of each of the UI components available. To configure either, the SDK needs to be provided with JSON. The default configurations can be found below.
PIN View (e.g. Create PIN)
Show Device List View
Show Mnemonics View
Enter Mnemonics View
Show QR Code To Authorize Device View
Scan QR Code View
Authorize New Device View
Confirm Transaction View
Theming: Theme Config
Sample Screen (Create PIN)
Sample Card (Device)
With the Custom Loader feature, it's possible to select or choose your own:
- Loader gif
- Success and failure icons
- Success message
- Loading-text message
UI Events and Listeners
Developers can subscribe to specific event of each UI workflow. Supported events are:
To Learn More Or Ask Questions Join us on Slack
Join our Public Slack space!
We would love to hear your feedback! Join our public slack space and let's chat. Click here.