Wallet SystemWallet System
Buy Now
View Demo
  • Getting Started

    • Introduction
    • Quick Start
    • Features
    • Installation
    • First-Time Setup
    • Admin Tour
  • Wallet Core

    • Core Wallet
    • Wallet Payment Gateway
    • Recharge / Top-up
    • Wallet Transfer
    • My Wallet Page
    • Shortcodes
  • Earn & Reward

    • Cashback Engine
    • Referral Program
    • Multilevel Referral
    • Daily Login Reward
    • Invite Friends
    • Deposit / Top-up Bonus
  • Spend & Payout

    • Checkout Discount
    • Checkout Restriction
    • Withdrawal
    • PayPal Payout
    • Stripe Payout
    • Refund to Wallet
    • Buy Now Pay Later
  • Identity & Mobile

    • KYC
    • QR Code Payments
  • Wallet Central

    • Overview
    • Endpoint & Routing
    • CTA Discovery
    • Home Dashboard
    • Add Funds
    • Withdraw
    • Withdrawals List
    • Send Money
    • QR Pay
    • Payment Requests
    • Refer & Earn
    • Transactions
    • Settings
    • KYC Flow
    • Architecture
    • Tweaks & Responsive
    • Security
    • Admin Controls
  • Admin Tools

    • Admin Settings (index)
    • Bulk Credit / Debit
    • Analytics Dashboard
  • Settings Tabs

    • General
    • Recharge
    • Checkout
    • Withdrawal
    • Payout (PayPal/Stripe)
    • KYC
    • Cashback
    • Referral
    • Multilevel
    • BNPL
    • QR Pay
    • Notifications
    • Wallet Central
    • Integrations
    • API Keys
  • Notifications

    • Email Notifications
    • SMS Notifications
  • Developer

    • REST API
    • Filters & Hooks
  • Help

    • Troubleshooting
    • FAQ
    • Glossary
Support
Buy Now
View Demo
  • Getting Started

    • Introduction
    • Quick Start
    • Features
    • Installation
    • First-Time Setup
    • Admin Tour
  • Wallet Core

    • Core Wallet
    • Wallet Payment Gateway
    • Recharge / Top-up
    • Wallet Transfer
    • My Wallet Page
    • Shortcodes
  • Earn & Reward

    • Cashback Engine
    • Referral Program
    • Multilevel Referral
    • Daily Login Reward
    • Invite Friends
    • Deposit / Top-up Bonus
  • Spend & Payout

    • Checkout Discount
    • Checkout Restriction
    • Withdrawal
    • PayPal Payout
    • Stripe Payout
    • Refund to Wallet
    • Buy Now Pay Later
  • Identity & Mobile

    • KYC
    • QR Code Payments
  • Wallet Central

    • Overview
    • Endpoint & Routing
    • CTA Discovery
    • Home Dashboard
    • Add Funds
    • Withdraw
    • Withdrawals List
    • Send Money
    • QR Pay
    • Payment Requests
    • Refer & Earn
    • Transactions
    • Settings
    • KYC Flow
    • Architecture
    • Tweaks & Responsive
    • Security
    • Admin Controls
  • Admin Tools

    • Admin Settings (index)
    • Bulk Credit / Debit
    • Analytics Dashboard
  • Settings Tabs

    • General
    • Recharge
    • Checkout
    • Withdrawal
    • Payout (PayPal/Stripe)
    • KYC
    • Cashback
    • Referral
    • Multilevel
    • BNPL
    • QR Pay
    • Notifications
    • Wallet Central
    • Integrations
    • API Keys
  • Notifications

    • Email Notifications
    • SMS Notifications
  • Developer

    • REST API
    • Filters & Hooks
  • Help

    • Troubleshooting
    • FAQ
    • Glossary
