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

KYC Flow

KYC submission inside Wallet Central. Modal + dedicated page — same engine as the legacy KYC modal.

What Customers See

┌──────────────────────────────────────────────┐
│  H1: KYC verification                        │
│  Sub: Verify identity to unlock features     │
├──────────────────────────────────────────────┤
│  Status banner                               │
│   ✓ KYC VERIFIED              (if approved)  │
│   ⏱ Under review              (if pending)   │
│   ✗ Rejected: <admin note>    (if rejected)  │
│   ◯ Verify your account       (if missing)   │
├──────────────────────────────────────────────┤
│  What you need (admin description)           │
│   "Upload one government-issued photo ID"    │
├──────────────────────────────────────────────┤
│  Form                                        │
│   Full name        [________________]        │
│   Document type    [ Passport      ▼ ]      │
│   Document number  [________________]        │
│   File 1           [ Choose file… ]          │
│   File 2 (opt)     [ Choose file… ]          │
│   File 3 (opt)     [ Choose file… ]          │
├──────────────────────────────────────────────┤
│  [ Submit for review ]                       │
└──────────────────────────────────────────────┘

(After submit)
┌──────────────────────────────────────────────┐
│  ⏱ Under review                              │
│  We'll email you within 1 business day.      │
│  [ Back to wallet ]                          │
└──────────────────────────────────────────────┘

KYC verification — full page at /wallet-central/kyc/

Status Banner

StatusBanner
approvedgreen "✓ KYC VERIFIED" — form hidden, "All features unlocked" message
pendingamber "⏱ Under review" — form hidden, no submit
rejectedred "✗ Rejected: <admin_note>" — form re-rendered, customer can resubmit
missinggrey "◯ Verify your account" — form rendered

KYC shell — status banner + verified-state hero

Auto-Redirect From Gated Views

When customer hits a KYC-gated view (e.g. /wallet-central/withdraw/) without approval:

  1. View renders the locked card
  2. Locked card has "Verify now" button
  3. Click → navigates to /wallet-central/kyc/?return_to=withdraw
  4. After submission → "Under review" page shows "Back to <return_to>" link

Customer never gets stuck — every gated surface routes back here.

Form Fields

FieldRequired
Full nameyes
Document typeyes — dropdown from admin's list
Document numberyes
File 1..Nat least 1; admin sets max (1-5)
File constraintDefault
Max file size5 MB
Allowed typesJPEG, PNG, WebP, PDF

KYC form grid — full name, document type, number, file uploads

Re-Submit After Rejection

Rejected status auto-renders the form. Admin note shown above. Customer fixes the issue → submits → status flips back to pending.

Common Scenarios

Customer submitted blurry photo

Admin rejects with note "Photo blurry, please re-upload clearer photo." Customer's banner goes red with the note. They re-submit.

Customer can't submit — file too big

Their image is over the size cap. They compress and try again. Error shown inline.

Approved customer still seeing locked features

Cache stale. Admin → WC Status Tools → Wallet → Clear cache. Customer reload.

Privacy

Documents stored outside the public uploads directory. Direct URL access blocked. Image proxies require authenticated capability check.

GDPR — personal data export + eraser plugins auto-include / delete wallet KYC data.

When Something Goes Wrong

ProblemFix
File upload rejectedMIME or size cap — verify allowed types and max size
Form not visible after rejectionAdmin note empty or theme CSS hiding it
Status banner stale after admin approveCache bust failed — clear via Status Tools
Documents not visible to adminUpload directory permissions — should be 0755 dirs / 0644 files
For developers — hooks

Hooks

HookTypeWhen
wkwp_kyc_submit_validatefilterextra validation, return WP_Error to reject
wkwp_kyc_status_changedactionevery status transition
wkwp_kyc_document_check_mimefilteraccept extra MIMEs
wkwp_central_kyc_after_submitactionpost-submit hook for analytics

Same engine as legacy

Form posts to the same AJAX action used by the legacy My Wallet KYC modal. Single submission engine, two UI surfaces.

Related

  • KYC (engine)
  • Withdraw (KYC-gated)
  • Send Money (KYC-gated)
  • QR Pay (KYC-gated)
Prev
Settings (customer)
Next
Architecture