Gatilab Products

Release Notes

Improvements, fixes, and the details behind each release.

Core Forms

Build forms, collect submissions, and connect the actions your site needs.

View Product
← All Core Forms Releases
Stable

Core Forms 4.4.0

Core Forms 4.4.0 includes the complete feature set originally planned for roadmap versions 4.4 and 4.5.

Added

  • Added inline Stripe Payment Element checkout with server-owned product pricing, idempotent PaymentIntent creation, and signed webhook confirmation.
  • Added first-class Razorpay hosted checkout with payment-link, captured-payment, failure, cancellation, and refund handling.
  • Added one-click importers for Ninja Forms and Formidable Forms alongside the existing CF7, Gravity Forms, WPForms, and Fluent Forms migration tools.
  • Added WP-CLI commands for form import/export/listing, submission maintenance, product and plan administration, license reporting, order reporting, and expiry maintenance.
  • Added native actions for WooCommerce, Easy Digital Downloads, SureCart, WP Simple Pay, MemberPress, LearnDash, Paid Memberships Pro, Groundhogg, Jetpack CRM, WP-CRM System, and SureContact.
  • Added AutomatorWP, Uncanny Automator, and OttoKit triggers and actions with form and submission payloads.
  • Added signed inbound WhatsApp webhooks for Meta Cloud API and Twilio, including reply correlation and delivery-state history in submission conversations.
  • Added a multi-product licensing and lightweight ecommerce system with products, plans, orders, subscriptions, customer accounts, activation limits, refunds, renewals, and audited signed downloads.
  • Added a dedicated customer dashboard for orders, masked/revealable keys, product downloads, activated sites, and subscription controls.
  • Added free, Stripe, Razorpay, and renewal license-form templates with complete payment and fulfillment actions.
  • Added a default Sample Product with free, USD annual, and INR annual plans on new and upgraded sites.
  • Added native Bricks and Elementor integrations plus a per-form WCAG 2.2 audit and conservative one-click repairs.

Changed

  • The form editor now renders only the active tab instead of executing every tab's PHP, JavaScript, analytics, and REST requests on every page load.
  • The visual builder now boots from server-rendered form and schema data, removing its two blocking initial REST requests.
  • Builder saves now persist markup and schema atomically through one endpoint with a bounded timeout and a standard form-post fallback.
  • Tab-specific saves merge with existing form settings, preserving payment and action configuration when saving Fields, Messages, or other individual tabs.
  • Licensing actions are always visible under a dedicated Commerce & Licensing category instead of disappearing when the public activation API is disabled.
  • Product and plan slugs are generated automatically, normalized, and made unique; manually entered slugs remain supported.
  • Plan prices are entered in customer-facing major units such as 49.00 instead of minor units such as 4900.
  • Product packages use the WordPress Media Library picker and uploader instead of requiring an attachment ID.
  • The licensing backend now includes catalog statistics, quick-start guidance, direct Add plan/Add package links, and file names instead of raw attachment IDs.
  • The existing core-forms.com CF Licenser client, option keys, 32-character key format, six-hour heartbeat, and update hooks remain separate from and compatible with the new merchant licensing subsystem.

Fixed

  • Fixed the Fields builder remaining on an indefinite loading spinner when either initial REST request stalled.
  • Fixed inactive Analytics requests and form-builder assets loading on unrelated form tabs.
  • Fixed paid plans being fulfillable from a non-payment form or before verified payment confirmation.
  • Fixed payment fulfillment accepting a mismatched paid amount or currency when validation is enabled.
  • Fixed free plans being incorrectly coupled to a payment requirement.
  • Fixed action-variable references showing a permanent Loading message when the Fields builder was not present.
  • Fixed stale admin asset caches by versioning the main admin stylesheet and licensing script from their file modification times while keeping the plugin version at 4.4.0.

Security

  • License fulfillment is idempotent per submission and product selection, preventing duplicate orders or keys during webhook retries.
  • Signed package links expire, verify the stored SHA-256 digest before streaming, and record downloads in an audit table.
  • Verified refunds disable issued licenses and cancel related subscriptions.
  • Inbound messaging and payment webhooks require provider signatures before they can change submission, payment, or fulfillment state.