Milo Gravity Forms
Create subscriptions from Gravity Forms submissions, either a WooCommerce subscription product or a standalone plan (Stripe Checkout), with per-form field mapping and merge tags.
Installation
- Install and activate the free Milo Subscriptions plugin and Gravity Forms.
- Upload and activate Milo Gravity Forms (Plugins → Add New → Upload).
- Enter your license key under Subscriptions → Licenses to enable updates.
WooCommerce is optional: it is only needed for the WooCommerce billing mode. Standalone mode works without it.
Global setting
Under Subscriptions → Settings → General → Gravity Forms:
| Setting | Description |
|---|---|
| Enable Gravity Forms integration | On/off switch for the whole integration. |
Configuring a form
Everything else is configured per form, under the form’s Settings → Milo Subscriptions section:
| Setting | Description |
|---|---|
| Create subscription on submission | Turns the integration on for this form. |
| Billing mode | WooCommerce (product) or Standalone (plan). |
| Subscription product ID (WooCommerce) | WooCommerce mode: the subscription product to sell. |
| Plan slug (standalone) | Standalone mode: the slug of the plan the customer checks out for. |
| Email field ID | The form field ID holding the customer email (required). |
| Name field ID | The form field ID holding the customer name (optional). |
WooCommerce mode
On submission, the add-on finds the customer by email (or creates a new WooCommerce customer, splitting the name into first and last), then creates a completed parent order containing the subscription product and creates the subscription from it. No payment is collected at submission time, so this suits free, invoiced, or manually billed sign-ups.
The subscription gets a note (“Created via Gravity Forms”) plus the form and entry IDs in its meta, and the entry stores the subscription and order IDs back.
Standalone mode
On submission, the add-on finds the WordPress user by email (or creates a subscriber account with a random password), then replaces the form confirmation with a redirect to the plan’s Stripe Checkout session. The subscription itself is created by Milo Subscriptions once the customer pays in Stripe.
The plan must exist and be active, and the email field must contain a valid address; otherwise the normal confirmation shows and nothing is created. Failures are logged to the Gravity Forms log.
Entry details
Entries that produced a subscription get a Milo Subscriptions box on the entry detail screen listing each linked subscription with its status (linked to the subscription in your admin) and the parent order.
Merge tags
Two merge tags are available in notifications and confirmations:
| Tag | Value |
|---|---|
| {milo_subscription_id} | The ID of the (first) subscription created from the entry. |
| {milo_subscription_status} | Its current status. |
These are populated in WooCommerce mode, where the subscription exists as soon as the entry is processed. In standalone mode the subscription is only created after Stripe payment, so the tags resolve to empty text.
Troubleshooting
- Nothing happens on submission: check the global toggle, the form’s “Create subscription on submission” toggle, and that the email field ID matches an actual field on the form.
- WooCommerce mode is silently skipped when WooCommerce is inactive or the product ID does not resolve to a product.
- Standalone failures (user creation, Stripe session) are written to the Gravity Forms debug log (Forms → Settings → Logging).
Billing modes
Works in both WooCommerce mode and standalone (Stripe-driven) mode; the mode is chosen per form.
Did this page miss something?
Tell us and we rewrite it, usually the same day.