{
  "schemaVersion": 2,
  "tier": "basic",
  "productName": "WordForm",
  "distribution": {
    "channel": "wordpress.org",
    "audience": "free/basic users",
    "purpose": "Source of truth for what the future free version may expose and how any limited free features should behave."
  },
  "policy": {
    "positioning": "Free should feel stronger than a basic contact-form plugin, but Pro must remain the clear upgrade for advanced automation, survey, payment, upload, and reporting workflows.",
    "freeRestrictionModes": [
      "full",
      "limited",
      "pro_only"
    ]
  },
  "modules": [
    {
      "key": "builder_core",
      "label": "Builder Core",
      "status": "full",
      "features": [
        {
          "key": "drag_drop_builder",
          "label": "Drag-and-drop form builder",
          "status": "full"
        },
        {
          "key": "unlimited_forms",
          "label": "Unlimited forms",
          "status": "full"
        },
        {
          "key": "unlimited_fields_per_form",
          "label": "Unlimited fields per form",
          "status": "full"
        },
        {
          "key": "responsive_field_widths",
          "label": "Responsive field widths",
          "status": "full",
          "details": {
            "allowedWidths": [
              "full",
              "half",
              "one-third"
            ]
          }
        },
        {
          "key": "multi_step_forms",
          "label": "Multi-step / multi-page forms",
          "status": "full"
        },
        {
          "key": "embed_forms",
          "label": "Block editor and shortcode embedding",
          "status": "full"
        },
        {
          "key": "field_shared_options",
          "label": "Shared field options",
          "status": "full",
          "details": {
            "includedOptions": [
              "label",
              "adminLabel",
              "helpText",
              "placeholder",
              "defaultValue",
              "customCssClass"
            ]
          }
        },
        {
          "key": "validation_message_customization",
          "label": "Custom validation messages",
          "status": "full"
        },
        {
          "key": "submit_button_styling",
          "label": "Basic submit button styling",
          "status": "limited",
          "details": {
            "freeIncludes": [
              "text",
              "backgroundColor",
              "textColor"
            ],
            "proReserved": [
              "advanced typography controls",
              "full hover-state styling",
              "advanced sizing controls"
            ]
          }
        }
      ]
    },
    {
      "key": "templates",
      "label": "Templates",
      "status": "limited",
      "features": [
        {
          "key": "starter_templates",
          "label": "Starter form templates",
          "status": "limited",
          "details": {
            "freeTemplateCount": 6,
            "freeTemplates": [
              "Contact / Lead Form",
              "Booking Request Form",
              "Customer Feedback Form",
              "Basic Survey Form",
              "Simple Checkout / Order Form",
              "Basic Appointment Form"
            ],
            "builderNote": "Free templates should preferably stay within 2 steps to keep the free version simple and competitive."
          }
        }
      ]
    },
    {
      "key": "entries_reporting",
      "label": "Entries & Reporting",
      "status": "limited",
      "features": [
        {
          "key": "store_submissions",
          "label": "Store submissions inside WordPress",
          "status": "full"
        },
        {
          "key": "submission_list",
          "label": "Per-form submissions view",
          "status": "full"
        },
        {
          "key": "submission_detail_modal",
          "label": "Submission detail modal",
          "status": "full"
        },
        {
          "key": "basic_exports",
          "label": "Basic export-ready processed values",
          "status": "full"
        },
        {
          "key": "form_submission_export",
          "label": "Form-wise submissions Excel export",
          "status": "pro_only",
          "details": {
            "reason": "Free can review stored submissions in wp-admin, but exporting the full submission sheet is reserved for WordForm Pro."
          }
        },
        {
          "key": "payment_reporting_dashboard",
          "label": "Payment reporting dashboard",
          "status": "pro_only",
          "details": {
            "reason": "Free can accept basic payments, but detailed payment reporting should stay as a clear Pro upgrade."
          }
        },
        {
          "key": "connection_send_logs",
          "label": "Connection send logs",
          "status": "pro_only"
        }
      ]
    },
    {
      "key": "spam_security",
      "label": "Spam & Security",
      "status": "limited",
      "features": [
        {
          "key": "numeric_captcha",
          "label": "Numeric captcha",
          "status": "full"
        },
        {
          "key": "hcaptcha",
          "label": "hCaptcha",
          "status": "full"
        },
        {
          "key": "google_recaptcha",
          "label": "Google reCAPTCHA",
          "status": "full"
        },
        {
          "key": "captcha_styling_controls",
          "label": "Advanced captcha styling controls",
          "status": "pro_only"
        }
      ]
    },
    {
      "key": "payments",
      "label": "Payments",
      "status": "limited",
      "features": [
        {
          "key": "stripe_gateway",
          "label": "Stripe",
          "status": "full"
        },
        {
          "key": "paypal_gateway",
          "label": "PayPal",
          "status": "full"
        },
        {
          "key": "square_gateway",
          "label": "Square",
          "status": "pro_only"
        },
        {
          "key": "authorizenet_gateway",
          "label": "Authorize.Net",
          "status": "pro_only"
        },
        {
          "key": "payment_elements",
          "label": "Payment elements",
          "status": "limited",
          "details": {
            "freeIncludes": [
              "payment-item",
              "payment-quantity",
              "payment-custom-amount",
              "payment-method",
              "payment-summary"
            ],
            "proReserved": [
              "payment-coupon"
            ]
          }
        }
      ]
    },
    {
      "key": "integrations",
      "label": "Integrations",
      "status": "limited",
      "features": [
        {
          "key": "custom_webhook",
          "label": "Custom Webhook",
          "status": "full"
        },
        {
          "key": "google_sheets",
          "label": "Google Sheets",
          "status": "full"
        },
        {
          "key": "advanced_integrations_suite",
          "label": "Marketing, CRM, calendar, chat, and automation integrations",
          "status": "pro_only",
          "details": {
            "proApps": [
              "Google Calendar",
              "Zapier",
              "Slack",
              "Make",
              "Mailchimp",
              "MailerLite",
              "Brevo",
              "Airtable",
              "HubSpot",
              "ActiveCampaign",
              "Salesforce",
              "Zoho CRM"
            ]
          }
        }
      ]
    }
  ],
  "elements": [
    {
      "key": "text",
      "label": "Text",
      "status": "full"
    },
    {
      "key": "textarea",
      "label": "Textarea",
      "status": "full"
    },
    {
      "key": "email",
      "label": "Email",
      "status": "pro_only"
    },
    {
      "key": "tel",
      "label": "Phone",
      "status": "pro_only"
    },
    {
      "key": "number",
      "label": "Number",
      "status": "full"
    },
    {
      "key": "url",
      "label": "URL",
      "status": "full"
    },
    {
      "key": "hidden",
      "label": "Hidden",
      "status": "full"
    },
    {
      "key": "firstlastname",
      "label": "First & Last Name",
      "status": "full"
    },
    {
      "key": "address",
      "label": "Address",
      "status": "full"
    },
    {
      "key": "select",
      "label": "Select",
      "status": "full"
    },
    {
      "key": "radio",
      "label": "Radio",
      "status": "full"
    },
    {
      "key": "checkbox",
      "label": "Checkbox",
      "status": "full"
    },
    {
      "key": "terms",
      "label": "Terms & Conditions",
      "status": "full"
    },
    {
      "key": "gdpr",
      "label": "GDPR Consent",
      "status": "full"
    },
    {
      "key": "sectionhtml",
      "label": "Section / HTML",
      "status": "full"
    },
    {
      "key": "date",
      "label": "Date",
      "status": "limited",
      "details": {
        "freeIncludes": [
          "picker UI",
          "display format",
          "default value"
        ],
        "proReserved": [
          "min / max limits",
          "disable past / future rules",
          "calendar color theming"
        ]
      }
    },
    {
      "key": "time",
      "label": "Time",
      "status": "full",
      "details": {
        "freeIncludes": [
          "picker UI",
          "12h / 24h display mode",
          "default value"
        ]
      }
    },
    {
      "key": "datetime",
      "label": "Datetime",
      "status": "pro_only"
    },
    {
      "key": "upload",
      "label": "Upload",
      "status": "limited",
      "details": {
        "freeIncludes": {
          "allowedTypes": [
            "jpg",
            "jpeg",
            "png",
            "gif",
            "webp"
          ],
          "maxFiles": 1,
          "positioning": "Image uploads only in free version."
        },
        "proReserved": [
          "document uploads",
          "additional file types",
          "multiple files",
          "richer upload controls",
          "advanced upload reporting"
        ]
      }
    },
    {
      "key": "range",
      "label": "Range",
      "status": "full"
    },
    {
      "key": "maskinput",
      "label": "Mask Input",
      "status": "full"
    },
    {
      "key": "rating",
      "label": "Rating",
      "status": "pro_only"
    },
    {
      "key": "captcha",
      "label": "Numeric Captcha",
      "status": "full"
    },
    {
      "key": "hcaptcha",
      "label": "hCaptcha",
      "status": "full"
    },
    {
      "key": "gcaptcha",
      "label": "Google reCAPTCHA",
      "status": "pro_only"
    },
    {
      "key": "pagebreak",
      "label": "Page Break",
      "status": "full"
    },
    {
      "key": "submit-button",
      "label": "Submit Button",
      "status": "full"
    },
    {
      "key": "likert",
      "label": "Likert / Matrix",
      "status": "pro_only"
    },
    {
      "key": "signature",
      "label": "Signature",
      "status": "pro_only"
    },
    {
      "key": "richeditor",
      "label": "Rich Text Editor",
      "status": "pro_only"
    },
    {
      "key": "payment-item",
      "label": "Payment Item",
      "status": "full"
    },
    {
      "key": "payment-quantity",
      "label": "Payment Quantity",
      "status": "full"
    },
    {
      "key": "payment-custom-amount",
      "label": "Payment Custom Amount",
      "status": "full"
    },
    {
      "key": "payment-method",
      "label": "Payment Method",
      "status": "full"
    },
    {
      "key": "payment-summary",
      "label": "Payment Summary",
      "status": "full"
    },
    {
      "key": "payment-coupon",
      "label": "Payment Coupon",
      "status": "pro_only"
    }
  ],
  "upgradeTriggers": [
    "Need CRM or marketing integrations",
    "Need Google Calendar sync or automation apps",
    "Need document or multi-file uploads",
    "Need richer payment gateways or coupon workflows",
    "Need signature, matrix survey, or rich text fields",
    "Need advanced logs, connection send tracking, or support diagnostics"
  ]
}
