Exchange
Menu path: Admin -> Exchange
This section is the main order management area of RoboExchanger.
It is used to review customer exchange orders, check payment details, update order status, review history, and handle exceptions like hold, decline, refund, or timeout cleanup.
Standard admin workflow
The normal admin workflow is:
- Open
Admin -> Exchange. - Find the order from the list.
- Open
Details. - Review customer, payment, receive account, and proof data.
- Update the status if needed.
- Check history, affiliate, review, and system info tabs when needed.
Important warning
Changing an exchange status is not just a visual change.
In the current codebase, a status update can also trigger:
- status history logging
- reserve adjustment logic
- customer notification flow
So admins should update exchange status carefully and only after reviewing the order details.
Main pages
Exchange ListExchange Details
This documentation focuses on the real day-to-day admin workflow: list and details.
Exchange List page
This is the main order list.
List actions
At the top of the page, admins can use:
Delete SelectedDelete Timeout Exchange
The table also supports:
- search
- export
- reload
- reset
The page also refreshes the list automatically in the background, so recent changes can appear without a full page reload.
List columns
DateReference IDUserFrom CurrencyTo CurrencyExchange AmountReceive AmountStatusAction
What the columns mean
Date: order date and timeReference ID: exchange reference numberUser: customer name and emailFrom Currency: send method with image and codeTo Currency: receive method with image and codeExchange Amount: customer send amountReceive Amount: customer receive amountStatus: current order stateAction: opens the details page
Reference ID
The reference ID is the main order number.
This is what customers and admins usually use when they track one exchange.
Delete Selected
This action deletes the checked orders from the list.
Use this very carefully.
It is not just table cleanup. Deleting exchange rows can affect reserve correction logic for removable statuses.
Use it only when:
- you are sure the selected records should be removed
- you already reviewed whether the orders are still needed for support, audit, or dispute handling
Delete Timeout Exchange
This action removes orders with timeout status.
Use this when:
- you want to clean expired unpaid orders
- those timeout records are no longer needed in the admin list
This is much safer than deleting mixed statuses manually.
Exchange Details page
Menu path:
Admin -> Exchange -> Details
This is the most important page in the exchange module.
It is divided into these tabs:
SummaryHistoryAffiliate & ReviewsSystem Info
Summary tab
This tab is the main working area for one order.
It includes:
Customer DetailsInvoiceSend DetailsReceive DetailsStatus Update Form
Customer Details card
This card shows the basic customer information.
What you will see
- customer name
- customer email
- customer phone, if available
- verification icon for linked customer accounts
Important details
- if the exchange belongs to a registered customer, the customer name links to the customer profile
- a green verification icon means the linked customer is verified
- a red verification icon means the linked customer is not verified
Use this card when:
- you need to contact the customer
- you need to confirm whether the order belongs to a registered account
- you need to review KYC state quickly
Invoice card
This card shows the basic order record information.
What you will see
Invoice: the reference IDStatus: current order statusDate AddedLast Update
Use this card when:
- the customer asks for the order number
- you want to confirm the current state quickly
- you want to know whether the order was changed recently
Send Details card
This card explains what the customer is sending to you.
Fields in Send Details
CurrencyAmountExchange FeeTotal PaymentExchange RateExchange ProofPayment Details
What each field means
Currency
- the send currency title
- the send currency code
- the send network, if used
Amount
- the main send amount before fee
Exchange Fee
- the fee charged on the send side
Total Payment
- total amount the customer should pay you
- usually this is
Amount + Exchange Fee
Exchange Rate
- the saved route rate used for this order
- shown as
from_rate -> to_rate
Exchange Proof
- customer uploaded payment proof
- usually a screenshot or receipt image
Payment Details
- customer-submitted note about the payment
- this may include transaction ID, sender details, or extra explanation
Important note
Exchange Proof is the customer’s proof of payment.
This is different from admin-side Transaction Proof, which appears on the receive side after the admin uploads it.
Receive Details card
This card explains what the customer should receive and what the admin may need to process the payout.
Fields in Receive Details
CurrencyReceive AmountPayout FeeTotal Receive AmountOn AccountDestination Tag- extra receive account fields
Qr CodeTransaction HashTransaction StatusEstimate ProfitorEstimate LossTransaction ProofDecline ReasonRefund HashRefund Proof
What each field means
Currency
- receive currency title
- receive currency code
- receive network, if used
Receive Amount
- receive amount before payout fee deduction
Payout Fee
- fee deducted on the receive side
Total Receive Amount
- final amount the customer should receive
On Account
- the customer’s main receive account
- for example wallet address, account number, email wallet, or bank account
Destination Tag
- extra destination identifier when the currency needs it
- used only for some specific payment networks
Extra receive account fields
- extra customer receive details collected during order creation
- examples may include bank name, branch name, memo, or other receive-account information
Qr Code
- customer-uploaded QR code for the receive account
- this is different from payment proof
Transaction Hash
- payout or outgoing transaction reference
- usually filled when the order is confirmed and a real payout was sent
Transaction Status
- external transaction state when available from a connected flow
Estimate Profit or Estimate Loss
- shown while the order is still open or recently processed
- before full completion this is treated as an estimate
Transaction Proof
- admin-uploaded proof after payout or transaction processing
Decline Reason
- shown when the order status is
declined
Refund Hash
- refund transaction reference
Refund Proof
- proof file for refund handling
Status Update Form
This is the main admin action area on the exchange details page.
Main fields
StatusCommentTransaction HashRefund HashRefund ProofExchange Proof
What each field means
Status
- selects the order state
Comment
- admin explanation shown when the order is declined or put on hold
Transaction Hash
- outgoing transaction reference for a confirmed order
Refund Hash
- refund reference number or transaction code
Refund Proof
- proof file for a refund
Exchange Proof
- admin-side transaction or payout proof file
Important form behavior
The page shows extra fields based on the selected status:
confirmedshowsTransaction HashdeclinedshowsCommenton-holdshowsCommentrefundshowsRefund HashandRefund Proof
This means the admin should select the correct status first, then fill the supporting fields.
Exchange status guide
| Status | Meaning | When to use it |
|---|---|---|
pending | Order was created and is still waiting for payment from the customer | Use for newly created manual-payment orders |
waiting | Customer submitted payment details or proof and the order is waiting for merchant review | Use after payment information is received but before final approval |
confirmed | Order is completed successfully | Use after payment is verified and payout is completed |
on-hold | Order needs manual pause or extra review | Use when something is unclear, risky, or needs investigation |
declined | Order is rejected | Use when payment is invalid, route cannot be completed, or policy blocks the order |
refund | Customer payment was refunded | Use when money was returned to the customer |
timeout | Order expired without successful completion | Usually a timeout cleanup state, not a normal manual finalization choice from this form |
Recommended status workflow
If the customer has not paid yet
Keep the order as:
pending
If the customer submitted payment details and proof
Move the order to:
waiting
If your team verified the payment and completed payout
Move the order to:
confirmed
Add when available:
Transaction Hash- admin
Exchange Proof
If something is suspicious or incomplete
Move the order to:
on-hold
Add:
- a clear
Comment
If the order cannot continue
Move the order to:
declined
Add:
- a clear
Comment
If you returned the customer payment
Move the order to:
refund
Add when available:
Refund HashRefund Proof
History tab
This tab contains:
Status HistoryFunds received in
Status History
This section shows the order status timeline.
Columns
Date AddedCommentOrder StatusProcessor
What it is used for
Use this section when:
- you need to know who changed the order
- you want to see the status timeline
- you want to review previous comments and actions
Funds received in
This section shows the account snapshot where the customer was expected to pay.
It comes from the send-side gateway/account information saved during order creation.
Examples may include:
- account name
- account number
- wallet address
- bank name
- gateway label
Use this section when:
- you need to confirm which receiving account the customer was shown
- you need to match customer payment with the correct company account
Affiliate & Reviews tab
This tab has two cards:
AffiliateReview
Affiliate card
This card shows affiliate bonus information if the order created a referral bonus.
What you may see
- affiliate bonus record ID
- linked customer
- bonus amount
If there is no affiliate bonus, this card stays empty.
Review card
This card shows customer review data for the exchange, if available.
What you may see
- star rating
- review comment
If no review was submitted, this card stays empty.
Important note:
- only confirmed exchanges are normally reviewable from the customer side
System Info tab
This tab shows IP and device-related order information when it exists.
What you may see
- IP address
- user agent
- domain
- country or geo details
- region or city data when available
Use this tab when:
- you need a fraud-review clue
- you want to inspect customer environment data
- you need extra investigation context
What admins should verify before changing status
Before updating a live order, check:
- customer name and contact data
- send amount and total payment
- payment proof and payment details
- receive account and extra receive fields
- current status and history
- whether refund or decline needs a written reason
- whether confirmation needs a transaction hash or admin proof
Common mistakes
- marking an order
confirmedbefore verifying payment - using
declinedoron-holdwithout a clear comment - confusing customer
Exchange Proofwith adminTransaction Proof - editing status without reviewing receive account and extra fields
- deleting orders that may still be needed for support or audit
- deleting non-timeout rows in bulk without checking their business impact
- forgetting that status changes can trigger notifications and reserve logic
Save or update problems
If the status form does not save, check these points:
Statusis selectedfrom_currencyandto_currencyhidden values are still present in the form- uploaded files use supported image formats
- file sizes are within your upload limit
- comment or hash fields are not too large or malformed
If the update saves but the result feels wrong, check these points:
- the chosen status really matches the order stage
- the correct proof field was uploaded
- the decline or hold reason was written clearly
- transaction or refund reference was entered in the correct field
- related notification settings are configured as expected
Best practice
- treat
waitingas payment-submitted but not yet approved - use
on-holdinstead of guessing when a case needs manual review - always write a clear reason for
declinedandon-hold - attach payout proof for completed manual operations when possible
- use
Delete Timeout Exchangefor cleanup instead of deleting mixed statuses blindly - review status history before making a second or third change to the same order