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.
Navigate to MonsterTools > Payment Settings in your WordPress admin
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
Before setting up payment gateways, configure your global currency 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)
**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: 2PayPal is one of the most popular payment gateways and supports both one-time and recurring payments.
Enable PayPal
Check "Enable PayPal" to activate the gateway
Set Mode
Sandbox: For testing (recommended during setup)
Live: For real transactions (use in production)
Get API Credentials
Visit PayPal Developer
Create a new app or use existing one
Copy Client ID and Client Secret
Enter Credentials
Client ID: Your PayPal app client ID
Client Secret: Your PayPal app client secret
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
Go to PayPal Developer Dashboard > Your App > Webhooks
Click "Add Webhook"
Enter the Webhook URL shown in MonsterTools settings
Select these events:
PAYMENT.SALE.COMPLETED
BILLING.SUBSCRIPTION.ACTIVATED
BILLING.SUBSCRIPTION.CANCELLED
BILLING.SUBSCRIPTION.EXPIRED
Copy the Webhook ID and paste it in MonsterTools
Use sandbox mode with test accounts from PayPal Sandbox
Test complete payment flow before going live
Verify webhook notifications are received
Stripe provides robust credit card processing with excellent developer tools.
Enable Stripe
Check "Enable Stripe" to activate the gateway
Set Mode
Test: For testing with fake cards
Live: For real customer payments
Get API Keys
Copy Publishable Key and Secret Key
Enter Credentials
Key: Your Stripe publishable key (starts with pk_)
Secret: Your Stripe secret key (starts with sk_)
Webhook Configuration (Critical for Recurring Payments)
Webhook Secret: Signing secret from Stripe
Webhook URL: Pre-generated by MonsterTools
Go to Stripe Dashboard > Developers > Webhooks
Click "Add endpoint"
Enter the Webhook URL shown in MonsterTools settings
Select these events:
checkout.session.completed
invoice.payment_succeeded
customer.subscription.created
customer.subscription.updated
customer.subscription.deleted
Copy the Signing Secret and paste it in MonsterTools
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
For users who prefer manual bank payments or local payment methods.
Enable Bank Transfer
Check "Enable Bank Transfer" to activate this method
Enter Bank Details
Provide complete bank account information:
Bank name
Account holder name
Account number
Routing/SWIFT code
IBAN (if applicable)
Any special instructions
Bank Name: Example National Bank
Account Holder: Your Business Name
Account Number: 123456789
Routing Number: 021000021
SWIFT Code: EXAMPLEUS33Customer selects "Bank Transfer" at checkout
System displays your bank details
Customer manually transfers payment
You manually confirm payment in WordPress admin
System grants subscription access
Never share secret keys or client secrets
Use HTTPS on your live site
Regularly rotate API keys
Monitor for suspicious activity
Test all gateways in sandbox/test mode first
Verify webhook functionality
Test failed payment scenarios
Check email notifications
Enable multiple payment methods for customer choice
Display accepted payment icons
Provide clear payment instructions
Offer support contact for payment issues
"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
"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
Details not showing: Check that bank transfer is enabled and details are saved
Manual activation: Remember to manually activate subscriptions after bank transfer
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
Handle subscription renewals automatically
Process payment failures and retries
Update user access levels in real-time
Sync payment status with MonsterTools
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)
Validate webhook signatures
Keep webhook secrets secure
Monitor for unauthorized webhook attempts
Use HTTPS for all webhook communications
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
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);// 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);Monitor payment success rates
Review failed payment patterns
Update API keys annually
Test webhook functionality monthly
Check gateway status pages for outages
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.