Accept payments via 4 gateways: Stripe, PayPal, Razorpay, and WooCommerce — plus manual/bank transfers. You can enable multiple gateways simultaneously, letting advertisers choose their preferred method when adding funds to their wallet.
Gateway Comparison
| Gateway | Best For | Currencies |
|---|---|---|
| Stripe | Credit/debit cards worldwide | 135+ currencies |
| PayPal | Users who prefer PayPal checkout | 25+ currencies |
| Razorpay | Sites targeting India | INR, USD |
| WooCommerce | Sites with an existing WooCommerce store | Any WC gateway |
| Manual / Bank Transfer | Offline payments, invoicing | Any |
Stripe Setup
Stripe is recommended for most sites. It supports all major credit and debit cards.
Step 1: Get Your Stripe API Keys
- Log in at dashboard.stripe.com
- Go to Developers -> API keys
- Copy your Publishable key (starts with
pk_) and Secret key (starts withsk_)
Never share your Secret key publicly.
Step 2: Enter Keys in WordPress
- Go to WB Ad Manager -> Pro Settings -> Payments
- Enable Stripe
- Paste your Publishable Key and Secret Key
- Click Save Settings
Step 3: Set Up the Stripe Webhook
Webhooks let Stripe notify your site the moment a payment completes. Without this, wallet credits may be delayed.
- In Stripe Dashboard, go to Developers -> Webhooks
- Click Add endpoint
- Enter your webhook URL:
https://yoursite.com/wp-json/wbam-pro/v1/stripe/webhook - Select these events:
payment_intent.succeeded,checkout.session.completed - Copy the Signing secret (starts with
whsec_) - Paste it into the Webhook Secret field in your WordPress settings
Testing Stripe
Use test mode keys from Stripe Dashboard (toggle “Test mode”). Test with card number 4242 4242 4242 4242, any future expiry, and any CVC.

PayPal Setup
Step 1: Create a REST API App
- Go to developer.paypal.com
- Log in with your PayPal Business account
- Go to My Apps & Credentials
- Click Create App under REST API apps
- Copy your Client ID and Secret
Step 2: Configure in WordPress
- Go to WB Ad Manager -> Pro Settings -> Payments
- Enable PayPal
- Enter your Client ID and Secret
- Set Mode to Sandbox for testing or Live for real payments
- Click Save Settings
Razorpay Setup
See Razorpay Setup for the complete step-by-step guide.
WooCommerce Integration
If you have WooCommerce installed, advertisers can add wallet funds through your standard WooCommerce checkout. This lets you use any payment gateway already configured in WooCommerce.
- Go to WB Ad Manager -> Pro Settings -> Payments
- Enable WooCommerce
- Click Save Settings
When an advertiser adds funds, a virtual product is created for the wallet top-up. After successful WooCommerce checkout, the wallet is credited automatically.
Manual / Bank Transfer
See Manual & Bank Transfer for the complete guide on offline payments.
Advertisers add funds and view their balance from the Wallet page on the frontend portal.

Currency Configuration
- Go to WB Ad Manager -> Pro Settings -> General
- Set your Currency (e.g., USD, EUR, GBP, INR)
- Set your Currency Symbol (e.g., $, EUR, GBP, INR)
- Click Save Settings
All prices and transactions display in your configured currency. Stripe and PayPal handle exchange rates automatically when processing international cards.
Settings
Configure payment gateway settings at WB Ad Manager -> Pro Settings -> Payments.
| Setting | Description |
|---|---|
| Enabled Gateways | Choose from Stripe, PayPal, Razorpay, WooCommerce, Manual |
| Test Mode | Use test/sandbox credentials during development |
| Minimum Deposit | Minimum amount advertisers can add to their wallet |
Test Checklist Before Going Live
Run through this checklist before switching from test to live mode:
- [ ] Added funds to wallet (small test amount)
- [ ] Confirmed wallet balance updated correctly
- [ ] Confirmed transaction appears in Wallet history
- [ ] Webhook received payment confirmation (check gateway dashboard)
- [ ] Tested a failed payment scenario
Troubleshooting
Payment form isn’t loading
- Confirm the gateway is enabled and API keys are saved
- Check for JavaScript errors in your browser console (Right-click -> Inspect -> Console)
- Test in an incognito window — ad blockers can interfere with payment scripts
- Confirm your site uses HTTPS (required by Stripe and PayPal)
Wallet not crediting after payment
- Verify your webhook URL is publicly accessible
- Confirm the Webhook Secret is correct
- Check the payment provider’s webhook log for delivery errors
- Look at your WordPress error log for clues
“Invalid API key” error
- Confirm you’re using the right set of keys (test vs. live)
- Remove any accidental spaces before or after the key
- Regenerate the keys in your payment provider dashboard if needed
Next Steps
- Manual & Bank Transfer
- Razorpay Setup
- Advertiser Management
