Demo: Getting started on Rehive

Updated 23 July 2018.

Welcome to Rehive and the world of rapidly building fintech products!

This is a quick guide to help you build your first fintech application on the Rehive Platform. The guide consists of 2 parts showcasing the Admin Dashboard for management and a User App for the end user.

The cool thing is you don’t require any development skills to build your first app on Rehive!

You can join our Slack community if you have any questions or feedback and check out our previous blogpost to read more about how the Rehive Platform works. The features we cover in this guide are only the tip of the iceberg of what you can do on the platform. Contact us if you want to schedule a demo.

Key concepts

The Admin Dashboard is the back office panel to manage transactions, users and configuring all the settings. The dashboard is built on top of the Admin API which has full permissions to interact with the system on behalf of admin users.

The User App is built on top of the User API which restricts the user to execute actions limited to an authorised user account.

Part 1: Admin Dashboard

Sign up, create a company and start the trial

  1. First things first — follow this link to create an account on Rehive. (Tip — choose a simple Company ID that is easy to remember. The Company ID will be used in all the future API calls and cannot be changed.)
  2. Optionally, go to your inbox and verify your email address.
  3. After verifying your email address you will be redirected to the welcome page where you can start your 14 day trial. Read about our pricing by following the links on this screen.
  4. After opting to start the trial you will be redirected to choose a company name which can be updated at anytime if you want to. The company name is essentially the name of your product too.
  5. Next, you’ll be directed to the Create a fintech app flow. From here we’ll take you on a step-by-step process of configuring the core business logic for your fintech application. Let’s Go!

You can choose to skip the configuration flow by choosing “Use default setup” and move on to Part 2, or follow the step by step process to learn more about the custom configuration flow.

Create a fintech app for your company

Rehive Platform is essentially used for configuring the four core building blocks of your application. These are users, currencies, accounts, and transactions. This part will introduce you to each building block in order to get started.

You can skip all of the configurations below and simply select, “Use default setup”, which will configure a basic wallet application.

User groups

  1. We start off by creating user groups. Default user groups exist for your company’s service and admin users respectively. You may want to create additional groups for merchant, customers, suppliers etc. Let’s create a group for users to start with.
  2. Enter a group name — the system will autogenerate a label for you. — and click “Add”. Tick both the Public and Default toggles for this setup. The user group has now been added to your groups list and every new user will automatically be added to this group unless otherwise specified via the API. (top right window).
  3. You can add multiple user groups depending on the user types your business needs to accommodate. Let’s proceed by clicking Next.

Currencies

  1. Next, we’ll add one or multiple (⌘ + select) currencies by selecting from the list and clicking Add. We will add two currencies, USD and ZAR for the purpose of this tutorial.

(Note — You can also add your own currency by selecting Add custom currency. You will notice several properties that you may configure for your own currency.)

Adding one or more currencies to your user group(s)

Accounts

  1. We need to provide user groups with default accounts, so that when new users are added to their respective groups, they have at least one active account. To do this we create account configurations for user groups. Start by selecting the first user group to which we want to assign an account configuration. Let’s begin by creating an account for the user user group. Select the user group.
  2. Configure an account for the user group by providing a name and label. Let’s call our default merchant account wallet.
  3. We can set wallet as either the primary account (a user group may have multiple accounts), the default account, or both. We’ll set wallet as the primary and default account for the users user group by checking the Primary and Default toggle.
  4. Next, select the currencies you want this account to transact in. We have only added two currencies but we could have selected multiple currencies (⌘ + select) that wallet should support. Let’s add only one currency to this account, USD. Click Add.
  5. Click Next to move to the final step.

(Remember — If you need to make any changes such as adding more accounts, changing account names, changing toggles or adding more currencies to existing accounts, you can always select an account from the top right window and edit that account’s properties.)

Configure user groups, accounts and currencies

Transaction subtypes

Now that we’ve configured user groups, currencies and account configurations we need to create some transaction subtypes. In the simplest form, transactions either represent a debit or a credit but we may want to differentiate between different types of debits and credits. Transaction subtypes are therefore a way of creating certain transactions in order to manage them more effectively.

  1. Let’s start by creating a credit transaction subtype.
  2. Provide a suitable label and name, in this case we will name our credit subtype deposit. Click Add.
  3. Now let’s do the same for a debit transaction subtype which we will call purchase. Click Add.
  4. Add as many as you like, and click Next.
Adding a credit transaction subtype called ‘deposit’

Awesome, you’ve completed the configuration of your fintech application for your business. You will now be redirected to the admin dashboard showing the Currencies overview. This is the primary view of the dashboard and you should immediately notice that you may add more currencies, accounts, and transaction subtypes as an administrator. Navigate through the options in the settings pane (left) and give it a try.

