BBizOS Docs

Custom fields

Every business tracks something the software didn’t ship with — site name, PO number, meter number, warranty months, vehicle number. Define it once, tick where it belongs, and BizOS treats it like a built-in field: on the form, in the list, in a filter, on the printed invoice, in an automation, and in a WhatsApp message.

The ten types

TypeStored asShown as
TextA short stringA single-line input
Long textA longer stringA text area
NumberA numberA right-aligned numeric input, with optional min and max
DateA dateThe BizOS date picker
CheckboxYes / noA checkbox
DropdownOne optionA searchable picker
Multi-selectSeveral optionsA searchable picker with chips
Phone+91XXXXXXXXXXThe +91 phone input
EmailA lowercase addressAn email input
URLA linkA link input, clickable on detail pages

Define once, tick where it applies

Settings → Work setup → Custom fields is one list of your fields. Each row shows what the field is and which records it applies to.

First, describe the field itself — this part is shared everywhere it appears:

  • Label — what people see. Freely editable forever.
  • Key — the internal name. Frozen after creation.
  • Type — also frozen, because changing it would leave stored values unreadable.
  • Help text and placeholder, so the field explains itself on the form.
  • A default value applied when a record is created.
  • Validation — min and max for numbers, maximum length for text.
  • Options, for dropdown and multi-select.

Then tick where it applies — leads, customers, jobs, quotations, invoices, contracts — and set each one independently:

  • Required on that record type.
  • Show in list — offer it as a column and a filter on that list.
  • Print on document — include it on the PDF. Offered on quotations and invoices only, because those are the two documents BizOS prints. Up to six per document.
  • Its position on that record type’s form.

One field, different rules per record

“PO number” can be required on invoices and optional on quotations — that is one field with two settings, not two fields. It also means the PO number typed on the quotation is the same PO number on the invoice it becomes.

Why the key can't change

The key is what every stored value on every record uses, what workflow conditions read (lead.custom.<key>), what a WhatsApp variable interpolates, and what CSV imports and exports match on. Renaming it would silently break automations and exports. The label is display-only and can be changed whenever you like.

Where a field applies is not frozen — tick and untick record types whenever you need to.

Where they show up

Forms and detail pages

On every create and edit dialog for that entity, and on the detail page, formatted for their type — a URL as a link, a date in IST, a dropdown as its label.

Lists: columns and filters

Fields marked list-visible can be added as columns and used as filters. Your column choice is remembered per person, per list; the filter lives in the URL, so a filtered view is a link you can share.

Printed documents

Fields marked “print on document” appear on the quotation and invoice PDF — under the customer details, above the items — and on the link you share with the customer. Perfect for PO number, vehicle number and e‑way bill number.

Automation conditions

Every trigger exposes the fields of the records it carries — “when an invoice is paid and the customer’s ‘Site type’ is Commercial”, or “when a contract is expiring and ‘Equipment brand’ is Daikin”.

Automations can fill them in

An automation can now set a custom field, not just read one — stamp a reference onto an invoice, or copy a value from the quotation it came from. Whatever it writes has to pass the same validation a person typing it would.

WhatsApp variables

Map a custom field into a template variable. Dropdown values render as their label, never their internal slug — a customer should never receive site_type_commercial.

Custom fields also work as report columns and filters on the Top Customers report.

Who can fill them in?

Whoever may edit a record may edit its custom fields; whoever may read it sees them.

RoleCustom fields
Owner, Admin, ManagerDefine fields and where they apply; fill them in on all six record types
Office staffFill them in on leads, customers, jobs, quotations and invoices; contracts read-only
AccountantRead them on quotations, invoices, contracts and customers
Field technicianRead and fill them in on jobs they work on

See Team & roles.

Values follow the record

When one record becomes another, the values come along. A quotation’s “Site name” is on the job you schedule from it and on the invoice you raise from it — nobody re-types anything.

This works because a custom field is one field applied in several places, not a set of look-alikes. The rule is simply: if the new record type is ticked, the value carries. Nothing to configure, nothing to reason about.

It applies to quotation → invoice, quotation → job, job → invoice, consolidated job-line invoices, contract → renewal quote, contract renewals, and lead → customer. Anything you typed on the new record yourself always wins over a carried value.

Options: rename freely, archive safely

Dropdown and multi-select options store a stable internal value, not their label. That means:

  • Renaming an option — “Godown” to “Warehouse” — updates it everywhere without rewriting a single record.
  • Archiving an option removes it from new entries while historical records keep showing it, labelled as removed, so the record stays honest.

Removing a field: three levels

ActionWhat happens
Untick a record typeThe field stops appearing on that record type’s forms, lists and filters. Every other record type is unaffected, and values already saved stay visible on the records that have them.
Archive the fieldIt disappears from every record type at once. Every stored value stays. You can restore it later.
PurgeThe definition is deleted and the value is stripped from every record it was ever used on. It cannot be undone, and BizOS tells you how many records were affected.

Unticking and archiving are the normal actions. Purge exists for a field created by mistake or one you must remove for privacy reasons.

Validation

The same validation rules run in the browser and on the server, from one shared definition — so the error appears next to the input rather than as a toast after saving, and the server stays the authority. A field archived between opening a form and saving it doesn’t break the save; the unknown value is simply dropped.

Common questions

Can I add my own fields to customers and leads?
Yes. BizOS allows up to 60 fields in your library and 30 on any one record type, in ten types including text, number, date, checkbox, dropdown, multi-select, phone, email and URL. They appear on forms and detail pages and can be used as list columns, filters, workflow conditions, WhatsApp variables and report columns.
Can I rename a custom field later?
You can rename its label at any time, and it updates everywhere it is displayed. The internal key and the type are frozen after creation because automations, exports and message variables reference them.
What happens if I remove a custom field?
Archiving removes it from forms and filters while every stored value stays on record, and it can be restored. Purging deletes the definition and strips the value from every record — that one cannot be undone.
Can I filter my customer list by a custom field?
Yes, for any field marked as list-visible. Filters live in the URL so a filtered view is a shareable link, and your chosen columns are remembered per person.
Can I use a custom field in a WhatsApp message?
Yes. Map it to a template variable like any built-in field. Dropdown and multi-select values render as their human label rather than their internal value.
Can I add custom fields to jobs, quotations, invoices and contracts?
Yes. A field is defined once and you tick which record types it applies to — leads, customers, jobs, quotations, invoices and contracts. Each one gets its own required and list settings, so the same field can be required on invoices and optional on quotations.
Can I print a custom field on the invoice PDF?
Yes — tick 'print on document' on the invoice or quotation binding, and it appears on the PDF under the customer details, above the items, as well as on the link you share with the customer. Up to six per document. Quotations and invoices are the two documents BizOS prints.
Do custom field values carry over when a quotation becomes an invoice?
Yes. If the invoice has the field ticked, the value carries across automatically — for quotation to invoice, quotation to job, job to invoice, contract renewals, and lead to customer. Anything you type on the new record yourself always wins.
Can an automation fill in a custom field?
Yes. The 'update record' action has a 'set custom field' option that works on any record type. Whatever it writes goes through the same validation as a person typing it, so it cannot store an invalid value.