=== All QR Pay for WooCommerce ===
Contributors: hmbashar
Tags: woocommerce, qr code, payment gateway
Requires at least: 6.0
Tested up to: 7.1.3
Requires PHP: 7.4
Stable tag: 1.0.1
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Accept QR-based manual payments in WooCommerce for 25+ popular global wallet providers including bKash, Nagad, Paytm, Apple Pay, Google Pay, and more.

== Description ==

**All QR Pay for WooCommerce** allows store owners to accept **manual QR code payments** using personal wallet accounts across multiple regions (Bangladesh, India, Pakistan, Kenya, Philippines, Africa, Europe, USA, etc.).

Customers scan your QR code, pay in their wallet app, and submit the Transaction ID — which you verify manually.

---

## 🌍 Supported Payment Providers (25+)

Your plugin includes built-in support for:

### **🇧🇩 Bangladesh**
- bKash  
- Nagad  
- Rocket  
- Upay  
- SureCash  
- MCash  
- NexusPay  

### **🇮🇳 India**
- Paytm  
- PhonePe  
- Google Pay (India)  
- Amazon Pay  
- Stripe UPI  
- PayPal (QR accepted regions)  

### **🇵🇰 Pakistan**
- Easypaisa  
- JazzCash  

### **🇵🇭 Philippines**
- GCash  
- Maya (PayMaya)  

### **🇰🇪 Kenya**
- M-Pesa  

### **🌐 Global Services**
- Apple Pay  
- Google Pay  
- Payoneer  
- Afterpay  
- Klarna  
- Wise  
- Stripe (QR-supported countries)  

(Every provider appears as its own WooCommerce gateway.)

---

## 🔥 Key Features

### **✔ 25+ QR Wallet Payment Gateways**
Each gateway includes:
- Custom title & description  
- Uploadable QR image  
- Custom account number  
- Transaction ID + per-gateway secondary verifier (phone last 4 / email / account ID)  
- Manual verification workflow  

---

### **✔ Manual Verification – No API Required**
This plugin is ideal for:
- Personal wallet accounts  
- Stores without merchant accounts  
- Markets where QR + wallet payments are standard  

---

### **✔ Processing Fee Support**
Add a % fee automatically for:
- Cart  
- Checkout  
- Order totals  

Includes tax support.

---

### **✔ Smart Checkout UI**
- Responsive QR box  
- Payment instructions  
- Wallet info + final amount  
- Transaction fields  


### 🟣 **Smart Checkout Experience**
On the checkout page, customers can:
- View your QR code  
- Scan & pay instantly
- Enter:
  - **Transaction ID**
  - A secondary verifier that matches the selected gateway:
    - **Payer Phone (last 4)** for mobile wallets (bKash, Nagad, GCash, M-Pesa, etc.)
    - **Payer Email** for email-based providers (PayPal, Wise, Stripe, etc.)
    - **Payer Account / Wallet ID** for Alipay and WeChat Pay
  - Any additional instructions you configure

Everything is displayed in a clean, mobile-friendly UI.

---

### 🟣 **Order Meta Stored Automatically**
Payment details are saved and displayed on:
- Thank You Page  
- Customer email  
- WooCommerce → Orders → Order Details  

Admins can verify payment manually and update order status.

---

### 🟣 **Dynamic Processing Fee Option**
(Optional) Add a percentage-based **processing fee** for QR payments, automatically added to:
- Cart  
- Checkout  
- Order totals  

Tax support included.

---

### 🟣 **Optimized for Security & Performance**
- Proper input sanitization and output escaping  
- Nonce verification aligned with WooCommerce checkout  
- PHP 7.4+ compatible  
- No external API calls → lightning-fast performance  

---

### 🟣 **Developer Friendly**
- Built with OOP architecture  
- Single abstract gateway class  
- Extendable for adding new wallet providers  
- Hooks included for customization  

---

## Why Use This Plugin?

If you want to accept QR payments in WooCommerce **without a merchant account**, this plugin gives you a clean, reliable, and professional solution. Customers pay directly to your wallet, and you verify payments manually.

Perfect for:
- Small shops  
- Online sellers using personal wallet accounts  
- Bangladesh-focused WooCommerce stores  
- Merchants who want QR payment options without API integration  


---

== Installation ==

1. Upload the plugin to `/wp-content/plugins/all-qr-pay-for-woocommerce/`.
2. Activate it from **Plugins** in WordPress.
3. Go to **WooCommerce → Settings → Payments**.
4. Enable any provider (bKash, GCash, Paytm, etc.).
5. Add account number + QR image.
6. Start receiving QR payments instantly.

---

== Frequently Asked Questions ==

= Does this plugin automatically verify payments? =
No. Payments are manual — you verify them inside your wallet app.

= Do I need a merchant account? =
No. Personal accounts are fully supported.

= Are API keys required? =
No API calls are used.

= Can I add more providers? =
Yes. Developers can extend the abstract gateway structure.

---

== screenshots ==
1. Dashboard Payment Gateways
2. Dashboard Payment Gateways
3. Dashboard Payment Gateways
4. Checkout Page
5. Order/Thank You page
6. Order Details Page

---

== Changelog ==

= 1.0.1 =
* Per-gateway secondary verifier fields: phone last 4, payer email, or account/wallet ID.
* Checkout placeholders for Transaction ID and payer fields on all gateways.
* Fix PHP 8.2+ dynamic property deprecations on gateway classes.
* Harden validation (txn ID length, phone digits) and redact emails from debug logs.
* Thank You, email, and admin order views show the correct payer field label per gateway.

= 1.0.0 =
* Initial release with 25+ gateways:
  bKash, Nagad, Rocket, Upay, MCash, NexusPay, SureCash,
  Paytm, PhonePe, GCash, JazzCash, Easypaisa, Maya,
  M-Pesa, PayPal, Stripe, Apple Pay, Google Pay,
  Payoneer, Afterpay, Klarna, Wise, Amazon Pay, Alipay.
* QR upload + account number fields.
* Transaction ID + payer last 4 digits.
* Order meta + email + thank you page integration.
* Optional processing fee with tax support.
* Full sanitization, escaping, and nonce compliance.
* Developer-extensible OOP architecture.

---

== Upgrade Notice ==

= 1.0.1 =
Checkout secondary fields now match each provider (phone, email, or account ID). No settings migration required.

= 1.0.0 =
Configure your QR images and account numbers in WooCommerce → Payments for each provider you wish to enable.

