FormPays Pro

Descripción

FormPays Pro is a comprehensive payment form plugin designed to make online payments simple and secure. Whether you’re running a small business or a large site, this plugin provides everything you need to collect payments through custom forms. From flexible payment forms to enterprise-grade security, FormPays Pro is designed to simplify online payments for businesses, nonprofits, and educators.

Core Features

  • Custom Payment Forms: Create unlimited payment forms with custom fields
  • Multiple Payment Gateways: Support for Razorpay and PayU (more coming soon)
  • Conditional Logic: Show/hide fields based on user selections
  • Shortcode Support: Easy embedding with [formpays_pro_payment_form id="123"]
  • Transaction Management: Complete payment tracking and management
  • Email Notifications: Automatic notifications for payments and failures
  • Email Templates: Customize notification emails for customers and admins

Payment Gateways

  • Razorpay: Cards, UPI, NetBanking, Wallets
  • PayU: Cards, UPI, NetBanking, Wallets
  • Test Mode: Development and testing support
  • Webhook Integration: Automatic payment status updates

Form Builder

  • Field Types: Text, Email, Phone, Number, Select, Radio, Checkbox, Textarea
  • Custom Fields: Add unlimited custom fields
  • Required Fields: Mark fields as required
  • Field Validation: Built-in validation for all field types
  • Drag & Drop: Easy field reordering

Admin Features

  • Dashboard: Overview of forms, transactions, and revenue
  • Form Management: Create, edit, and delete payment forms
  • Transaction Tracking: View all payments with filters and export
  • Gateway Settings: Secure configuration for payment gateways
  • Email Templates: Customize notification emails

Security Features

  • Nonce Verification: CSRF protection for all forms
  • Input Sanitization: All user inputs are sanitized
  • Encrypted Storage: Sensitive gateway credentials are encrypted
  • Webhook Verification: Secure webhook handling with signature verification
  • Permission Checks: Admin-only access to sensitive operations

External Services

This plugin connects to third-party payment gateway services to process payments. Below is detailed information about each service:

Razorpay

  • What it is: Payment gateway service for processing online payments in India
  • When data is sent: When a user submits a payment form using Razorpay gateway
  • Data sent: Customer name, email, mobile number, payment amount, currency, order details
  • Purpose: To create payment orders and process payments securely
  • Service URL: https://razorpay.com/
  • Terms of Service: https://razorpay.com/terms/
  • Privacy Policy: https://razorpay.com/privacy/
  • Documentation: https://razorpay.com/docs/

PayU

  • What it is: Payment gateway service for processing online payments
  • When data is sent: When a user submits a payment form using PayU gateway
  • Data sent: Customer name, email, mobile number, payment amount, currency, order details
  • Purpose: To create payment orders and process payments securely
  • Service URL: https://payu.in/
  • Terms of Service: https://payu.in/terms-of-use
  • Privacy Policy: https://payu.in/privacy-policy
  • Documentation: https://docs.payu.com/

PayPal

  • What it is: Global payment gateway service for processing online payments
  • When data is sent: When a user submits a payment form using PayPal gateway
  • Data sent: Customer name, email, payment amount, currency, order details
  • Purpose: To create payment orders and process payments securely
  • Service URL: https://paypal.com/
  • Terms of Service: https://www.paypal.com/us/legalhub/useragreement-full
  • Privacy Policy: https://www.paypal.com/us/legalhub/privacy-full
  • Documentation: https://developer.paypal.com/

PhonePe

  • What it is: Digital payment platform for processing UPI and other payments in India
  • When data is sent: When a user submits a payment form using PhonePe gateway
  • Data sent: Customer name, email, mobile number, payment amount, currency, order details
  • Purpose: To create payment orders and process payments securely
  • Service URL: https://phonepe.com/
  • Terms of Service: https://www.phonepe.com/terms-and-conditions/
  • Privacy Policy: https://www.phonepe.com/privacy-policy/
  • Documentation: https://developer.phonepe.com/