Navigate to Currencies to add more currencies

Add your first user

Administrators have full access to create and manage users. Follow the steps below to manually add a user from the Admin Dashboard:

Click on the User tab in the sidebar. You will notice this is your first user email with which you created your company. By default this user is allocated to the admin user group. Let’s add another user. Click on the “New” button on the top right corner of the User page.

  1. Fill in the new user’s first name and email address. Select user for the group drop down and click on “Add” at the bottom of the page. (Tip — if you only have one email address you can use this little hack to use multiple user accounts if you use gmail: append your normal email address with + and a word of your choice to create a ‘new’ address, e.g. if your email address is michael@gmail.com, you could use michael+test@gmail.com . You will receive an email to your normal inbox.)
  2. You’ll receive two emails in your inbox linked to the new user. The first email will ask you to verify your email. Click on the link and then navigate back to the Admin Dashboard and log back in as the administrator. (Note — you can easily customize the email template by activating the Notification Service in Rehive Services in the dashboard) The second email will ask you to choose a password. Follow the instructions and choose a password for the new user.
  3. Congratulations, now you have two users in your company.

You now have one user with admin privileges and one user without.

Make your first transaction as the administrator

Rehive’s transaction ledger system supports two transaction types: debit and credit transactions. A credit transaction increases the user’s balance, whereas a debit transaction reduces the user’s balance.

Follow the steps below to a credit the new user’s balance:

  1. Click on the Transactions link in the sidebar. Click on the “New” button on the top right.
  2. Select the transaction type — Credit in this case. Next type the user’s email address and the amount you want to credit to the user’s balance.
  3. Select which currency you would like to make the transaction in (it should be one that you added to your user’s account).
  4. The user’s account which we added in the step above should auto-fill.
  5. Confirm the transaction. If the transaction is successful you’ll see a success message.
Manually credit an user’s account

Part 2: User App

This part of the guide is very exciting as you get closer to building a consumer facing app!

You’ll register a new user from a demo User App on your mobile phone, credit the user’s balance from the Admin Dashboard and let the user send money to an email address or mobile number.

Install Expo on your phone

  1. Go to the app store on your mobile phone, search for and install Expo (Android). (Note — Expo is an emulator for React Native apps. It is a great way to test apps directly on your mobile phone. The cool thing about Expo is that it allows you to access the native features on your device, e.g. you can access your contacts, camera, etc. Expo is also super fast!)
  2. Open Expo on your mobile phone and follow the instructions to create an Expo account.
  3. Congratulations, now have successfully installed Expo on your phone.

Add the demo User App to Expo

Now you can add Rehive’s demo User App to Expo:

  1. Following this link, or
  2. Open Expo on your mobile phone and scan the QR code below:
Open Expo and scan QR code to test on Android

Scan the QR code to add the demo app to Expo.

If Expo’s QR code scanner does not work you’ll have to install a QR code scanner or Click on “+” to add a project in Expo and enter the following URL:

exp://exp.host/@rehive/wallet

Once the app is installed, click on the project to open the app as seen below:

Register a new user

Follow the steps below to create a new user account directly from the User App:

  1. Enter the same Company ID that you’ve created before (e.g. demo_guide). and click next.
  2. Click on the “Register” button in the user app.
  3. Fill in the requested registration information; for now this will just be your user’s email and password. (Reminder — if you only have one email address you can use the same hack as before to test another user account: e.g. if you already used john+1@gmail.com, then type john+2@gmail.com to create a new user. You will receive an email to your inbox to verify your account.)
  4. Remember to verify your email!

Credit the new user’s balance

Go back to the Admin Dashboard to credit the new user’s balance by following these steps:

(Remember — new users will now be added to the default user group. If you don’t have default accounts set up for this group, you will first have to create a primary account for each new user)

  1. Click on the tab “Transactions” in the sidebar and then click on “Credit”.
  2. Add the recipient’s email address, amount and currency. (Note — If the recipient’s email is not yet verified, the administrator can do so by navigating to the User page and following these steps: Users > select the user > click on the 3 dots menu > “Verify” in the Email address box.)
  3. Click “Next” and then “Confirm”.
  4. Go back to the User App and pull down on the home page to refresh your transaction history to view the user’s balance.

Remember to check out the cool User App features

The User App is an open source project with lost of interesting React Native features, including:

  • QR code scanner — Click on “Send” and then click on the scanner icon in the top right. You can a barcode that contains an email address or mobile number to easily populate the recipient field.
  • Contacts filter — Click on “Send” and then start typing the recipient’s email address or mobile number to filter through the contacts on your device.

Congratulations

Congratulations for completing the guide and building your first fintech demo app on Rehive! Let your creative side go wild and continue building awesome fintech apps! Don’t forget to let us know what you are working on ;-)