Formgong – Contact Form with Email and Telegram Alerts

Description

Add a contact form, pick a design, and messages arrive by email, and in Telegram once you connect it. You don’t need an SMTP plugin, because your host’s mail is never used: Formgong delivers the message itself and keeps a copy in its inbox, so nothing gets lost when an email lands in spam.

What you get:

  • A Formgong form block and a [formgong] shortcode.
  • Ready templates: website forms, starter layouts, and industry forms such as a doctor appointment, an insurance quote, a salon booking, or a job application.
  • An email for every submission, instant Telegram alerts if you connect a chat, and one inbox for all your forms.
  • On WooCommerce, a question form on the product page and on the customer’s order page.
  • On WooCommerce, free product reviews: stars, approved reviews and a Write a review link on every product page, the rating in the product’s structured data for Google, and a CSV of your existing WooCommerce reviews to bring them along.
  • Spam protection with a honeypot, rate limits, and Formgong’s own checks.
  • Labels and messages in 12 languages.

Formgong is a form backend. This plugin posts the form to your Formgong endpoint. Create a free account at https://formgong.com, copy the access key, and paste it under Settings Formgong.

The plugin is tested on WordPress 7.1 with WooCommerce and the Storefront theme. Plugin Check passes.

On a WooCommerce store the same plugin can add:

  • a question on the product page, including the product name, SKU, and URL
  • a question on the customer’s order page (not the confirmation page after checkout), including the order number, only for a customer who can view that order

Checkout, payments, and WooCommerce order emails stay in WooCommerce.

Product reviews for WooCommerce

Formgong reviews work the same way on WooCommerce as on Shopify, and they are free. Create a review site under Dashboard Reviews in Formgong, paste its key under Settings Formgong Product reviews, and turn on “Show Formgong reviews on product pages”.

  • The product page gets the star average, the approved reviews, and a Write a review link to your Formgong review page. Reviews are stored per product, by the WooCommerce product ID.
  • You approve or hide reviews, reply to them, and turn on AI summaries, translation and photos in the Formgong dashboard.
  • Choose whether Formgong replaces the WooCommerce Reviews tab or sits next to it in its own tab. The shortcode [formgong_reviews] places the reviews anywhere, for example in a block theme’s product template.
  • The rating is added to the Product structured data WooCommerce already prints, so Google sees one Product with one rating, never two.
  • Settings Formgong Download WooCommerce reviews (CSV) exports your existing reviews, with their dates and your replies, in the columns Formgong’s import reads. Upload the file under Dashboard Reviews Import. Imported reviews wait for your approval.

The access key is public. It can submit the form. It cannot read the inbox. Paste it under Settings Formgong, then click Send a test submission. That test uses plugin-test@example.com and does not finish the Formgong connect wizard. Submit the public page to finish it.

Place the form with the Formgong block or the shortcode [formgong]. The block has a template picker. On a product template, [formgong product="1"] adds the current product’s name and SKU.

Pick a Formgong template with [formgong template="aula"], the block’s template setting, or Settings Formgong. An empty product or order template inherits the main template. The slug plain forces the built-in contact form. A shortcode or block template wins over the settings. The heading stays “Question about this product” or “Question about this order” unless you set a custom heading. Other forms say “Contact us” in the form language; an industry template uses its own name, such as “Doctor appointment form”; a survey has no heading. Website and starter template names never show to visitors.

The catalog matches the site templates, the starter layouts, and the industry forms such as clinic-appointment. The full slug list is below and on https://formgong.com/docs/wordpress . Styles are scoped so Storefront, Astra, and Twenty Twenty-Five do not restyle the fields. The labels, the button, and the headings follow the form language: the Form language setting, or the language of the site. Formgong has twelve (uk, en, pl, tr, ar, he, es, fr, pt, hi, ja, de); any other site language shows English.

For theme authors: the Formgong custom form block

A theme that has its own form design (steps, a star rating, a file drop zone, a product picker) can ship only the markup: a <form> with its fields and no action, key or sending script, inside the block formgong/custom-form. The plugin adds the action (/submit), the access key from Settings Formgong, the language, the page address, the redirects and a honeypot to every such form, and sends it in the background. The result comes back as events on the form: formgong:sending, formgong:sent (only after the server answered success: true) and formgong:error, so the theme only draws the states. A form with a file field is sent as multipart. The block setting reviews loads the approved reviews of the key and fires formgong:reviews. Without an access key the forms are left out; an administrator sees a reminder instead.

Every form sends a hidden _page_url with the current page address: scheme, host, and path. The query string is never sent, because it can hold a secret such as a WooCommerce order key. Formgong stores the address as the submission page when the host matches the referrer. A cross-origin post often sends only the site home in the referrer, so this field is what records the real page. If the browser sends no referrer at all, the address cannot be checked and the submission page stays empty.

