Directory / plugin

FormPays Pro – Payment Form, Contact Form & Custom Form Builder

v1.2.15 · by Version Next

Contact and payment forms with analytics, Stripe, Adyen, Razorpay, PayPal, UPI QR Code, and Offline Payment.

About this plugin

FormPays Pro builds contact forms and payment forms, then reports how people use them. A form can collect a message with no charge, or take a payment through Stripe, Adyen, Razorpay, PayU, PhonePe, PayPal, or Instamojo. Stripe and Adyen also offer Apple Pay and Google Pay. Analytics records views, submissions, and payments for each form.

Forms

  • Create any number of forms, with required fields, help text, validation, and conditional logic. Fields include text, email, phone, website, number, message, dropdown, radio, checkbox, consent, date, time, file upload, star rating, slider, and HTML. A radio or checkbox choice can be written as Label|value when the stored answer should differ from the label. A number field can set a minimum, maximum, and step. A phone number may include spaces, dashes, and parentheses. A star rating is 5 or 10 stars. Fields can be full width, half width, or a third of the row. An Empty Spacer adds a gap. A Section Divider draws a divider. The form name and description can be shown or hidden. Shown is the default.
  • A Calculation field shows a live total from other fields. Write the formula with field IDs in braces, such as {quantity} * {price}. Operators are + – * / % ^ and parentheses. % is the remainder and ^ is power. Set the decimal places, including 0 for a whole number, plus a text prefix and suffix. A radio uses the selected choice, and checkboxes add the checked numbers. A calculation that names another calculation updates with it. Tick Use this total as the payment amount to charge that total. When more than one calculation is marked, the last one is charged. The server calculates the result again when the form is submitted.
  • Each form has an Appearance section on the Form tab. A CSS class and custom CSS apply to that form only. Set the form width to full width, a centered box, or a fixed width in pixels.
  • An Address field can suggest addresses from Google. Save the API key under Settings Google Address autocomplete, then turn on Suggest addresses from Google for that field.
  • Form protection can require the visitor to be logged in, or require a password, before the form is shown.
  • Start from a template under FormPays Pro Templates. Categories include business, ecommerce, donation, event, contact, and multi-step. Use Template creates the form and opens it in the editor.
  • Add a Form Step field to split a form into steps with Previous, Next, and Submit.
  • Embed a form with [formpays_pro id="123"], the FormPays Pro Form block, or the FormPays Pro Form module in Elementor, Divi, Beaver Builder, WPBakery, and SiteOrigin. Pages that already use [formpays_pro_payment_form id="123"] keep working. The block can also build the form in the page editor. Each field is its own block. Saving the page saves a real form, with entries and a shortcode. The forms list shows how many submissions each form has.
  • Turn Payment Collection off to use the form as a contact form. The submission is stored and emailed to the site admin. No gateway is called.
  • Open FormPays Pro Integrations to send a submission to a webhook, Zapier, Make, Slack, WhatsApp through the WhatsApp Cloud API, Mailchimp, Google Sheets, or the other included tools. Contact form success is included.
  • Turn analytics on or off for each form. Open FormPays Pro Analytics to see every form, or choose one form. The report includes a line chart, complete versus incomplete, device breakdown, views, starts, submissions, and payment results. Records older than 90 days are removed.

Payments

  • Charge a fixed amount, an amount the customer chooses, or one of several options. Each option can be a product with an image, a name, a base price, and a sale price. The visitor chooses one product and pays the sale price when it is set, otherwise the base price. The heading above the products is Select amount unless you set an Amount label.
  • When only one payment method is available, the form does not ask the visitor to choose a method.
  • Show only the currencies the selected gateway accepts. When the gateway accepts more than one, the form can show approximate amounts in those currencies. The charge stays in the form currency.
  • Offer a single payment, installments, or a subscription.
  • Let the customer save the form and pay later, or pick a date and time slot for the payment link.
  • Apply a coupon on the server. Set a percent or fixed discount, an optional form, a minimum amount, an expiry, and a usage limit.
  • Email one reminder when a checkout stays pending, and let the customer retry the same payment from a signed link.

