Skip to main content

Wallet

Available to: Admin, Super Admin (managing any user), All Users (own wallet)

Each user has an OX Wallet for platform transactions — deposits, withdrawals, payments, and settlements.

Wallet Overview

The wallet section (/users/{userId}/account/wallet) displays:

  • Current balance — Available wallet balance
  • Credit limit — Extended credit limit (if applicable)
  • Transaction history — Complete list of all wallet transactions

Payment Modes

Transactions can use the following payment modes:

ModeDescription
CashPhysical cash payment
UPIUPI-based transfer
Net BankingOnline bank transfer
Debit CardCard payment
Credit CardCard payment
ChequeCheque-based payment
CouponCoupon/voucher redemption
Write-offAmount written off
CorrectionManual correction entry
InterestInterest credit
Online DiscountDiscount applied
PayoutExternal payout (CashFree, PayU)

Deposit

Add funds to a user's wallet:

  1. Enter the amount on the wallet page
  2. Click Deposit
  3. Select a payment mode
  4. Fill in additional fields based on the selected mode (received by, received at, bank ref no, etc.)
  5. Upload payment proof (required for UPI, Net Banking, Debit/Credit Card, Cheque)
  6. Add an optional description
  7. Submit — amount is credited to the wallet immediately

Withdrawal

Withdrawal has two paths depending on the payment mode selected.

Withdrawal Flow

  1. Enter the amount on the wallet page
  2. Click Withdraw
  3. A form dialog opens — select a payment mode
  4. If payment mode is "Payout":
    • A confirmation modal appears with the message:

      "After this request is approved, the amount will be transferred to your bank account within 2 business days. Are you sure you want to continue with the withdrawal request for ₹[amount]?"

    • Click Yes to submit — a payout request is created via CashFree with status "Requested"
    • The request must be approved by an admin before processing (see Withdrawal Approval below)
  5. If payment mode is anything else (Cash, UPI, etc.):
    • Upload payment proof (if required for the selected mode)
    • Add an optional description
    • Submit — the withdrawal is processed directly

Insufficient Balance

If the entered amount exceeds the available balance:

  • Admin / Accountant / Super Admin — A modal offers to proceed with an advance withdrawal: first withdraw the current balance (making it zero), then process the remaining as an advance
  • Other users — An "Insufficient balance" message is shown

Withdrawal Approval

When the payment mode is Payout, the withdrawal goes through an approval workflow:

User requests withdrawal → Status: "Requested"
→ Admin approves → Status: "Processing" → Bank transfer within 2 business days
→ Admin declines → Status: "Declined" (reason required)
→ Admin cancels → Status: "Canceled"
→ If processing fails → Status: "Failed" → Admin can "Retry" → Back to "Processing"
StatusDescription
RequestedAwaiting admin approval
ProcessingApproved, bank transfer is being processed
DeclinedAdmin rejected the request (decline reason stored)
CanceledRequest was canceled
FailedBank transfer failed — can be retried by admin

Pending withdrawal requests are shown on the user's wallet page with the request time and amount. Users can view their full history at Account → Wallet → Withdraw Request History.

Admins manage withdrawal requests at Payments → Payout Requests, where they can approve, decline, or cancel individual requests, or use bulk actions to process multiple requests at once.

Wallet Settings

Configure wallet behavior at Account → Wallet → Settings:

SettingDescription
Preferred BankDefault bank account for withdrawals
Withdrawal ScheduleAutomated withdrawal timing
Minimum Withdraw AmountMinimum amount required for withdrawal
Settlement AmountAmount threshold for auto-settlement
Admin ControlToggle admin control over wallet operations
Overdraft EnabledAllow wallet balance to go negative

Pay for Friend

Send money from your wallet to another user or company:

  1. Navigate to Wallet → Pay for Friend
  2. Search and select the recipient (user or company)
  3. Enter the amount
  4. Select payment mode
  5. Add transaction notes (optional)
  6. Apply payment offer (if available)
  7. Confirm payment