Support
  • Getting Started

    • Introduction
    • Quick Start — Wallet Live in 5 Minutes
    • Features
    • Installation
    • First-Time Setup
    • Admin Tour
  • Wallet Core

    • Core Wallet
    • Wallet Payment Gateway
    • Recharge / Top-up
    • Wallet Transfer
    • My Wallet Page
    • Shortcodes
  • Earn & Reward

    • Cashback Engine
    • Referral Program
    • Multilevel Referral
    • Daily Login Reward
    • Invite Friends
    • Deposit / Top-up Bonus
  • Spend & Payout

    • Checkout Discount
    • Checkout Restriction
    • Withdrawal
    • PayPal Payout
    • Stripe Payout
    • Refund to Wallet
    • Buy Now Pay Later (BNPL)
  • Identity & Mobile

    • KYC (Know Your Customer)
    • QR Code Payments
  • Wallet Central

    • Wallet Central Overview
    • Endpoint & Routing
    • CTA Discovery
    • Home Dashboard
    • Add Funds
    • Withdraw
    • Withdrawals List + Detail
    • Send Money
    • QR Pay
    • Payment Requests
    • Refer & Earn
    • Transactions
    • Settings (customer)
    • KYC Flow
    • Architecture
    • Tweaks & Responsive
    • Security
    • Admin Controls
  • Admin Tools

    • Admin Settings
    • Bulk Credit / Debit
    • Analytics Dashboard
  • Settings Tabs

    • General Settings
    • Recharge Settings
    • Checkout Settings
    • Withdrawal Settings
    • Payout Settings (PayPal + Stripe)
    • KYC Settings
    • Cashback Settings
    • Referral Settings
    • Multilevel Settings
    • BNPL Settings
    • QR Pay Settings
    • Notifications Settings
    • Wallet Central Settings
    • Third-Party Integrations
    • API Keys
  • Notifications

    • Email Notifications
    • SMS Notifications
  • Developer

    • REST API
    • Filters & Hooks
  • Help

    • Troubleshooting
    • FAQ
    • Glossary

Features

Plugin: WooCommerce Wallet System v3.9.5 Vendor: Webkul Requires: WordPress + WooCommerce 10.0+, PHP 7.4+ Compatibility: Multisite, WPML, HPOS

Quick map

This page is the master feature index. Each item links to its dedicated documentation page.

Wallet Central — premium dashboard at /wallet-central/

The same wallet, on the legacy My Account view:

Legacy My Wallet at /my-account/my_wallet/ — credit-card hero, action grid, recent activity

1. Core Wallet → details

  • Per-customer wallet balance stored in user meta _wkwc_wallet_amount
  • Credit, debit, transfer operations
  • Transaction log table with full history
  • Multi-currency support (store currency switching aware)
  • Low-balance email alerts (threshold configurable)
  • Wallet balance display via shortcode + My Account tab
  • Admin manual credit/debit for any customer

2. Wallet Payment Gateway (wkwc_wallet) → details

  • Pay full or partial order with wallet balance
  • Works alongside other payment methods (split payment)
  • Gateway enable / disable + title / description config
  • Minimum / maximum wallet-usable amount per order
  • Auto-hide gateway if balance zero
  • Refund back to wallet support

3. Wallet Recharge → details

  • Recharge Your Wallet WooCommerce product (auto-created)
  • Custom amount input on product page
  • Fixed preset recharge amounts (admin configurable)
  • Auto-credit on order status completed / processing
  • woocommerce_thankyou hook auto-completes recharge orders

4. Wallet Transfer (User-to-User) → details

  • Transfer balance between registered customers
  • OTP verification (SMS + Email) before transfer
  • Twilio SMS integration
  • REST endpoint POST /wkwc_wallet/v1/verify_otp/{otp}
  • Transfer fee configurable
  • Transfer history log

5. Cashback Engine → details

  • Rule-based cashback on order completion
  • Per-product cashback rules
  • Per-category cashback rules
  • Percentage or fixed amount
  • Min / max order value thresholds
  • Rule priority + activation toggle
  • Rule CRUD admin UI (list + single rule editor)
  • Duplicate-credit guard via _wkwp_cashback_processed order meta

6. Withdrawal System → details

  • Customer can request withdrawal from wallet
  • Admin approve / reject flow
  • Withdrawal fee (fixed or percent)
  • Hold period (_wkwp_wallet_withdrawal_hold_enable)
  • Methods: bank transfer, PayPal, Stripe
  • CSV export of withdrawal records
  • Status: pending / approved / rejected / paid

7. PayPal Payout → details

  • Mass Payments API to PayPal email
  • Client ID / Secret config
  • Sandbox / Live mode toggle
  • Auto payout on withdrawal approval
  • Webhook-based status sync

8. Stripe Payout → details

  • Direct transfer to Stripe connected accounts
  • Test / Live keys config
  • Amount conversion to cents
  • Transfer request ID for reconciliation

9. Refund to Wallet → details

  • Convert WooCommerce order refunds into wallet credit
  • Customer refund-request submission
  • Admin approve / decline UI
  • List table for all refund requests
  • Dedicated table wp_wkwc_wallet_refund_requests
  • Auto-credit + email notify on approval

