In this post, the payment and wallet mechanisms in Onro will be explained.
Actors
There are three main actors in the system that interact with the finance and accounting system.
Customer (Individual & Business) |
Driver |
Company |
Payment Method
When the cost of a request should be paid by the customer, there are multiple payment methods. The customer set the payment method before creating the request and could be changed until the request is not finished. Active payment methods can be determined at the “Parcel Type” level by the company.
Wallet: This payment method is used when the customer wants to pay the request’s cost using his/her wallet. The balance will be deducted at the end of the request when the driver finishes the request.
Online payment: the customer could add credit/debit/visa/master card for the payment of the cost. The payment will be done after the request gets to finish. This method will be handled by Stripe.
Cash: This payment method is used when the customer pays the cost of the request in cash.
Cash by the receiver: This payment method is used when the recipient pays the costs of a request.
Wallet (E-Wallet)
Every customer and driver has a built-in wallet in the system. If the wallet balance is positive, they are creditors to the company and if the balance is negative, they are debtors to the company. The wallet balance can be changed by the following events.
Online payment: Both drivers and customers could top-up their wallets by online payment (through payment gateway or adding credit/debit card)
Making a Request: When a customer places a request (order), and the payment method is “wallet”, if the balance of the wallet is enough, the balance will be deducted as equal to the request’s price.
Getting a Request Done: Based on the payment method of the request, the balance of the driver’s wallet could be changed. If the payment method is “cash” or “receiver cash”, the balance will be deducted equal to the commission amount. Otherwise, if the payment method is “wallet” or “online payment”, the balance will be increased equal to the price minus the commission amount.
Support: the support could edit the wallet balance by adding new transactions manually (debtor or creditor) for both drivers and customers. Those transaction effects on the wallet balance.
Fee Plan
The fee plan shows how the driver works with the company. There are multiple fee plan types that could be used for working with drivers. When a driver is registered, the fee plan will be assigned to it.
Commission Based: commission-based fee plan could be used for working with freelancer drivers that have not fixed working shifts. The company has not made any commitments to pay the drivers. Drivers earn as much as they work. The percentage of the fee plan (commission) could be set by the company, and commissions are the company’s income.
A fee plan could have a setting for minimum balance. That is, the driver’s wallet balance should be greater than the minimum amount value. This is usually for solving the problem of getting cash commissions from drivers. (when a driver finish a cash request, the money of the company is in the driver’s hand)
Cash Out
When a driver wants to withdraw his/her Wallet balance, he can submit a cash-out request. The cash-out request will be reviewed by the company through the admin dashboard, and then can be fulfilled or rejected. This way a driver can be paid out the amounts of cash collected from the requests.