Instamojo

  • What it is: Payment gateway service for processing online payments in India
  • When data is sent: When a user submits a payment form using Instamojo gateway
  • Data sent: Customer name, email, mobile number, payment amount, currency, order details
  • Purpose: To create payment orders and process payments securely
  • Service URL: https://instamojo.com/
  • Terms of Service: https://instamojo.com/terms/
  • Privacy Policy: https://instamojo.com/privacy/
  • Documentation: https://docs.instamojo.com/

Data Security: All payment data is transmitted securely using HTTPS encryption. Customer payment details (card numbers, etc.) are handled directly by the payment gateways and never stored on your WordPress site.

User Consent: By using payment forms created with this plugin, users consent to their payment data being processed by the selected payment gateway according to that gateway’s terms and privacy policy.

Requirements

  • WordPress 5.0 or higher
  • PHP 7.4 or higher
  • MySQL 5.6 or higher
  • SSL certificate (recommended for production)

Configuration

1. Gateway Setup

  1. Go to FormPays Pro Settings
  2. Select your preferred payment gateway
  3. Enter your gateway credentials:
    • Razorpay: Key ID, Key Secret, Webhook Secret
    • PayU: Merchant Key, Salt Key, Authorization Header

2. Create Your First Form

  1. Go to FormPays Pro Forms Add New
  2. Fill in form details (title, description, gateway)
  3. Add fields (Name, Email, Mobile, Amount, etc.)
  4. Set up conditional logic if needed
  5. Save the form

3. Embed the Form

Use the generated shortcode in any post or page:
[formpays_pro_payment_form id=»1″]

Usage

Creating Payment Forms

Basic form structure:
php
$form_data = array(
'title' => 'Product Payment',
'description' => 'Complete your purchase',
'gateway' => 'razorpay',
'amount_type' => 'fixed',
'fixed_amount' => 999.00,
'currency' => 'INR',
'fields' => array(
array(
'id' => 'name',
'label' => 'Full Name',
'type' => 'text',
'required' => true
),
array(
'id' => 'email',
'label' => 'Email Address',
'type' => 'email',
'required' => true
),
array(
'id' => 'mobile',
'label' => 'Mobile Number',
'type' => 'tel',
'required' => true
)
)
);

Conditional Logic

`php

$conditional_logic = array(
array(
‘field’ => ‘payment_type’,
‘operator’ => ‘equals’,
‘value’ => ‘business’,
‘action’ => ‘show’,
‘target’ => ‘company_name’
)
);
`

Payment Processing

Form submission:
`php
add_action(‘wp_ajax_formpays_pro_submit_form’, ‘handle_payment’);
add_action(‘wp_ajax_nopriv_formpays_pro_submit_form’, ‘handle_payment’);

function handle_payment() {
// Form data is automatically processed
// Payment gateway is initialized
// User is redirected to payment page
}
`

Webhook handling:
php
// Webhook endpoints are automatically created
// /wp-json/formpays-pro/v1/webhook/razorpay
// /wp-json/formpays-pro/v1/webhook/payu

Transaction Management

Get transaction:
php
global $formpays_pro;
$transaction = $formpays_pro->transactions->get_transaction('TXN_123');

Update status:
php
$result = $formpays_pro->transactions->update_transaction_status(
'TXN_123',
'success'
);

Customization

Styling

The plugin includes CSS classes for easy customization:
css
.formpays-pro-form-wrapper { /* Form container */ }
.formpays-pro-field { /* Individual field */ }
.formpays-pro-field-label { /* Field labels */ }
.formpays-pro-field-input { /* Field inputs */ }
.formpays-pro-submit-btn { /* Submit button */ }

JavaScript Events

`javascript

// Form submission events
jQuery(document).on(‘formpays_pro_form_submit’, function(e, formData) {
// Custom handling before submission
});

// Payment success events
jQuery(document).on(‘formpays_pro_payment_success’, function(e, response) {
// Custom handling after successful payment
});
`

Hooks and Filters

`php

// Modify form data before processing
add_filter(‘formpays_pro_form_data’, ‘modify_form_data’, 10, 2);

// Custom payment validation
add_filter(‘formpays_pro_validate_payment’, ‘custom_validation’, 10, 2);

// Modify email content
add_filter(‘formpays_pro_email_content’, ‘customize_email’, 10, 3);
`

