MonsterTools provides comprehensive payment gateway integration, allowing you to accept payments through multiple methods including PayPal, Stripe, and Bank Transfer. This guide will walk you through configuring each payment option to start monetizing your tools.

Accessing Payment Settings

  1. Navigate to MonsterTools > Payment Settings in your WordPress admin

  2. You'll see a tabbed interface with four main sections:

    • Currency - Global payment configuration

    • PayPal - PayPal gateway settings

    • Stripe - Stripe payment processing

    • Bank Transfer - Manual bank payment options


1. Currency Configuration

Before setting up payment gateways, configure your global currency settings:

Primary Settings:

  • Primary Currency: Select your default currency (USD, EUR, GBP, etc.)

  • Currency Position: Choose where the symbol appears (left, right, left with space, right with space)

  • Thousands Separator: Character for thousands separation (default: ,)

  • Decimal Separator: Character for decimal point (default: .)

  • Decimal Places: Number of digits after decimal (default: 2)

Example Configurations:

**US Format:**
- Currency: USD
- Position: Left ($99.99)
- Thousands: , (1,000)
- Decimal: . (99.99)
- Decimals: 2 
**European Format:**
- Currency: EUR
- Position: Right (99,99€)
- Thousands: . (1.000)
- Decimal: , (99,99)
- Decimals: 2



2. PayPal Setup

PayPal is one of the most popular payment gateways and supports both one-time and recurring payments.

Step-by-Step Configuration:

  1. Enable PayPal

    • Check "Enable PayPal" to activate the gateway

  2. Set Mode

    • Sandbox: For testing (recommended during setup)

    • Live: For real transactions (use in production)

  3. Get API Credentials

    • Visit PayPal Developer

    • Create a new app or use existing one

    • Copy Client ID and Client Secret

  4. Enter Credentials

    • Client ID: Your PayPal app client ID

    • Client Secret: Your PayPal app client secret

  5. Webhook Configuration (Essential for Subscriptions)

    • Webhook ID: Copy from your PayPal app configuration

    • Webhook URL: Pre-generated by MonsterTools - use this exact URL in PayPal

PayPal Webhook Setup:

  1. Go to PayPal Developer Dashboard > Your App > Webhooks

  2. Click "Add Webhook"

  3. Enter the Webhook URL shown in MonsterTools settings

  4. Select these events:

    • PAYMENT.SALE.COMPLETED

    • BILLING.SUBSCRIPTION.ACTIVATED

    • BILLING.SUBSCRIPTION.CANCELLED

    • BILLING.SUBSCRIPTION.EXPIRED

  5. Copy the Webhook ID and paste it in MonsterTools

Testing PayPal:

  • Use sandbox mode with test accounts from PayPal Sandbox

  • Test complete payment flow before going live

  • Verify webhook notifications are received


3. Stripe Setup

Stripe provides robust credit card processing with excellent developer tools.

Step-by-Step Configuration:

  1. Enable Stripe

    • Check "Enable Stripe" to activate the gateway

  2. Set Mode

    • Test: For testing with fake cards

    • Live: For real customer payments

  3. Get API Keys

  4. Enter Credentials

    • Key: Your Stripe publishable key (starts with pk_)

    • Secret: Your Stripe secret key (starts with sk_)

  5. Webhook Configuration (Critical for Recurring Payments)

    • Webhook Secret: Signing secret from Stripe

    • Webhook URL: Pre-generated by MonsterTools

Stripe Webhook Setup:

  1. Go to Stripe Dashboard > Developers > Webhooks

  2. Click "Add endpoint"

  3. Enter the Webhook URL shown in MonsterTools settings

  4. Select these events:

    • checkout.session.completed

    • invoice.payment_succeeded

    • customer.subscription.created

    • customer.subscription.updated

    • customer.subscription.deleted

  5. Copy the Signing Secret and paste it in MonsterTools

Testing Stripe:

  • Use test mode with these test card numbers:

    • Successful: 4242 4242 4242 4242

    • Requires auth: 4000 0025 0000 3155

    • Declined: 4000 0000 0000 0002

  • Test various scenarios before going live


4. Bank Transfer Setup

For users who prefer manual bank payments or local payment methods.

Step-by-Step Configuration:

  1. Enable Bank Transfer

    • Check "Enable Bank Transfer" to activate this method

  2. Enter Bank Details

    • Provide complete bank account information:

      • Bank name

      • Account holder name

      • Account number

      • Routing/SWIFT code

      • IBAN (if applicable)

      • Any special instructions

