The Rezolve SDK is designed to be embedded with either an Android or iOS app in order to give consumers a seamless mobile experience with Rezolve’s triggers, workflows and transactions.
The Full SDK documentation for implementation can be found here:
- iOS: https://github.com/rezolved/rezolve_sdk_sampleapp_ios/wiki
- Android: https://github.com/rezolved/rezolve_sdk_sampleapp_android/wiki
The SDK communicates with the Rezolve online product stack – a set of dashboards and services designed to provide retailers and brands with everything they need to promote and sell via Rezolve.
The main online services to be aware of are:
- Core Services – this is what the SDK communicates with directly. The Core Services then pass on the requests and data from the app to the main Rezolve services.
- RCE – Rezolve Cloud Engine – this is a database and a set of endpoints that handle all the inventory and order data.
- RXP – Rezolve Experience Platform – This service manages all the engagements and triggers as well as providing the Act pages and Information pages.
If you have any specific questions, please email support@rezolve.com
Step 1 – Download SDKs
iOS details are here – https://github.com/rezolved/rezolve_sdk_sampleapp_ios
Android details are here – https://github.com/rezolved/rezolve_sdk_sampleapp_android
Step 2 – Download the Sample Apps
The Rezolve SDK is designed to sit within a ‘host app’ and will provide Rezolve’s scanning, geozone detection, redirection, workflow and commerce functionality to that app. To aid you with your testing, we have provided you with a basic ‘sample app’ so you can see the functionality in action.
The Android and iOS sample apps can be downloaded from the following locations:
- Android:
https://github.com/rezolved/rezolve_sdk_sampleapp_android
See the Readme.txt for setup info. - IOS:
https://github.com/rezolved/rezolve_sdk_sampleapp_ios
Put your SDK info in Config.swift
Step 3 – Understand The Rezolve SDK Classes
The Rezolve SDK is composed of a set of ‘Classes’ that carry out functions.
By calling the relevant class and sending instructions with it, you can provide all the Rezolve functionality to an app.
The table below describes what each class does, and what functions it supports.
Class | Key Functions | Comment |
---|---|---|
AddressbookManager | Manages addresses associated with a consumer. – Create – Update – Delete – List | |
ApiCheckManager | Checks if app is compatible with the backend API version, and indicates if app update is required. | |
AuthenticationManager | Deprecated | Use JWT Authentication instead (server-to-server, no SDK involvement) See note below |
AutoDetectManager | Used to start/stop Background Listening, and return detected items as a list. | |
CartManager | Manages the shopping carts for a given consumer. – List Carts – Get a Cart and its contents – Add/Update/Remove Products for a Cart | |
CheckoutManager | Deprecated | Use CheckoutManagerV2 |
CheckoutManagerV2 | Handles the purchase sequence when the consumer slides the ‘Instant Buy’ slider. – Checkout Cart (get price breakdown for a Cart) – Checkout Product (get price breakdown for a single Product) – Create Payment Request – Buy Cart – Buy Product – Sign Order Update – Abort Purchase | |
CustomerProfileManager | Used to display and update the consumer profile (a collection of basic information about the consumer – name, email, phone). | |
FavouriteManager | Provides management for consumer Favourites (saved values associated with topup transactions) | Only used in apps that support topups. |
MerchantManager | Provides various methods for getting merchant information. – Get Merchants List (for the ‘My Stores’ list) – Get Single Merchant – Search Merchants (by string and/or distance) – Get Shipping Methods (for a given merchant) | |
PaymentOptionManager | Provides list of payment and shipping options for a purchase page. The consumer can then choose their preferred option. – Get Product Options (for single product buy) – Get Cart Options (for a cart of products) | |
PhonebookManager | Manage phone numbers associated with a consumer. – Create – Update – Delete – List | |
PlacementManager | Deprecated | |
ProductManager | Provides methods for getting category information and product information. – Get Products and Categories – Get Single Product See documentation for which methods to use in which scenario. | |
ScanManager | Controls audio and image scanning capabilities, and handling of detected results. – Start/Stop Audio Scan – Start/Stop Image Scan – Toggle Camera Light – Handle Detected Results | |
TriggerManager | Provides handling for Touch Triggers – Resolve Trigger From URL (main functionality) – Listen to URL – Get Persisted Triggers | |
UserActivityManager | Used for ‘My Activity’ in order to get list of consumer Orders, and show a detailed view of those orders. | |
WalletManager | Provides methods to create, update, and delete consumer payment cards. |
Rezolve User Authentication (RUA)
In a typical installation, your authentication server will need to connect with ours to authorize users, using JSON Web Tokens.
To make it easier to try our SDK, we provide you with a user account on a Rezolve auth server. You can use this while testing the SDK, but will need to do a proper auth integration before moving off the Sandbox system.