Template slugs

Website: craftline, orrery, lattice, lattice-estate, shoal, lattice-atelier, soglia, halftone, ocra, arcwell, aula, goldleaf, quell, kavelle, burrow, selune, brightmoss, averin, sorrel, odera, tamsa, fernlow, stilla, somna, lucerna, marrow.

Starter layouts: html-contact, ajax-contact, tailwind-contact, modal-contact, dark-contact, minimal-contact, ai-builder.

NPS: nps.

Industry: clinic-appointment, patient-intake, insurance-quote, insurance-claim, order-inquiry, returns, wholesale, real-estate, course-enrollment, salon-booking, auto-service, legal-inquiry, renovation-estimate, job-application, event-registration, catering, tour-booking, fitness-trial, saas-demo, newsletter-signup, customer-feedback, customer-survey, rsvp, support-request, waitlist.

Support: support@formgong.com
Guide: https://formgong.com/for/woocommerce
WordPress docs: https://formgong.com/docs/wordpress
WooCommerce docs: https://formgong.com/docs/woocommerce

Written by the Formgong team.

External services

This plugin sends data to one external service, Formgong (https://formgong.com), the form backend it is made for. It connects to the endpoint you save under Settings Formgong. The default is https://formgong.com, and both requests below go to the /submit address of that endpoint: https://formgong.com/submit unless you changed it.

When a visitor submits a form. The form is a standard HTML form, so the visitor’s browser posts to https://formgong.com/submit. It sends the answers the visitor typed (and any file they attach), the public access key, the page language, an empty honeypot field, the success and error redirect addresses if you set them, and the address of the page the form is on in a hidden _page_url field. That address is the scheme, host, and path only: the query string and the fragment are never sent. A product question also sends the product ID, name, SKU, and product URL. An order question also sends the order number. As with any web request, the browser sends its IP address, user agent, and Referer header to Formgong. Formgong stores the answers and the page address, the user agent, a hash of the IP address (not the address itself), the country, and the type of device and browser, for the retention period set for the form. The visitor then lands on a Formgong confirmation page, or on a redirect address when one is set (see the FAQ).

When an administrator clicks “Send a test submission”. WordPress sends one JSON request to the same https://formgong.com/submit address from your server. It contains the access key, the language, a fixed name and message, and the address plugin-test@example.com. Its Origin and Referer headers are the address of your site, as a visitor’s browser would send them. The user agent is FormgongInstallationTest/1.0. No visitor data is involved. The test does not finish the connect wizard.

Formgong’s terms and privacy policy: https://formgong.com/en/terms/ and https://formgong.com/en/privacy/
The plugin adds suggested wording for your own privacy policy under Settings Privacy Policy Guide.
What is sent, and how it is stored, is described at https://formgong.com/for/woocommerce

When a product page shows Formgong reviews. Only when you turn on product reviews and save a reviews key. The visitor’s browser loads the widget script https://formgong.com/reviews.js and the approved reviews of that product from https://formgong.com/reviews/<reviews key>.json?product=<product ID>, plus the next page of reviews when the visitor asks for more. A click on Helpful sends a vote for that review. Write a review opens Formgong’s review page for your site, with the product ID and name in its address, where the reviewer types the review; it is sent to Formgong from there, not from your site. Your server also fetches the same JSON for the product, at most once an hour per product, to put the star average and the count in the Reviews tab title and in the product’s structured data. Saving a new reviews key makes one more request to the same address to check it. Nothing about the visitor is sent apart from what any web request carries (IP address, user agent). The Download WooCommerce reviews button does not contact Formgong: the file is downloaded to your computer, and you choose whether to upload it.

When a WooCommerce order is completed, refunded or cancelled. Only when you turn on review emails and save a reviews key and a store token. Your server sends one JSON request to https://formgong.com/api/woocommerce/orders with the store token in the Authorization header: the reviews key, the order number, the buyer’s email address and first name, the site language, the completion date, each product’s ID, name, picture address and page address, and the store’s name, logo address, WooCommerce email colour, time zone and From address (used as the default look and Reply-To of the email). Formgong stores the order and emails the buyer once, after the delay you set in the Formgong dashboard, with a link to review each product and a link to stop review emails from your store. The order row, with the buyer’s address, is deleted 30 days after it is sent or cancelled. When the order is refunded or cancelled, your server sends the reviews key, the order number and the reason to https://formgong.com/api/woocommerce/orders/cancel, and Formgong does not send a waiting email.

When a page shows approved reviews. Only when a theme’s custom form asks for them (the reviews setting of the Formgong custom form block), the visitor’s browser loads https://formgong.com/reviews/<access key>.json: the reviews the site owner approved in Formgong, with their star rating, name and text. Nothing about the visitor is sent apart from what any web request carries (IP address, user agent).

The plugin does not phone home for updates, ads, or tracking.

Screenshots

Blocks

This plugin provides 2 blocks.

  • Formgong form A Formgong form. Pick a website, starter, or industry template.
  • Formgong custom form A theme's own form markup, sent to Formgong. The plugin adds the action, the access key, a honeypot and the sending to every form inside.

Installation

Install from your WordPress admin: open Plugins Add New, search for “Formgong”, click Install Now, then Activate.

To install by hand instead, download https://formgong.com/downloads/formgong-wordpress.zip, open Plugins Add New Upload Plugin, choose the zip, and activate Formgong.

Then set it up:

  1. Open Settings Formgong.
  2. Paste the access key from the Formgong dashboard. Leave the endpoint at https://formgong.com unless you use another Formgong host.
  3. Click Send a test submission. It does not finish the connect wizard.
  4. Add the Formgong block and pick a template, or add [formgong]. Optional: [formgong template="aula"], then publish.
  5. On a store, turn on the product question, the order question, or both. Leave a template empty to inherit the main one, or choose plain for the built-in contact form, then save.
  6. Send a test from the live page and open the Formgong inbox.

FAQ

Does this replace WooCommerce checkout?

No. The plugin does not change checkout, payments, or order emails. It only adds question forms.

Do I need an SMTP plugin?

Not for this form. Formgong sends the notification email itself, and Telegram alerts are instant once you connect a chat.

Where do visitors land after they send the form?

On a Formgong thank-you page, unless a redirect is set. A redirect address set on the form in the Formgong dashboard is used as it is. The plugin’s “Success redirect” setting sends its own address with the form, and Formgong uses it only when it is on the same site as the form, or on one of the form’s allowed domains when the form has a list. An address on another domain is ignored: the visitor sees the dashboard’s redirect if there is one, and the Formgong thank-you page if there is not. The error redirect follows the same rules.

Where is the access key stored?

In the formgong_settings option in your WordPress database. Deleting the plugin removes that option, on every site of a multisite network. Submissions themselves are stored by Formgong, not in WordPress.

Can I use Cloudflare Turnstile or file uploads?

No. The plugin’s forms do not show the Turnstile check and have no file fields. A Formgong form with Turnstile turned on rejects every submission (the error code is turnstile_missing), and a file part is refused (uploads_disabled). Turn Turnstile off for the form under Settings Protection in the Formgong dashboard. The honeypot field, the rate limits, and Formgong’s own spam checks still apply. Industry templates that the site offers with an attachment field appear here without it.

Can the endpoint be a Formgong host on a private network?

The endpoint must be an https address, and a private-network address is not supported. The “Send a test submission” button makes its request from your server through WordPress’s safe HTTP API, which refuses private-network addresses and ports other than 80, 443, and 8080, so the test cannot reach such a host. Use a public https address.

Can I use it without WooCommerce?

Yes. Without WooCommerce you still get the contact form block and the shortcode. The product and order questions stay off.

Does the product question work in block themes?

Yes. In a block theme it follows the Add to Cart block on the Single Product template, or the product details if that block is gone. To choose the spot yourself, leave the product question off under Settings Formgong and add a Shortcode block with [formgong product="1"] to the Single Product template.

Can I use a Formgong template?

Yes. Under Settings Formgong choose a website template (aula, lattice), a starter layout, or an industry form (clinic-appointment). A block or shortcode can override it: [formgong template="lattice"]. On a store, an empty product or order template inherits the main one. The slug plain forces the built-in contact form. The styles are written so Twenty Twenty-Five, Storefront, and Astra do not restyle the inputs.

My theme’s form shows no fields, or the fields have no Send button that works.

Themes built on the Formgong custom form block need this plugin, version 1.1.0 or later, with an access key saved under Settings Formgong. Without the plugin the theme hides its forms, because nothing could send them.

Why does the inbox show the site home?

WordPress often sends only the site origin as the referrer on a cross-origin post. The plugin adds a hidden _page_url for the current page. Formgong keeps it when the host matches, ignoring a leading www. A site that tells browsers to send no referrer (Referrer-Policy: no-referrer) gives Formgong nothing to check the address against, so the page stays empty.

The block does not appear, or the page is blank.

Activate the plugin and reload the editor. The block name is Formgong form. The form renders on the published page, not only inside the editor. If Plugin Check or the editor reports that the site does not support formgong/form, the block script did not load: confirm the plugin folder contains block/editor.asset.php and block/editor.js.

The product reviews do not show.

Check that WooCommerce is active, the reviews key is saved, and “Show Formgong reviews on product pages” is on. Saving a new key checks it with Formgong and says how many approved reviews it has, or that reviews are off for it. A product with no approved reviews shows only the Write a review link, and nothing at all when that button is off in the Formgong dashboard. In a block theme whose product template has no Reviews tab, add a Shortcode block with [formgong_reviews].

Can I move reviews from another review app?

Formgong’s import (Dashboard Reviews Import) reads exports from Judge.me, Yotpo, Loox, Shopify Product Reviews and any CSV with a rating and a text column. Put the WooCommerce product ID in a product column so the reviews land on the right product page. For reviews stored in WooCommerce itself, use the Download WooCommerce reviews (CSV) button: it fills that column for you.

The product or order question is missing.

Confirm WooCommerce is active and the checkbox under Settings Formgong is saved. The order question is shown only to a customer who can view that order, and not on the confirmation page right after checkout. In a block theme the product question follows the Add to Cart block.

Reviews

There are no reviews for this plugin.

Contributors & Developers

“Formgong – Contact Form with Email and Telegram Alerts” is open source software. The following people have contributed to this plugin.

Contributors

Changelog

1.3.4

  • Product recommendations in review emails: the plugin sends a light catalog (name, link, picture, price, sales; hidden, private and out-of-stock products left out) once a day and when products change, plus each ordered product’s cross-sells, up-sells and related products. The “Recommended products” block in the Formgong email editor uses it. Off by default.
  • Each order now carries the buyer’s billing country and, when a newsletter plugin records it (Mailchimp for WooCommerce, or the formgong_review_marketing_consent filter), marketing consent. Formgong uses them to skip product recommendations without consent in the EEA, UK and Switzerland, and, when the store turns it on, to skip review emails to buyers in Germany without consent.

1.3.3

  • Thank-you coupons for reviews: when turned on in the Formgong dashboard, a buyer who reviews an order gets a one-use WooCommerce coupon for their email, whatever the rating. Those reviews carry a “Received a store coupon for reviewing” label, as the FTC endorsement guides require.
  • Google Shopping product reviews feed for WooCommerce: the plugin sends each ordered product’s GTIN, SKU and brand, and the Formgong dashboard gives the feed URL for Merchant Center.
  • [formgong_reviews layout="carousel"] shows reviews as a carousel.

1.3.2

  • Review stars under product names in shop, category, search and related-product lists (classic and block themes), one request per page. On by default; they replace WooCommerce’s own list stars when Formgong replaces the Reviews tab.
  • Site-wide rating badge: bottom-right, bottom-left or the [formgong_rating_badge] shortcode, linking to a page you choose. Left out of cart, checkout and account pages.
  • The reviews widget can filter by stars, show reviews with photos and sort them, once a product has five or more reviews.
  • Review emails link to one page for the whole order, reviews sent from it carry a “Verified buyer” label, and one reminder asks only about products not yet reviewed (on by default after 5 days, set in the Formgong dashboard).

1.3.1

  • Review emails for WooCommerce: after an order is completed, Formgong emails the buyer a few days later with a link to review each product they bought. Refunds and cancellations stop a waiting email. Turn it on under Settings Formgong with a store token from the Formgong dashboard; the delay, text and look are set there.

1.3.0

  • Product reviews for WooCommerce, free: Formgong’s review widget on product pages (stars, approved reviews, Write a review), in WooCommerce’s Reviews tab or next to it, and the [formgong_reviews] shortcode.
  • The Formgong rating goes into WooCommerce’s own Product structured data, never as a second Product.
  • Download the store’s WooCommerce reviews as a CSV that Formgong’s import reads.

1.2.0

  • Privacy notice under the send button: “We use your details only to reply to you.” in the form language, with a link to the site’s privacy policy page (Settings Privacy). Settings Formgong can link to another address or turn the line off. With no policy page and no address, no line is shown.
  • Industry templates no longer add the required “I agree to be contacted” and “I agree that these answers are stored” boxes: replying to a request does not need consent. Health templates (doctor appointment, patient intake) ask for explicit consent to process health details instead. The newsletter and waitlist opt-ins are optional.

1.1.0

  • New block for theme authors: Formgong custom form (formgong/custom-form). A theme supplies its form markup; the plugin adds the action, the access key, the honeypot and the sending, and reports sending, sent and error as events.
  • Optional loading of approved reviews for themes that show them.

1.0.1

  • Terms and privacy links point to https://formgong.com/en/terms/ and https://formgong.com/en/privacy/.

1.0.0

  • First release. Contact form block and shortcode, Formgong templates (site, starter, and industry), optional phone field, and WooCommerce product and order questions.
  • The block loads in the editor and renders on the page. Submissions record the current page URL in a hidden _page_url field. Starter and industry template names follow the site language.
  • Product and order templates inherit the main template when left empty. The slug plain forces the built-in contact form. A shortcode or block template wins.
  • Tested on WordPress 7.1 with WooCommerce and Storefront. Plugin Check passes.