This article is also available in:

Text to Image feature

Text to Image (AI)


The Text to Image layer lets a buyer generate an AI image from a predefined text prompt, without uploading a photo. Add it to any artwork where you want the design generated on the spot. Pair it with a JSON layer to pull in preset data like city names or landmarks, or use it entirely on its own with buyer-typed text.



How to set up Text to Image feature

Step 1 (Optional). Add a JSON layer


This step is optional. The Text to Image layer works fine on its own, buyers can type in their own name, message, or other details through plain text layers, and you can reference those directly in your prompt. A JSON layer isn't required for any of that.


What a JSON layer adds is scale and consistency. Instead of manually building an Additional Option for every city, school, or theme you want to offer, you maintain one JSON file with all your presets, and the buyer picks from a searchable dropdown. Every field in that record (colors, landmarks, nicknames, whatever you include) becomes something you can pull into your prompt at once, without setting up a separate layer for each piece of data.


A JSON layer connects a list of preset records (hosted as a JSON file) so buyers pick one from a dropdown. The record they pick can then feed data into other layers, like a Text to Image prompt. We have prepared a demo json file for you to use.


  • On your Artwork Editor, click +Layer > under the Form Elements category, select JSON List.


  • This layer adds nothing visible to the canvas, it's a form field only.


For more details regarding the Json Layer and how to prepare it, please view this article.



Step 2. Add and set up the Text to Image layer


  • On your Artwork Editor, click +Layer > under the Image category, select Text to Image (AI).


  • Pick your GenAI provider for this layer: Gemini, GPT-Image, Flux, or ImagenHub. None is preselected by default.



You need an API key for whichever provider you choose. Usage is billed by that provider. See Connecting to AI Model Services to connect one.


If you select Flux on a store whose connected Flux account is version 1, the Portal shows a warning: Flux Kontext 1 can only edit an existing image, it cannot generate one from a prompt alone. Generation will fail if you ignore the warning and launch anyway.


ImagenHub works differently. Instead of a prompt and reference image, it shows a template picker, so the buyer picks a preset template rather than you writing a prompt. The rest of this article (prompt, variables) applies to Gemini, GPT-Image, and Flux.


  • Write your prompt. If that layer is a JSON layer, add a dot and the exact field name to target one specific property of the selected record: {{Layer name.field}}.


A tip to targeting the right property:
Your JSON file is a list of records, think of each one as a little card with several labeled fields, like name, country, or landmark. To pull one specific field into your prompt, write your JSON layer's name, then a dot, then that field's exact label, no quotes, no spaces.


For example, if your JSON layer is named City Name and this is one of the records:


{
    "id": "city_004",
    "name": "Tokyo",
    "alias": "Eastern Capital",
    "country": "Japan",
    "continent": "Asia",
    "colors": "Red and White",
    "founded": "1603",
    "nickname": "Eastern Capital",
    "landmark": "Tokyo Tower",
    "famous_food": "Sushi",
    "popular_activity": "Cherry Blossom Viewing"
}


Then {{City Name.landmark}} targets the landmark field and pulls in "Tokyo Tower" once the buyer selects Tokyo. Every variable you write for this layer always starts with {{City Name. followed by the field label you want to target. Please view the list below for more detail:

  • {{City Name.name}} → Tokyo
  • {{City Name.country}} → Japan
  • {{City Name.landmark}} → Tokyo Tower
  • {{City Name.famous_food}} → Sushi
  • {{City Name.popular_activity}} → Cherry Blossom Viewing
  • {{City Name.nickname}} → Eastern Capital
  • {{City Name.continent}} → Asia
  • {{City Name.founded}} → 1603
  • {{City Name.alias}} → Eastern Capital
  • {{City Name.colors}} → Red and White


The field name after the dot must match a key in your JSON file exactly. {{City Name.color}} will not work if your file's key is colors.


Here's a longer example prompt combining a JSON layer (City Name) with a plain text layer (Your Name):


Create a highly detailed vintage travel collage illustration celebrating {{City Name.name}}.

The centerpiece features the person's city "{{Your Name}} in {{City Name.name}}" in large elegant hand-lettered script with flowing vintage typography. Below the name, display "{{City Name.country}}" in a classic serif font.

Surround the typography with a dense, balanced collage of hand-drawn illustrations representing the city's identity, including:

- {{City Name.landmark}}
- {{City Name.famous_food}}
- {{City Name.popular_activity}}
- iconic local architecture
- famous skyline
- traditional flowers and plants native to {{City Name.country}}
- birds and animals associated with the region
- historic buildings
- decorative travel stamps
- vintage compass
- world map fragments
- luggage tags
- passport stamps
- banners and ribbons
- stars, leaves, florals and ornamental flourishes

Include ribbon banners containing:
- "{{City Name.nickname}}"
- "{{City Name.country}}"
- "{{City Name.continent}}"
- "Founded {{City Name.founded}}"
- "{{City Name.alias}}"

The entire composition should resemble an old travel journal or vintage postcard, using intricate pen-and-ink line art with subtle watercolor shading.

Use a warm muted color palette inspired by {{City Name.colors}}, with cream, beige, olive, terracotta, dusty blue and charcoal outlines.

Style:
- vintage travel poster
- hand illustrated
- maximalist collage
- engraved line art
- watercolor wash
- premium souvenir artwork
- balanced symmetrical composition
- white background
- clean sticker-like illustrations
- ultra detailed
- vector quality
- square composition
- no border
- no mockup
- high resolution


IMPORTANT: A Text to Image layer is always required for the buyer. There is no toggle to make it optional, the buyer must press Generate before they can add the product to their cart.


  • Optionally, add effects under Effects after generating. We recommend using only Remove background.



Notes


What buyers see:


  • The buyer must press Generate before Add to Cart is available.
  • If the buyer changes any field the prompt references after generating, the image is treated as out of date. Add to Cart is blocked again and a warning shows next to the Generate button until they regenerate.


  • If the buyer reverts that field back to the value it had at their last successful generation, the warning clears automatically, they don't need to press Generate again.
  • If the last generation attempt failed, Add to Cart is also blocked, with a warning next to the button.
  • If you Duplicate & Link a Text to Image layer, the linked copy shows the same generated image in both the preview and the final design.


Buyers cannot clear a generated image once one exists, only regenerate it.

Updated on: 07/09/2026

Was this article helpful?

Share your feedback

Cancel

Thank you!