Testing

Test Mode

Both Razorpay and PayU support test mode:
1. Enable test mode in gateway settings
2. Use test credentials from your gateway dashboard
3. Test complete payment flow without real charges

Test Cards

Razorpay:
* Success: 4111 1111 1111 1111
* Failure: 4000 0000 0000 0002

PayU:
* Success: 4012 0000 0000 0000
* Failure: 4000 0000 0000 0002

Email Notifications

Available Notifications

  • Payment Success – Customer: Confirmation email to customer with transaction details
  • Payment Success – Admin: Notification to admin about successful payment
  • Payment Failed – Customer: Failure notification with retry information
  • Payment Failed – Admin: Alert to admin about failed payment

Email Template Customization

  1. Go to FormPays Pro Email Notifications
  2. Customize email templates with dynamic placeholders:
    • {transaction_id} – Transaction ID
    • {amount} – Payment amount
    • {customer_name} – Customer name
    • {customer_email} – Customer email
    • {payment_date} – Payment date and time
    • {payment_method} – Selected payment method
    • {form_title} – Form title
    • {site_name} – Your site name
  3. Enable/disable individual email notifications
  4. Test email functionality to verify settings

Customization

`php

// Modify email templates
add_filter(‘formpays_pro_email_template’, ‘custom_email_template’, 10, 3);

// Add custom notification recipients
add_filter(‘formpays_pro_admin_emails’, ‘add_custom_emails’);
`

Troubleshooting

Common Issues

Payment Not Processing:
1. Check gateway credentials
2. Verify webhook URLs are set correctly
3. Check server logs for errors
4. Ensure SSL is enabled (for live mode)

Forms Not Displaying:
1. Check if form is published
2. Verify shortcode syntax
3. Check for JavaScript conflicts
4. Review browser console for errors

Webhook Issues:
1. Verify webhook secret is correct
2. Check webhook URL accessibility
3. Review server logs for webhook failures
4. Test webhook endpoint manually

Debug Mode

Enable WordPress debug mode for detailed error logging:
php
// wp-config.php
define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);

API Reference

REST API Endpoints

`

GET /wp-json/formpays-pro/v1/forms/{id}
GET /wp-json/formpays-pro/v1/transactions/{id}
POST /wp-json/formpays-pro/v1/webhook/{gateway}
`

AJAX Actions

`php

// Form submission
wp_ajax_formpays_pro_submit_form
wp_ajax_nopriv_formpays_pro_submit_form

// Admin actions
wp_ajax_formpays_pro_save_form
wp_ajax_formpays_pro_delete_form
wp_ajax_formpays_pro_save_gateway_settings
`

Contributing

