{"templateId":"../../@theme/Templates/ChangelogEntry","sharedDataIds":{},"props":{"metadata":{"markdoc":{"tagList":["admonition"]},"type":"markdown"},"seo":{"title":"How split fields work","siteUrl":"https://developers.signable.app","description":"Integrate Signable’s eSignature API to send, sign, and manage documents with envelopes and webhooks.","image":"/assets/hero-placeholder-small.5b052639e5d5a3b6265375db1ac2835173dda2c0ed22f8c167f6284080cc84ce.db81178d.png","llmstxt":{"hide":false,"sections":[{"title":"Table of contents","includeFiles":["**/*"],"excludeFiles":[]}],"excludeFiles":[]}},"dynamicMarkdocComponents":[],"compilationErrors":[],"ast":{"$$mdtype":"Tag","name":"article","attributes":{},"children":[{"$$mdtype":"Tag","name":"Admonition","attributes":{"type":"info","name":""},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Split fields will be released on ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["10 November 2026"]},". Until then, a ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["split"]}," tag is not recognised and is left in the document as ordinary text."]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["You can now add ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["split fields"]}," to your documents. A split field collects one value across a row of cells that line up with the boxes printed on a form, such as a card number, a sort code or a National Insurance number. You place one field over the boxes instead of one text field per box."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Nothing changes for existing documents, templates or tags."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"how-split-fields-work","__idx":0},"children":["How split fields work"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["A split field is made of cells, runs and gaps:"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["A ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["cell"]}," holds one character."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["A ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["run"]}," is a group of cells that sit together. A field has between 1 and 20 runs, and each run has between 1 and 25 cells."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["The ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["cell gap"]}," is the space between cells, shared by every run."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["The ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["run gap"]}," is the space between runs."]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["A card number printed as ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["1234 5678 9012 3456"]}," has four runs of 4 cells."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"add-split-fields-with-tags","__idx":1},"children":["Add split fields with tags"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Use the new ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["split"]}," field type in your ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/tags"},"children":["tags"]},", with options added after ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["split"]},":"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"text","header":{"controls":{"copy":{}}},"source":"{split,l=9:signer1:Reference}\n{split,l=4-4-4-4,cg=2,rg=4:signer1:Card+Number}\n","lang":"text"},"children":[]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Option"},"children":["Option"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Meaning"},"children":["Meaning"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["l="]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Layout. One cell count per run, joined by ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["-"]},". Required unless you use ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["p="]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["cg="]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Cell gap, in PDF units. Defaults to 0"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["rg="]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Run gap, in PDF units. Defaults to 0"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["p="]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["A preset, which sets what the signer can enter and, for most presets, the layout"]}]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Make a split field optional with ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["?"]},", as with other fields: ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["{split?,l=9:signer1:Reference}"]},"."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["A split tag with a problem, such as a missing ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["l="]}," or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["p="]},", or a preset we do not recognise, is ignored and no field is created."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"presets","__idx":2},"children":["Presets"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Presets cover common UK references, such as ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["card_number"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["sort_code"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["national_insurance"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["utr"]}," and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["postcode"]},". A preset restricts what the signer can enter and sets the layout in one go:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"text","header":{"controls":{"copy":{}}},"source":"{split,p=card_number:signer1:Card+Number}\n","lang":"text"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["numeric"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["alphabetical"]}," and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["alphanumeric"]}," presets only limit which characters the signer can enter, so use them with ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["l="]},":"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"text","header":{"controls":{"copy":{}}},"source":"{split,p=numeric,l=8:signer1:Reference}\n","lang":"text"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"build-a-tag","__idx":3},"children":["Build a tag"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Split tags are longer than most, so we've added a ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/tags#build-a-tag"},"children":["tag builder"]},". Choose ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Split"]},", set the layout, gaps and preset, then copy the tag into your document."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["You can find the full list of presets, options and rules in ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/field-types/split"},"children":["Split field"]},"."]},{"$$mdtype":"Tag","name":"Admonition","attributes":{"type":"warning","name":""},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["If your integration validates ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["field_type"]}," against a fixed list, add ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["split"]}," to it before the 10th of November 2026."]}]}]},"headings":[{"value":"How split fields work","id":"how-split-fields-work","depth":2},{"value":"Add split fields with tags","id":"add-split-fields-with-tags","depth":2},{"value":"Presets","id":"presets","depth":2},{"value":"Build a tag","id":"build-a-tag","depth":2}],"frontmatter":{"title":"Introducing Split Fields","date":"2026-11-09T00:00:00.000Z","type":"API","breaking":false,"template":"../../@theme/Templates/ChangelogEntry","seo":{"title":"How split fields work"}},"lastModified":"2026-11-08T21:58:47.000Z","pagePropGetterError":{"message":"","name":""}},"slug":"/changelog/entries/2026-11-10-split-fields","userData":{"isAuthenticated":false,"teams":["anonymous"]},"isPublic":true}