Quote Forms
Most quotes start with a "request a quote" form on your website. Without this addon, the request lands in your inbox and someone re-types the name, email and message into a quote. With it, the submission is the quote — a draft, ready to price.
What you get
- A draft quote (or invoice) per submission, opened for the client the form identifies. The client is found by email or created; the message becomes the quote's brief; when the form asks for a service and an amount, they become the first line item.
- Every field the form sent is kept on the quote, so nothing the visitor typed is lost even if it was not mapped.
- An admin email for each new request, and a "From form" marker on the quote row.
- Works with WPForms, Gravity Forms, Contact Form 7 and Fluent Forms — pick the form and map its fields; no code.
Enabling
- Open Easy Invoice → Addons and activate Quote Forms
- Open Quote Forms in the sidebar
- Add a rule: choose the form builder, the form, whether a submission creates a quote or an invoice, and map its fields
The mapping targets are: email, name, company, phone, address, message, service, amount, quantity. Only email is required — it is how the client is found or created. Any number of rules can exist, one per form.
What the client sees
Nothing changes on your website: the form submits as it always did, with its own confirmation. The quote stays a draft until you open it, check the price and mark it available — the visitor is never sent an unreviewed quote.
Any other form
A form builder that is not listed can feed the addon with a single action from its own "after submit" hook:
do_action( 'easy_invoice_quote_forms_submission', [
'email' => '[email protected]',
'name' => 'Jane Doe',
'message' => 'Three-page brochure site, launch in May.',
'service' => 'Web design',
'amount' => 2400,
], [ 'builder' => 'custom', 'form' => 'brochure-request' ] );For developers
| Hook | Type | Purpose |
|---|---|---|
easy_invoice_quote_forms_submission | action | Feed a submission in from any source (see above) |
easy_invoice_quote_forms_fields | filter | Normalised fields before the document is built |
easy_invoice_quote_forms_document_data | filter | The quote/invoice data before it is created |
easy_invoice_quote_forms_notify | filter | Return false to skip the admin email |
easy_invoice_quote_forms_created | action | After the quote or invoice exists ($id, $fields, $context) |
easy_invoice_quote_forms_builders | filter | Register another builder for the settings screen |
Two meta keys record the origin: _easy_invoice_form_source (builder and form) and _easy_invoice_form_submission (every field sent).