RemitPay

Domestic and international remittance for OvoPay. Version 1.1.

RemitPay lets your users send money from their OvoPay wallet to people in other countries (or their own). The sender picks a destination country, enters an amount and chooses how the money should arrive:

  • Bank Transfer: the money goes to the recipient's bank account. You (the admin) make the bank payment and mark the remittance as completed.
  • Cash Pickup: the recipient collects cash from an agent in the destination country. The agent confirms the recipient with a one-time code and completes the payout.
WhoWhat they can do
AdminManage countries and exchange rates, charges, limits and commissions. Complete or reject bank transfers, and view every remittance.
UserSend remittances by bank transfer or cash pickup from the website or the User App, and view their remittance history.
AgentFind a cash pickup, verify the recipient and pay out the cash from the website or the Agent App. Earns a commission on every payout.

How It Works

The journey of a remittance from start to finish.

Bank Transfer

User submits Wallet is charged Pending Admin pays the bank Completed

The user fills in the recipient's bank details. The total amount (send amount plus charges) is taken from the wallet straight away, and the remittance is Pending. You send the money to the recipient's bank outside OvoPay, then mark it Completed. If you cannot make the payment, Reject it and refund the user.

Cash Pickup

User submits Wallet is charged Recipient visits an agent Agent sends a code Agent pays cash Completed

The user enters the recipient's name and mobile number. The recipient goes to any agent in the destination country. The agent looks up the remittance by the recipient's mobile number or the MTCN (the remittance tracking number). A 6-digit code is then sent to the recipient's mobile. The agent enters that code and their own PIN and hands over the cash. The agent's wallet is credited with the payout plus their commission, so the agent is paid back for the cash they handed out.

Installation

Install RemitPay.zip from the Addon Manager.

Go to Settings > Addon Manager > Install New Addon and upload RemitPay.zip. Step-by-step instructions are in the Addon Manager guide.

What gets added

  • Admin sidebar: a RemitPay menu with All Remittances, Pending Remittances, Completed Remittances, Rejected Remittances, Countries, Bank Transfer Form and Settings.
  • User panel: RemitPay under More Services, and a RemitPay service in the User App.
  • Agent panel: a RemitPay menu, and a RemitPay service in the Agent App.
  • Five starter countries: Bangladesh, India, Pakistan, Philippines and Nigeria, so you can test right away. Edit, disable or replace them as you like.
  • A background job named Remittance Currency Rate Cron that keeps exchange rates up to date.
  • Two permissions, two module switches (User and Agent) and six notification templates.

Setup Checklist

Do these once before letting users send money.

  1. Countries: keep only the countries you actually serve, and check each rate. See Countries & Rates.
  2. Bank Transfer Form: add the bank details users must fill in. Bank transfer does not work until this form is set up. See Bank Transfer Form.
  3. Settings: set limits, charges and agent commission. See Settings.
  4. Agents: for cash pickup, you need active agents whose country matches the destination country.
  5. SMS: make sure SMS sending works (Settings > Notification Setting > SMS Settings), because the pickup code is sent to the recipient's mobile.
  6. Cron: make sure the server cron job is running if you want exchange rates to update automatically.
  7. Test: send a small bank transfer and a small cash pickup with a test user and agent before going live.

Countries & Rates

Choose where users can send money, and at what rate.

Open RemitPay > Countries. Only countries listed here and switched on can be selected by users.

Add a country

  1. Click the Add button at the top of the page.
  2. Select the Country.
  3. Enter the Currency Code (for example INR), Currency Name (Indian Rupee) and Currency Symbol (₹).
  4. Enter the Rate, then save.

Edit, disable or delete

  • Use Edit to change the currency details or the rate.
  • Use the status switch to stop users from selecting a country without removing it. Remittances already sent to that country are not affected.
  • At least one country must always remain, so the last country cannot be deleted.

The Last Sync column shows when a rate was last updated automatically. See Automatic Exchange Rates.

Bank Transfer Form

Decide which bank details users must provide.

When a user chooses Bank Transfer, they fill in a form with the recipient's bank details. You design that form yourself, so you collect exactly what your bank needs.

  1. Open RemitPay > Bank Transfer Form.
  2. Add a field for each detail you need. Typical fields are Bank Name, Account Holder Name, Account Number, SWIFT / IBAN and Branch.
  3. For each field choose its type (text, number, dropdown, file and so on) and whether it is required.
  4. Click Submit. Your changes are not saved until you submit.

Settings

Limits, charges and agent commission.