10. Buy Now Pay Later (BNPL) → details

  • Eligible users checkout with wallet at insufficient balance
  • Debt tracking in wkwp_wallet_bnpl_debts
  • Eligibility by user + cart total
  • Max-limit + min-order setting
  • Repayment-days configurable
  • Interest / fee on unpaid balance
  • Auto-deduct on future wallet credit

11. KYC (Know Your Customer) → details

  • Customer-facing KYC submission form (modal-based on my-wallet)
  • Multi-document upload (1-5 docs, configurable via _wkwp_kyc_max_documents)
  • Full-name + document-type + document-number + file
  • Nonce-protected submission (wkwp_kyc_submit)
  • MIME + size validation via wp_handle_upload
  • Admin review (approve / reject + admin note)
  • Status meta _wkwp_kyc_status (approved / pending / rejected)
  • Legacy fallback meta _kyc_verified
  • Customer-facing rules / instructions admin option (_wkwp_kyc_requirement_description)
  • Restricted features (_wkwp_wallet_kyc_required_features[]):
    • withdrawal, transfer, wallet_usage (checkout), payment_request, qr_pay
  • Per-action gates (_wkwp_kyc_gate_*) — withdrawal / transfer / fund_request
  • Server-side enforcement (authoritative)
  • Greeting state pills — "✓ KYC VERIFIED" / "VERIFY KYC" / "KYC UNDER REVIEW" / "RE-SUBMIT KYC"
  • Modal-based submission with native <dialog>

12. Referral Program → details

  • Unique alphanumeric referral code per user (BOB22, AARAV42)
  • Backward-compatible ?ref= accepts numeric IDs and alpha codes
  • Cookie-based attribution (7-day default, HttpOnly + SameSite=Lax)
  • Referrer reward credited on invitee's first completed order
  • Referee first-order coupon WELCOME-XXXXXX — single-use, email-restricted
    • Type fixed_cart or percent, configurable amount
    • First-order-only via woocommerce_coupon_is_valid filter
  • Time-boxed promo multiplier (start / end / multiplier)
  • Registration form referral code field, prefilled from cookie
  • Unified dashboard on /my-account/my_wallet/
    • Personal link pill + Copy button
    • Brand-coloured share buttons (WhatsApp / X / Email / Messenger)
    • Stats: total earned / invited / signed up / pending
  • Idempotency — one row per invitee + reward_amount > 0 lock
  • Admin gated end-to-end via _wkwp_referral_enable

13. QR Code Payments → details

  • Generate per-user QR (wallet receive)
  • Scan QR to pay via qr-scan-pay.php
  • Frontend QR display on My Account
  • html5-qrcode scanner integration
  • AJAX transfer handler
  • Toggle _wkwp_wallet_qr_enable

14. Bulk Credit / Debit → details

  • Admin batch update many customer wallets at once
  • CSV upload to queue credits / debits
  • Async queued processing via wp_wkwc_wallet_bulk_queue table
  • Manual list-select + amount-apply
  • Audit reference tag on each transaction

15. Checkout Discount → details

  • Give discount at checkout when paying with wallet
  • Type: none / fixed / percent
  • Applied as fee (negative) on cart total
  • Global enable toggle

16. Checkout Restriction → details

  • Per-product flag _wkwp_exclude_wallet
  • Global "disable on sale items" (_wkwp_wallet_disable_on_sale)
  • Filters gateways dynamically before checkout

17. Daily Login Reward → details

  • Credit wallet on first login per day
  • Configurable reward amount
  • Action wkwp_daily_login_reward

18. Analytics Dashboard → details

  • Admin REST endpoints
    • GET /wkwp-wallet/v1/analytics/summary
    • GET /wkwp-wallet/v1/analytics/chart?days={int}
  • Summary KPIs — total credited / debited / active users / transactions
  • Chart — balance trends, transaction volume
  • Cached summary, invalidates on wallet update + withdrawal approval

19. Caching

  • Built-in multi-version caching for transactions, balance queries, and analytics
  • Auto-invalidates on wallet writes — admins never manage cache manually

20. Email Notifications → details

  • Wallet credit
  • Wallet debit
  • Low-balance alert
  • Refund approved / rejected
  • Withdrawal approved / rejected
  • KYC status change
  • Transfer sent / received

