Form Builder
Official Payload plugin that lets admins build forms, collect submissions, send templated emails, and optionally process payments or uploads.
Installation
pnpm add @payloadcms/plugin-form-builder About
The official Payload form-builder plugin, maintained by the Payload team. On install it injects two collections into your config: `forms` (where editors compose forms) and `form-submissions` (where each posted response lands). Editors assemble forms field by field using a `blocks` field, picking from text, textarea, email, number, select, checkbox, date, state, country, message, payment, and upload block types. Each form carries a confirmation type (on-page rich text message or redirect), a localized submit button label, and an emails array that defines transactional messages sent after each submission. Submission handling runs through collection hooks. An `afterChange` hook renders each configured email, interpolates submitted values with double-curly tokens (including a `{{*}}` wildcard and `{{*:table}}` for an HTML summary table), serializes the Lexical rich-text message body, and dispatches via `payload.sendEmail`. A `beforeChange` hook handles file uploads into declared upload collections and, when payments are enabled, calls a developer-supplied `handlePayment` callback. The bundled `getPaymentTotal` helper computes a charge from a base price plus dynamic price conditions (equals, hasValue, notEquals paired with add, subtract, multiply, divide). Configuration is sparse. You can enable or disable individual field blocks, pass `uploadCollections` (required before upload fields register), define `redirectRelationships` for internal-link redirects, set `defaultToEmail` as a fallback recipient, and supply a `beforeEmail` hook to mutate outbound messages. The generated `forms` and `form-submissions` collections accept full overrides through `formOverrides` and `formSubmissionOverrides`, including a `fields` function that receives the default field list for surgical edits. The plugin ships as TypeScript source with React admin components for the dynamic field and price selectors, and it depends on Payload 4.x plus React 19.
Package info
- Package name
@payloadcms/plugin-form-builder- Latest version
3.86.0- Unpacked size
- 851 kB
- License
- MIT
- Weekly downloads
- 91.5k
- Last publish
- Jul 10, 2026
More from payloadcms
View profileZapier
Sends Zapier webhook events when Payload collection documents are created, updated, or deleted.
Cloud
Connects a Payload instance to Payload Cloud's managed S3 storage, Cloudflare CDN upload caching, and Resend email delivery.
Nested Docs
Adds parent-child document hierarchies with auto-generated breadcrumbs to Payload collections.
Stripe
Syncs Payload collections with Stripe resources and routes Stripe webhooks and API calls through Payload.
Search plugin
Search plugin for Payload enables fast searching of document records.
Sentry
Integrates Sentry error tracking into Payload applications.