Open RemitPay > Settings. All amounts are in your site currency. Percentages are a percent of the send amount. A charge is the fixed amount plus the percent amount added together.

SettingDefaultWhat it does
User Send Money Limit
Limit Per Send Money100The largest amount a user can send in a single remittance.
Daily Send Money Limit1,000The most one user can send in total per day.
Monthly Send Money Limit10,000The most one user can send in total per month.
Platform Charge (applies to every remittance)
Fixed Charge0A flat fee added to every remittance.
Percent Charge0A percentage fee added to every remittance.
Bank Transfer Charge (bank transfers only)
Fixed Charge0An extra flat fee for bank transfers.
Percent Charge0An extra percentage fee for bank transfers.
Agent Charge & Commission (cash pickups only)
Fixed Charge0An extra flat fee the sender pays for cash pickup.
Percent Charge0.5An extra percentage fee the sender pays for cash pickup.
Fixed Commission3A flat commission the agent earns for each completed payout.
Percent Commission0.5A percentage commission the agent earns for each completed payout.
OTP Validity120 secondsHow long the recipient's pickup code stays valid. Minimum 30 seconds.
Exchange Rate API
Enable API SyncOnUpdate country rates automatically. See Automatic Exchange Rates.
Exchange Rate API KeyEmptyOptional key for a more reliable rate provider.

Automatic Exchange Rates

Keep country rates up to date without manual work.

With Enable API Sync switched on, the Remittance Currency Rate Cron job regularly fetches live rates. It updates every active country whose currency code the provider recognises.

  • Without an API key, rates come from a free public service (open.er-api.com). This is fine for most sites.
  • With an API key from exchangerate-api.com , rates come from your own account, which is more reliable for busy sites. Paste the key into Exchange Rate API Key and save.
  • To set rates by hand (for example to add your own margin), switch Enable API Sync off. Otherwise your manual rates are overwritten on the next sync.

Modules, Permissions & Notifications

Control who can use RemitPay, and what messages are sent.

Module switches

Under Settings > Manage Settings > Module Settings there are two RemitPay switches. The User switch controls sending remittances. The Agent switch controls cash pickup payouts. Turning one off hides that feature on the website and in the app.

Staff permissions

In Manage Admin > Role & Permissions, give staff manage remittance (remittances, settings and the bank transfer form) and manage remittance countries (countries and rates).

Notifications

Edit these under Settings > Notification Setting > Notification Templates:

TemplateSent when
Remittance SubmittedA user submits a remittance.
Remittance Cash Pickup CreatedA cash pickup remittance is created.
Remittance Pickup OTPAn agent requests the pickup code for the recipient.
Remittance CompletedA remittance is completed, by the admin (bank transfer) or by an agent (cash pickup).
Agent Remittance CompletedAn agent completes a cash pickup payout (sent to the agent).
Remittance RejectedThe admin rejects a bank transfer.

Admin: Manage Remittances

Complete or reject bank transfers, and follow every remittance.

The RemitPay menu has four lists: All, Pending, Completed and Rejected. The number next to Pending Remittances shows how many bank transfers are waiting for you.

Complete a bank transfer

  1. Open RemitPay > Pending Remittances and click the details button on a remittance.
  2. Check the sender, the destination country, the amount the recipient gets, and the bank details the user entered.
  3. Send the money to the recipient's bank using your own banking channel.
  4. Click Complete. The remittance moves to Completed and the user is notified.

Reject a bank transfer

  1. Open the remittance details and click Reject Remittance.
  2. Enter a clear Reason. The user sees it, for example "The account number is not valid".
  3. Leave Refund Remittance Amount ticked to return the send amount to the user's wallet. Untick it only if you have refunded the user another way.
  4. Click Reject Now.

User: Send a Remittance

What your users do on the website or in the User App.

  1. Website: open More Services > RemitPay and click New Remittance. App: tap RemitPay in the services area.
  2. Choose the destination Country and enter the Amount to send.
  3. Choose the Delivery Type: Bank Transfer or Cash Pickup.
  4. Optionally add a Purpose, for example "Family support".
  5. Check the Payment Summary: exchange rate, what the recipient gets, total charge and total payable.
  6. Fill in the recipient's details. For Bank Transfer, that is the bank information form. For Cash Pickup, it is the Recipient Name and Recipient Phone Number with country code (for example 8801XXXXXXXXX).
  7. Click Submit Remittance and confirm with the verification code or PIN, if your site asks for one.
  8. The total is taken from the wallet and the remittance appears in Remittance History with its MTCN. For cash pickup, the sender should share the MTCN with the recipient.
