Skip to main content

Payment Gateway

Menu path: Admin -> Payment Gateway

This section controls how customers pay you, how customers submit their receive details, and which payout methods appear in the customer withdrawal area.

In RoboExchanger, one gateway can affect three different customer screens:

  • the public exchange form
  • the manual payment page after an order is created
  • the customer withdrawal request page

Because of this, a small gateway mistake can create customer confusion very quickly. Fill every field carefully and test one real order after every major change.

Main pages

  • Manual Gateway List
  • Manual Gateway Create
  • Manual Gateway Update
  • API Gateway List
  • API Gateway - UddoktaPay

Best setup order

Use this order when you create a new payment method:

  1. Create the gateway from Admin -> Payment Gateway.
  2. Connect that gateway to a method from Currency.
  3. Use that currency in Exchange Direction.
  4. Test the exchange flow from the public website.
  5. If customers should also request withdrawals through that method, enable withdrawal support for the gateway and review Bonus & Withdraw.

What manual gateways are

Manual gateways are payment methods that your team checks manually.

Common examples:

  • bank transfer
  • mobile wallet
  • local payment method
  • crypto wallet
  • cash office account

Use a manual gateway when the customer must see your account details, follow written payment instructions, or upload payment proof for manual review.

Manual Gateway List page

This page shows the gateways you saved in the admin panel.

List columns

  • Gateway: gateway logo and gateway name
  • Withdrawal Method: shows whether this gateway is allowed for customer withdrawals
  • Updated At: last update time
  • Status: active or inactive
  • Action: edit or delete options

What the list page is used for

Use this page to:

  • review all saved gateways
  • quickly see which gateways are active
  • check whether a gateway is allowed for withdrawal
  • open the edit page
  • remove unused gateways

Status toggle

The Status column has a quick toggle.

When you turn a gateway off:

  • customers may not be able to use currencies connected to that gateway
  • some exchange directions may stop working
  • send or receive gateways may become unavailable on the public site

Do not disable a live gateway unless you already moved the related currencies to another working gateway.

Delete action

Delete only when the gateway is no longer needed.

Avoid deleting a gateway that is still used by:

  • active currencies
  • live exchange directions
  • customer withdrawal requests
  • old orders that your staff may still need to review

In most cases, Inactive is safer than delete.

Manual Gateway Create and Update

The create and update pages use the same main form.

This is the most important part of the gateway setup.

Manual gateway field guide

FieldWhat it meansValidation or good input
Gateway NameMain display name of the payment methodRequired. Keep it clear and under 100 characters
StatusTurns the gateway on or offRequired. Choose Yes or No carefully
Select For Withdrawal Payment?Shows this gateway in customer withdrawal requestsRequired. Use Yes only if customers can receive payout through this method
QR code submit by customer?Adds an optional QR upload field to the exchange formRequired. Useful only when customers may send you a QR image for their receive account
QR CodeYour own payment QR imageOptional image
Receive Account SubmissionExtra required fields the customer must fill for their receive detailsOptional. Use lowercase names separated by commas
Account DetailsYour payment account titles and valuesStrongly recommended for manual payment gateways
LogoGateway logo or iconRequired on create. Image only
InstructionPayment instructions shown to the customerStrongly recommended

Field-by-field explanation

Gateway Name

This is the name your staff sees in admin pages.

It is also used in customer-facing areas such as:

  • currency setup
  • some exchange screens
  • the customer withdrawal method list

Use a name that is short and specific.

Good examples:

  • Bank Transfer USD
  • Nagad Personal
  • USDT TRC20 Wallet
  • Perfect Money USD

Avoid vague names like:

  • Gateway 1
  • Bank
  • Wallet

Status

This field controls whether the gateway is active.

  • Yes: the gateway can be used normally
  • No: the gateway is disabled

If a currency is connected to a disabled gateway, customers may see errors when they try to create an exchange.

Use No when:

  • a payment account is under maintenance
  • a wallet is temporarily unavailable
  • you want to stop new orders without deleting the gateway

Select For Withdrawal Payment?

This field controls the customer withdrawal page.

When this option is Yes, the gateway can appear as a payout method in customer withdrawals.

Use Yes only if:

  • your team really sends payouts through this method
  • staff know how to process withdrawals through this method
  • your withdrawal limits are already configured

Use No when the gateway is only for incoming exchange payments.

Example:

  • Bank Transfer USD: maybe Yes
  • Nagad Personal: maybe Yes
  • Temporary Deposit Wallet: usually No

QR code submit by customer?

This field is often misunderstood.

When this option is Yes, the exchange form shows an extra optional upload field where the customer can send their own QR code image for the receive account.

This is useful for payment methods where customers may receive money through a scannable QR.

Important:

  • this is about the customer's receive QR
  • this is not the payment proof upload
  • this is not your own gateway QR image

If you do not need customer QR images, keep this option No.

QR Code

This field is for your own gateway QR image.

If you upload a QR code here, customers can see it on the manual payment page and scan it while sending payment to you.

Use this when:

  • your wallet app supports QR payment
  • your account number is easier to scan than type
  • you want to reduce customer typing mistakes

If you do not use QR-based collection, you can leave this empty.

Receive Account Submission

This field creates extra required fields on the public exchange form.

The exchange form already has one main receive account field. Use Receive Account Submission only for extra details that you also need from the customer.

Good examples:

  • bank_name,branch_name,account_holder_name
  • network,memo
  • iban,swift_code
  • city,state