After payment

  • Refund a successful payment, in full or in part, from the transaction screen. The transaction shows the product the visitor chose. A custom amount is shown with the other answers.
  • Download a PDF receipt. Tax rules under Settings Coupons & Taxation follow the customer’s country and state. The amount collected is treated as tax-inclusive. With no rules, the receipt shows the amount paid.
  • Give each successful payment the next invoice number, such as FP-2026-00041.
  • Download a form’s transactions as CSV, JSON, PDF, or Excel, or email those files on a daily, weekly, or monthly schedule.
  • Send a signed notice to a URL you choose when a payment succeeds, fails, or is refunded.

Gateways

Stripe (cards, Apple Pay, and Google Pay; Apple Pay and Google Pay appear on the Stripe checkout page when the customer’s device supports them), Adyen (cards, Apple Pay, and Google Pay on an Adyen payment link), Razorpay (cards, UPI, net banking, and wallets), PayU (cards, UPI, net banking, and wallets), PhonePe (UPI and other Indian payment methods), PayPal (cards and PayPal balance), Instamojo (cards, UPI, and net banking), UPI QR Code (a UPI ID and a QR code beside the payment instructions; the visitor submits a 12-digit UTR and you confirm the payment), Offline Payment (bank transfer, wire, NEFT, and RTGS; the visitor submits a date, reference, and proof and you confirm the payment), and a test gateway for development. The test gateway accepts a payment only while test mode is on. UPI QR Code and Offline Payment do not use test mode.

Stripe, Razorpay, and PayPal can bill later subscription periods. PhonePe, PayU, and Instamojo email a link when the next period is due.

Security

  • The amount is calculated on the server. A submitted total cannot lower the charge. A calculation marked as the payment amount is calculated again on the server, and that result is what is stored and charged.
  • Return URLs and webhooks confirm the paid amount and currency before a payment is marked successful.
  • Gateway credentials are encrypted.
  • Checkout is rate limited. Spam protection can use a hidden field, a minimum submit time, a country list, a keyword list, Cloudflare Turnstile, Google reCAPTCHA, hCaptcha, or Akismet. Each form can use the plugin settings or its own.
  • Once an hour, a pending checkout is checked with the gateway. It is marked successful only when the amount and currency match.

External services

Cloudflare Turnstile, Google reCAPTCHA, hCaptcha, and Akismet

These run only when you select one under FormPays Pro Settings Spam protection, or on a form that overrides that choice, and the required keys are saved. Turnstile, reCAPTCHA, and hCaptcha load that provider’s script on the form, and the plugin sends the visitor’s token to the provider to confirm it. Akismet runs only when the Akismet plugin is connected. The plugin sends the visitor IP address, browser, name, email address, and the text answers to Akismet. It does not send card details.

Cloudflare Turnstile, Cloudflare privacy, Google reCAPTCHA, Google privacy, hCaptcha, hCaptcha privacy, Akismet, Akismet privacy

WhatsApp

This runs only when WhatsApp is turned on under FormPays Pro Integrations and the form is set to use it. The plugin sends the form answers, the customer name and email, and, for a payment, the amount, currency, and transaction ID to the WhatsApp Cloud API. Meta delivers that message to the WhatsApp number saved in the integration. It does not send card numbers. Meta delivers a free-form message after that number has messaged the WhatsApp Business number.

WhatsApp Cloud API, Meta terms, Meta privacy

Google Analytics

This runs only when Google Analytics is turned on under FormPays Pro Settings. On a page that shows a form, or on a payment return page, the plugin can load Google’s tag when a Measurement ID is saved. It sends the form name, form ID, and, for a payment, the amount, currency, and transaction ID. It does not send names, email addresses, or field answers. Page views are left to the tag already on the site.

Google Analytics, Google Analytics terms, Google privacy

Google address autocomplete

This runs only when an API key is saved under FormPays Pro Settings Google Address autocomplete and Suggest addresses from Google is turned on for that Address field. The visitor’s browser loads Google’s Maps script and sends the address text they type to Google. Choosing a suggestion fills the street, city, state, postal code, and country. The plugin does not store the API key in the submission, and it does not send card details.

Google Maps Platform, Google Maps Platform terms, Google privacy

Plugin tags