Status the user seesMeaning
PendingWaiting for the admin (bank transfer) or for the recipient to collect it (cash pickup).
CompletedThe money has been delivered.
RejectedThe admin rejected the bank transfer. The reason is shown, and the amount is refunded if the admin chose to refund.

Agent: Pay Out a Cash Pickup

What your agents do when a recipient comes to collect cash.

  1. Website: open the RemitPay menu in the agent panel. App: tap RemitPay in the services area.
  2. In Find Recipient, enter the recipient's mobile number or the MTCN and click Send OTP (in the app: Find & Send Code).
  3. Check the Payout Information: sender, recipient name and mobile, destination and payout amount. Ask for ID if your policy requires it.
  4. A 6-digit code is sent to the recipient's mobile. Ask the recipient for it. If it does not arrive, use Resend OTP when the countdown ends.
  5. Enter the code in Recipient OTP (app: Pickup Code) and your account PIN in Agent PIN (app: Your PIN), then click Complete Payout.
  6. Hand the payout amount in cash to the recipient.

Troubleshooting

Messages you, your users or agents may see, and what to do.

Problem or messageWhat to do
RemitPay does not appear for users or agents Check that the addon is active in the Addon Manager and that the RemitPay User or Agent switch is on in Module Settings. In the app, close it fully and reopen it.
No destination countries are available right now. No country is switched on. Open RemitPay > Countries and enable or add at least one.
Destination country is not available The chosen country was disabled or removed. The user should pick another country, or you can re-enable it.
Bank transfer form is not configured yet. / Bank information form not found Set up the form in RemitPay > Bank Transfer Form and click Submit. See Bank Transfer Form.
Amount exceeds the per remittance limit / daily / monthly remittance limit The user reached a limit. They can send a smaller amount or try again the next day or month. To allow more, raise the limits in RemitPay > Settings.
Sorry! Insufficient balance The wallet balance does not cover the total payable (amount plus charges). The user needs to add money first.
The recipient gets a wrong amount, or the rate looks outdated Check the country's rate in RemitPay > Countries. If API sync is on, make sure the cron job runs (see Last Sync). If you want to set rates yourself, switch API sync off.
My manually entered rate keeps changing Enable API Sync is on, so rates are overwritten automatically. Switch it off in Settings.
Agent sees No pending cash pickup remittance found for this recipient in your country Check that the mobile number or MTCN is correct and includes the country code. Also check that the remittance is a cash pickup, is still pending, and was sent to the same country as the agent's profile. Bank transfers never show up for agents.
The recipient does not receive the pickup code Check Settings > Notification Setting > SMS Settings and that the Remittance Pickup OTP template has SMS switched on. Check that the sender entered the recipient's number correctly, with country code. The agent can use Resend OTP after the countdown.
The OTP is expired The code was entered too late. The agent should resend the code and enter the new one. To give more time, increase OTP Validity in Settings.
Please input correct OTP The code does not match. Use the latest code received, because sending a new code replaces the old one.
The PIN doesn't match! The agent entered the wrong account PIN. This is the agent's own PIN, not the recipient's code. The agent can reset it from their account if forgotten.
This cash pickup is no longer available. It was already paid out, possibly by another agent, or its status changed. Refresh and search again.
At least one remittance country is required You tried to delete the last country. Add another country first, or disable this one instead.
Staff member cannot open RemitPay pages Give their role manage remittance and/or manage remittance countries in Role & Permissions.
Users are not notified when a remittance is completed or rejected Check that email, SMS or push is set up in Notification Setting, and that the RemitPay templates are switched on for those channels.

FAQ

Quick answers to common questions.

Does RemitPay move money to banks automatically?

No. For bank transfers you make the actual bank payment yourself, then click Complete. RemitPay keeps the record, takes the money from the user's wallet and notifies the user.

Can a user cancel a remittance?

Not by themselves. For a pending bank transfer, the user should contact support. You can reject it with a refund.

Can I use RemitPay only for domestic transfers?

Yes. Keep only your own country in the Countries list and set its rate to 1 (with API sync off).

Can I offer only one delivery method?

To stop cash pickups, switch off the RemitPay Agent module. Bank transfer needs its form to be set up, so leaving the form empty keeps bank transfer unavailable.

Who pays the agent's commission?

The platform. The sender pays the charges you set, and the agent receives the commission you set. Set them so the charges cover the commission.

What is the MTCN?

The Money Transfer Control Number: a unique reference for each remittance. Users, agents and admins can use it to find the remittance.

Support

How to get assistance

Email Us: [email protected]