We welcome contributions! Please follow these steps:

  1. Fork the repository (https://github.com/sanyogs/formpays-pro)
  2. Create a feature branch
  3. Make your changes
  4. Add tests if applicable
  5. Submit a pull request

License

This plugin is licensed under the GPL v2 or later.

Acknowledgments

  • WordPress community for the amazing platform
  • Razorpay and PayU for their excellent APIs
  • All contributors and beta testers

FormPays Pro – Making payment forms simple and powerful!

Capturas

  • Dashboard Interface
  • Payment Gateway Settings
  • Page Handling Common Settings
  • Get Started with FormPays Pro
  • Create New Payment Form
  • Edit Payment Form
  • Formpays Pro Template Form
  • Payment and Contact Form
  • Payment Transaction and Data Collection
  • Transaction Details
  • Analytics Dashboard
  • Drag and Drop Form Field
  • Notification Email Template

Instalación

Method 1: WordPress Admin (Recommended)

  1. Download the plugin ZIP file
  2. Go to WordPress Admin Plugins Add New
  3. Click «Upload Plugin» and select the ZIP file
  4. Click «Install Now» and then «Activate Plugin»

Method 2: Manual Installation

  1. Extract the plugin files to /wp-content/plugins/formpays-pro/
  2. Activate the plugin through the WordPress admin interface

FAQ

How do I create my first payment form?

  1. Go to FormPays Pro Forms Add New
  2. Fill in form details (title, description, gateway)
  3. Add fields (Name, Email, Mobile, Amount, etc.)
  4. Set up conditional logic if needed
  5. Save the form
  6. Use the generated shortcode: [formpays_pro_payment_form id="1"]

Which payment gateways are supported?

Currently supported:
* Razorpay (Cards, UPI, NetBanking, Wallets)
* PayU (Cards, UPI, NetBanking, Wallets)

More gateways coming soon!

Is this plugin secure?

Yes! The plugin follows WordPress security best practices:
* CSRF protection with nonce verification
* Input sanitization and validation
* Encrypted storage of sensitive data
* Secure webhook handling
* Permission-based access control

Can I customize the form appearance?

Yes! The plugin includes CSS classes for easy customization:
* .formpays-pro-form-wrapper – Form container
* .formpays-pro-field – Individual field
* .formpays-pro-field-label – Field labels
* .formpays-pro-field-input – Field inputs
* .formpays-pro-submit-btn – Submit button

How do I test payments?

Both gateways support test mode:
1. Enable test mode in gateway settings
2. Use test credentials from your gateway dashboard
3. Test complete payment flow without real charges

Test Cards:
* Razorpay Success: 4111 1111 1111 1111
* Razorpay Failure: 4000 0000 0000 0002
* PayU Success: 4012 0000 0000 0000
* PayU Failure: 4000 0000 0000 0002

What if I need help?

Check the troubleshooting section in the plugin documentation or contact support.

Reseñas

30 de octubre de 2025 1 respuesta
This plugin saved me so much time! Setting up payment gateways was incredibly easy, and everything worked right away. The custom form builder is flexible, and the dashboard makes tracking payments simple. Perfect for businesses that want secure payments without the hassle.
Leer la 1 reseña

Colaboradores y desarrolladores

«FormPays Pro» es un software de código abierto. Las siguientes personas han colaborado con este plugin.

Colaboradores

Traduce «FormPays Pro» a tu idioma.

¿Interesado en el desarrollo?

Revisa el código , echa un vistazo al repositorio SVN o suscríbete al registro de desarrollo por RSS.

Registro de cambios

1.1.3

  • Features: Added Email Notifications & Confirmations menu with customizable email templates
  • Features: Automatic email notifications for payment success and failure to customers and admins
  • Features: Test email functionality to verify email settings
  • Features: Smart phone number formatting with country code for Razorpay integration
  • Bug Fix: Fixed deprecated dynamic property warning for email_handler
  • Bug Fix: Resolved payment method selection not being passed to Razorpay gateway
  • Bug Fix: Fixed customer phone number not being prefilled in Razorpay checkout
  • Bug Fix: Corrected transaction time display on success page
  • Enhancement: Enhanced success page with more detailed transaction information
  • Code Quality: Fixed placeholder ordering in translatable strings
  • Code Quality: Added WordPress Coding Standards compliance for email notifications

1.1.2

  • Security: Fixed unsafe redirects – now uses wp_safe_redirect() for all admin redirects
  • Security: Resolved WordPress global variable conflicts (page, status, per_page)
  • Security: Enhanced nonce verification across admin functions
  • Compliance: Plugin now meets WordPress.org security requirements
  • Quality: 95% WordPress Coding Standards compliance

1.1.1

  • Code Quality: Applied 36,318+ WordPress Coding Standards fixes
  • JavaScript: Moved inline scripts to dedicated files for better performance
  • Standards: Enhanced code formatting and documentation
  • Compliance: Ready for WordPress Plugin Directory submission

1.1.0

  • Features: Added PhonePe gateway integration with SDK v2
  • Security: Enhanced webhook verification and nonce handling
  • Performance: Improved database queries and caching
  • UI/UX: Enhanced admin interface and form builder

1.0.0

  • Initial release
  • Razorpay and PayU integration
  • Form builder with conditional logic
  • Complete transaction management
  • Email notification system
  • Admin dashboard and settings
  • REST API and webhook support