Example Bank Details:

Bank Name: Example National Bank
Account Holder: Your Business Name
Account Number: 123456789
Routing Number: 021000021
SWIFT Code: EXAMPLEUS33

Bank Transfer Workflow:

  1. Customer selects "Bank Transfer" at checkout

  2. System displays your bank details

  3. Customer manually transfers payment

  4. You manually confirm payment in WordPress admin

  5. System grants subscription access


Payment Gateway Best Practices

1. Security Considerations

  • Never share secret keys or client secrets

  • Use HTTPS on your live site

  • Regularly rotate API keys

  • Monitor for suspicious activity

2. Testing Strategy

  • Test all gateways in sandbox/test mode first

  • Verify webhook functionality

  • Test failed payment scenarios

  • Check email notifications

3. User Experience

  • Enable multiple payment methods for customer choice

  • Display accepted payment icons

  • Provide clear payment instructions

  • Offer support contact for payment issues


Troubleshooting Common Issues

PayPal Problems:

  • "Invalid credentials": Verify Client ID and Secret match the selected mode (sandbox/live)

  • Webhooks not working: Check Webhook ID and ensure endpoint is accessible

  • Payments not processing: Verify currency settings match between MonsterTools and PayPal

Stripe Issues:

  • "Invalid API Key": Ensure you're using test keys in test mode and live keys in live mode

  • Webhook errors: Verify signing secret and endpoint URL

  • Card declines: Test with different test card numbers for specific error scenarios

Bank Transfer:

  • Details not showing: Check that bank transfer is enabled and details are saved

  • Manual activation: Remember to manually activate subscriptions after bank transfer

General Payment Issues:

  • Currency mismatches: Ensure all gateways support your selected currency

  • SSL/HTTPS required: Payment gateways require secure connections

  • Firewall blocks: Whitelist gateway API endpoints if needed


Webhook Configuration Details

Why Webhooks are Essential:

  • Handle subscription renewals automatically

  • Process payment failures and retries

  • Update user access levels in real-time

  • Sync payment status with MonsterTools

Webhook Testing:

  • Use gateway test tools to send mock webhooks

  • Check MonsterTools logs for webhook reception

  • Verify user subscriptions update correctly

  • Test edge cases (failed payments, cancellations)

Webhook Security:

  • Validate webhook signatures

  • Keep webhook secrets secure

  • Monitor for unauthorized webhook attempts

  • Use HTTPS for all webhook communications


Going Live Checklist

Before activating live payments:

  • Test all payment methods in sandbox/test mode

  • Verify webhooks are working correctly

  • Confirm currency settings are correct

  • [ **] Ensure your site has SSL certificate

  • Test the complete user journey (signup → payment → tool access)

  • Set up payment notification emails

  • Configure refund and cancellation policies

  • Add payment method logos to your pricing pages

  • Test mobile payment experience

  • Prepare customer support for payment questions


Advanced Configuration

Custom Payment Gateways:

Developers can add custom payment gateways using hooks:

// Add custom payment gateway
add_filter('monstertools_payment_settings_groups', function($groups, $prefix) {
    $groups['custom_gateway'] = [
        'box_config' => [
            // Configuration array
        ],
        'fields' => [
            // Custom fields
        ]
    ];
    return $groups;
}, 10, 2);

Payment Method Conditional Logic:

// Show/hide payment methods based on conditions
add_filter('monstertools_available_payment_methods', function($methods, $onlyReady) {
    unset($methods['bank']);
    return $methods;
}, 10, 2);

// Only show bank transfer for administrators
add_filter('monstertools_available_payment_methods', function($methods, $onlyReady) {
    if (!current_user_can('manage_options')) {
        // Remove bank transfer for non-admins
        $methods = array_filter($methods, function($method) {
            return $method['id'] !== 'bank';
        });
    }
    
    return $methods;
}, 10, 2);


Monitoring & Maintenance

Regular Checks:

  • Monitor payment success rates

  • Review failed payment patterns

  • Update API keys annually

  • Test webhook functionality monthly

  • Check gateway status pages for outages

Key Metrics to Track:

  • Payment success rate per gateway

  • Average transaction value

  • Subscription churn rate

  • Payment method preferences

  • Geographic payment patterns

By following this comprehensive guide, you'll have your payment system configured correctly and be ready to start accepting payments for your MonsterTools subscription plans. Remember to test thoroughly before going live and monitor your payment system regularly for optimal performance.