Rules for this field:

  • use lowercase letters
  • use underscores for multi-word names
  • separate items with commas
  • do not add spaces inside the field names

Good example:

bank_name,branch_name,routing_number

Bad example:

Bank Name, Branch Name, Routing Number

If you add these extra fields, customers must fill them before they can submit the exchange request.

Account Details

This section shows your payment account information to the customer.

Each row has:

  • Title
  • Value

Customers will see these values on the manual payment page after the order is created.

Good account detail examples:

  • Account Name -> Robo Exchanger Ltd
  • Account Number -> 1234567890
  • Bank Name -> ABC Bank
  • Branch -> Dhaka Main Branch
  • Wallet Address -> TX9...
  • TRC20 Network -> TRON

Use short titles that customers can understand quickly.

If a title is left empty, that row should not be treated as a real account field. Remove empty rows before saving.

This is the gateway image used in the admin panel and related screens.

Important rules:

  • logo upload is required when you create a gateway
  • logo upload is optional when you update an existing gateway
  • use a clear image with a simple background
  • a square image usually looks better

Accepted upload types follow the image rules used by the application, such as JPG, JPEG, PNG, WEBP, and AVIF.

If upload fails, use a smaller image file and a standard image format.

Instruction

This field is where you explain the payment steps to the customer.

The instruction text appears on the manual payment page.

Write this part very clearly. Good instructions reduce support tickets.

A good instruction usually includes:

  • the exact amount the customer must send
  • where to find your account details
  • whether the customer must include a payment reference
  • whether payment proof is required
  • what happens after submission

Good example:

1. Send the exact total amount to the account shown above.
2. Do not send less or more than the order amount.
3. Add your transaction ID in the payment details box.
4. Upload a clear payment proof if available.
5. Wait for our team to review and complete the order.

How this gateway appears to customers

This part is very important.

The same gateway can behave differently depending on where it is used.

When the gateway is used for the send currency

Customers will see:

  • your Account Details
  • your QR Code, if uploaded
  • your Instruction

This usually happens on the manual payment page after the order is created.

When the gateway is used for the receive currency

Customers will see:

  • the main receive account field
  • the extra fields from Receive Account Submission
  • the optional customer QR upload field, if QR code submit by customer? is enabled

This happens on the exchange form before the order is submitted.

When Select For Withdrawal Payment? is enabled

Customers can choose this gateway from the withdrawal request page.

Use this only for real payout methods that your staff can process safely.

API Gateway List page

This page is different from the manual gateway pages.

In the standard codebase, the API Gateway List is mainly a premium feature list.

What you need to know:

  • most cards are marked PRO
  • the page shows supported provider names, not full standard-edition setup forms
  • UddoktaPay has its own page, but that page is also shown as a premium upgrade list in the current codebase

This means:

  • do not assume every API provider is ready in the standard subscription
  • do not promise a customer that a provider is live just because you can see the card
  • for working standard-edition setup, use Manual Gateway Create

Important note about the Add Gateway button on the API page

The Add Gateway button opens the manual gateway create page.

So if you are using the standard edition and need a working setup now, create a manual gateway first.

Example setup ideas

Example 1: Bank transfer gateway

  • Gateway Name: Bank Transfer USD
  • Status: Yes
  • Select For Withdrawal Payment?: Yes or No, based on your payout policy
  • QR code submit by customer?: No
  • Receive Account Submission: bank_name,branch_name,account_holder_name
  • Account Details: bank name, branch, beneficiary name, account number, SWIFT

Example 2: Mobile wallet gateway

  • Gateway Name: Nagad Personal
  • Status: Yes
  • Select For Withdrawal Payment?: Yes, if you also pay withdrawals through Nagad
  • QR code submit by customer?: Yes, if customers may give you a receive QR
  • QR Code: upload your own Nagad receive QR if you have one
  • Account Details: account name, wallet number, account type

Example 3: Crypto payout gateway

  • Gateway Name: USDT TRC20 Wallet
  • Status: Yes
  • Select For Withdrawal Payment?: depends on your business flow
  • QR code submit by customer?: Yes, if customers may upload a wallet QR
  • Receive Account Submission: network,memo
  • Account Details: wallet address and supported network

Common mistakes

  • creating a gateway but forgetting to connect it from Currency
  • disabling a gateway that is still used by a live currency
  • thinking QR code submit by customer? means payment proof upload
  • putting spaces or capital letters inside Receive Account Submission
  • writing unclear Instruction text
  • saving empty account detail rows
  • enabling withdrawal for a gateway that is not really used for payouts
  • assuming all items in API Gateway List are active in the standard edition

Save or update problems

If the gateway does not save, check these points first:

  • Gateway Name is filled in
  • every Yes/No field is selected
  • Logo is uploaded on create
  • uploaded images use a supported image format
  • image files are not too large for your site upload limit
  • Receive Account Submission uses simple field names such as bank_name,branch_name
  • account detail rows are not left half-empty

If the gateway saves but the customer still cannot use it, check these points:

  • the gateway Status is active
  • the currency is connected to the correct gateway from Currency
  • the exchange pair is active in Exchange Direction
  • the public order flow is tested once from start to finish

Best practice

  • keep gateway names short and professional
  • write payment instructions in simple steps
  • use account detail titles that normal customers understand immediately
  • test both the exchange form and the manual payment page after every gateway edit
  • use inactive status instead of delete when you may need old records later