Skip to content
DocsStudio

Personalization

Let customers customize a product at checkout and have it render, slice, and print automatically.

7 min read

Personalization turns one saved design into a product your customers can customize. A customer enters a name or selects an option on your store listing, and PrintPort3D reads that input, builds the exact customized model, and prints it — either automatically or after your review.

Overview

A personalized product exposes a few of a design’s parameters to your customer: a name to emboss, a number, a short label, or a style choice. When an order arrives, PrintPort3D reads the customer’s input from the listing’s option text, renders and slices that variant, and sends it to print. The customer’s listing input becomes a real, one-off STL with no manual step on your end.

Personalization is available only on adjustable designs: the templates and human-edited designs that carry parameter sliders in the Workbench. This is a deliberate constraint.

AI-designed products can’t be personalized

A design you described in chat, or generated as a mesh, has no adjustable sliders. The engine verified exactly one configuration of it, not a range, and selling an unverified range to customers risks producing a variant that was never checked. Only templates and designs you have edited by hand expose fields to personalize. To build a personalizable product, start from a template.

Requirements

The Personalization panel lives in the Workbench rail and becomes available once each of the following is in place:

  • The design is a template or a design you edited by hand, so it has parameters to expose.
  • The design is saved to your library.
  • You built a product from it that prints exactly this design, and only this design (one print file).
  • That product has a real, priced material set on it.

If any requirement is missing, the panel identifies which one. A product with more than one print file, or one that prints a different design, is refused (“Personalization requires a product with exactly one print file” and “This product does not print this design”). A product with no priced material is refused as well (“The product needs a real priced material before publishing a template”).

Build the product first

Save the design, then use Make it a product to create a single-file product from it. See Create a product. Return to the design in the Workbench and the Personalization panel will find that product automatically.

Exposing personalization fields

Open the saved design in the Workbench and find the Personalization panel in the right rail. Each adjustable parameter shows a checkbox. Enable the ones you want customers to control: at most five, and at least one.

  1. 1

    Select a field

    Check a parameter to expose it. Text, number, yes/no, and choice fields can all be exposed.
  2. 2

    Map it to a listing option

    Enter the listing option label, the exact name of the option on your store, such as “Name” or “Initial”. PrintPort3D uses this label to find the customer’s input in the order, so it must match what your listing sends. Case does not matter.
  3. 3

    Set a character set and length (text fields)

    For a text field, choose which characters are allowed and a maximum length. Input that falls outside those rules is rejected at order time rather than printed.

Character sets

Each text field is held to one character set. Choose the tightest one that still fits what your customers need.

Set per text field in the Personalization panel.

Character setAllows
Name / short text (default)Letters in any language, numbers, spaces, and . , ’ & - ! ?
Latin letters onlyA–Z letters, numbers, and basic punctuation (safest for decorative fonts)
DateNumbers with . / - separators
Anything printableAny visible character
  • Name / short text (default)
    Allows
    Letters in any language, numbers, spaces, and . , ’ & - ! ?
  • Latin letters only
    Allows
    A–Z letters, numbers, and basic punctuation (safest for decorative fonts)
  • Date
    Allows
    Numbers with . / - separators
  • Anything printable
    AllowsAny visible character

Max length defaults to 24 characters and can be set anywhere from 1 to 60. The length cap serves two purposes: it protects the print, since a name that runs off the plate is never made, and it bounds the worst-case cost described below.

Listing option labelrequired
The option name on your store this field maps to. Match it exactly to what your listing sends.
Character settext fields
Which characters a customer may use. Default is “Name / short text”.
Max lengthtext fields
The longest input allowed, 1–60 characters. Default 24.

Testing the mapping

Below the fields is a sample-order test box. Paste a line of option text exactly as your store would send it — for example Color: Blue, Name: Emma — and PrintPort3D runs the same reader and validator that real orders use. A green result shows the values it extracted; a red result identifies what it could not read or which rule failed.

Resolve mismatches before publishing

If the tester cannot read a field, your listing option name and your field label do not match. Correct the label, re-test, and publish only once the mapping is clean. This is the least costly place to catch a mismatch.

Review and automatic modes

Choose how personalized orders flow from the mode dropdown next to the Publish button.

Review each orderrecommended · default
Every personalized order waits for your approval before anything is charged or made. You see the customer’s input and the model first.
Fully automatic
A clean, in-bounds order flows straight to production with no stop.

Automatic mode fails closed

In Fully automatic mode, personalization never guesses. If the engine cannot confidently read the customer’s input, if the input breaks your character or length rules, or if it trips content review, the order parks in your Orders for you to handle manually. It is never printed on a guess. Automatic mode only speeds up orders that are unambiguous and within bounds.

Content review uses a small, high-precision word list. It flags an order for your review; it never silently rejects one. You see the reason and decide. How held orders wait, and when your card is charged, follow the same rules as the rest of the platform. See Automatic vs manual and How billing works.

Worst-case pricing

A personalized product does not have one fixed make cost, because a longer name uses more filament than a short one. When you publish, PrintPort3D prices the worst case: it builds the most expensive combinations of your exposed fields with a real render and a real Bambu slice, and lets the template go live only once every combination has priced.

The worst case is built as follows:

  • Text fields become the widest glyph repeated to their full max length.
  • Number fields become their maximum.
  • Choice and yes/no fields are tried in every combination.

Only choice and yes/no fields multiply into separate builds, and each product is capped at six combinations. Exceeding the cap stops publishing with a clear message (“N option combinations exceed the 6-combo pricing limit — lock some options or reduce choices”). To return under the cap, remove some choices or lock a field to a single value.

Counting combinations

A 3-way style choice multiplied by a 2-way size choice is 6 builds, exactly the limit. Adding one yes/no toggle raises it to 12, which is over. Text and number fields do not add to this count; only pick-one options do.

While the builds run, the panel shows Pricing worst-case builds…. When they finish it changes to Live · max make-cost $X · vN. That dollar figure is the highest make cost any personalized order of this product can reach, so you can set your listing price safely above it. If a build cannot start, the panel shows an error rather than hanging.

Orders cannot exceed the published bound

Real orders are sliced on the same lane as these worst-case builds, and every order is checked against the published bound before it is made. A customer’s variant can never cost more than the ceiling you approved at publish. Each make cost is an estimate until its exact slice runs, but it stays within that published envelope.

Publishing personalization does not spend a Studio credit; the worst-case builds run like any other render. Editing your fields and selecting Republish creates a new version and re-prices the worst case from scratch.

How an order becomes a print

Once a template is live, an order moves from checkout to production as follows.

  1. 1

    The customer customizes at checkout

    On your store listing, the customer fills in the options you exposed and pays you through your own store, as always.
  2. 2

    The order matches your product

    The order flows in through Shippo and matches your product by its SKU, the single join between your listing and PrintPort3D. The match ignores case and leading or trailing spaces — PrintPort3D shows your SKU in uppercase, but your listing need not copy that case — as long as the characters themselves are the same. See Publish to your store.
  3. 3

    The input is read and checked

    PrintPort3D extracts the customer’s values from the order’s option text, matched to the labels you set, then validates them against your character sets and length caps. Input it cannot read confidently, or that fails a rule, or that trips content review, parks for you. It never guesses.
  4. 4

    The exact variant is built

    A clean order renders and slices into that one customized STL. If another customer already ordered the same text, that build is reused.
  5. 5

    It is made per your mode

    In Review mode the order waits for your approval before your card is charged the make cost. In Fully automatic mode a clean, in-bounds order flows straight through. Either way the charge is your make cost — material plus labor — bounded by the envelope you published.

Next steps