Payment Configuration

Get Started

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

  1. Log in at dashboard.stripe.com
  2. Go to Developers -> API keys
  3. Copy your Publishable key (starts with pk_) and Secret key (starts with sk_)

Never share your Secret key publicly.

Step 2: Enter Keys in WordPress

  1. Go to WB Ad Manager -> Pro Settings -> Payments
  2. Enable Stripe
  3. Paste your Publishable Key and Secret Key
  4. 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.

  1. In Stripe Dashboard, go to Developers -> Webhooks
  2. Click Add endpoint
  3. Enter your webhook URL:
    https://yoursite.com/wp-json/wbam-pro/v1/stripe/webhook
  4. Select these events: payment_intent.succeeded, checkout.session.completed
  5. Copy the Signing secret (starts with whsec_)
  6. 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.

Stripe payment settings showing fields for publishable key, secret key, and webhook secret

PayPal Setup

Step 1: Create a REST API App

  1. Go to developer.paypal.com
  2. Log in with your PayPal Business account
  3. Go to My Apps & Credentials
  4. Click Create App under REST API apps
  5. Copy your Client ID and Secret

Step 2: Configure in WordPress

  1. Go to WB Ad Manager -> Pro Settings -> Payments
  2. Enable PayPal
  3. Enter your Client ID and Secret
  4. Set Mode to Sandbox for testing or Live for real payments
  5. 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.

  1. Go to WB Ad Manager -> Pro Settings -> Payments
  2. Enable WooCommerce
  3. 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.

Transactions list showing all wallet transactions with type, amount, status, and date

Currency Configuration

  1. Go to WB Ad Manager -> Pro Settings -> General
  2. Set your Currency (e.g., USD, EUR, GBP, INR)
  3. Set your Currency Symbol (e.g., $, EUR, GBP, INR)
  4. 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

  1. Verify your webhook URL is publicly accessible
  2. Confirm the Webhook Secret is correct
  3. Check the payment provider’s webhook log for delivery errors
  4. Look at your WordPress error log for clues

“Invalid API key” error

  1. Confirm you’re using the right set of keys (test vs. live)
  2. Remove any accidental spaces before or after the key
  3. Regenerate the keys in your payment provider dashboard if needed

Next Steps

Last updated: March 4, 2026