21. SMS Notifications → details

  • OTP for transfer
  • Twilio provider integration
  • Configurable templates

22. Admin Settings Panels → details

  • General wallet settings
  • Payment gateway config
  • Withdrawal config
  • Cashback rules
  • BNPL config
  • KYC settings
  • Referral config
  • QR settings
  • UI customizer
  • Payout credentials (PayPal, Stripe)
  • Email / SMS templates

23. REST API → details

  • POST /wkwc_wallet/v1/verify_otp/{otp} — OTP verify
  • GET /wkwp-wallet/v1/wallets / GET /wkwp-wallet/v1/wallets/{id} — admin
  • GET /wkwp-wallet/v1/transactions — admin
  • GET /wkwp-wallet/v1/analytics/summary — admin
  • GET /wkwp-wallet/v1/analytics/chart — admin
  • API key admin UI (mint / list / revoke / delete) with Basic Auth consumer key/secret

24. Shortcodes → details

  • Wallet balance display
  • Recharge form
  • Transfer form
  • Transaction history
  • KYC submission form
  • [wkwp_invite_friends_form]
  • [wkwp_wallet_coupon_redeem]

25. Developer Hooks → details

  • Action wkwp_wallet_balance_changed
  • Action wkwc_wallet_amount_updated
  • Action wkwc_wallet_withdrawal_approved
  • Action wkwp_daily_login_reward
  • Filter wkwp_referral_base_amount
  • Filter wkwc_wallet_show_method_on_checkout
  • Filter currency switching

26. Performance

  • Background indexer (class-wkwc-wallet-background-indexer.php)
  • DB indexer for fast transaction queries
  • Lazy file loading in bootstrap
  • Autoloader (autoloader/class-wkwp-wallet-autoload.php)

27. Auxiliary Modules

  • modules/wk-plugin-updates v1.5.4 — Webkul store + Envato update checker
  • modules/wkwc-addons v1.7.1 — unified Webkul addons admin menu

28. Storage

  • Self-managed storage layer for ledger, history, withdrawals, refund requests, cashback rules, BNPL debts, bulk-credit queue, KYC submissions + documents, referral log, and email invitations
  • Auto-created and migrated on activation; survives deactivation; never auto-dropped on uninstall

29. Deposit / Top-up Bonus → details

  • Admin-configurable % bonus on wallet top-up orders
  • Flags _wkwp_wallet_bonus_enable + _wkwp_wallet_bonus_amount
  • Credits bonus on woocommerce_order_status_completed for wkwc_wallet line items
  • Idempotency via _wkwp_bonus_credited order meta
  • Live preview on my-wallet Add-funds panel

30. Invite Friends (email) → details

  • Shortcode [wkwp_invite_friends_form]
  • Toggles wkwp_invite_friends_enable + wkwp_invite_friends_daily_limit
  • POST to admin-post.php?action=wkwp_invite_friends_submit
  • Existing-user invites persist as "Already on site" rows
  • SMTP failure non-fatal — DB row stays, action wkwp_invite_friends_mail_failed
  • Table wkwp_referral_invitations

31. Multilevel Referral → details

  • Optional wkwp_multilevel_enable + wkwp_multilevel_levels (1-10) + wkwp_multilevel_level_commissions[]
  • Walks ancestry on invitee signup via WKWP_Referral_Signup_Enricher
  • Filter wkwp_referral_base_amount applies promo multiplier when active
  • Zero-config → flat single-level reward only

32. Customer My-Wallet Dashboard (decorator) → details

  • Reparents WC submodule template into modern fintech layout — zero template edits
  • Full-bleed profile greeting + Transactions stat + KYC pill
  • Credit-card hero (₹ balance, masked wallet ID WK-0000-••••-NNNN)
  • 2×2 action grid (Add money / Send / Withdraw / Redeem code) → native <dialog> modals
  • Add-funds form with preset chips + custom amount + paychip + violet CTA
  • Inline top-up bonus banner under Pay-with row
  • Activity list with iconised rows + Recent-activity filter + pagination

Summary Count

MetricCount
Major feature areas32
Payment integrations3 (Wallet gateway, PayPal, Stripe)
REST endpoints5+
Custom DB tables~11
Submodules3 (wkwc_wallet, wk_caching, wk-plugin-updates)
Shortcodes7+
KYC docs per user1-5 (configurable)
Referral chain depth1-10 levels
Prev
Quick Start — Wallet Live in 5 Minutes
Next
Installation