Shopify: Sending Print Details with Metafields

Updated 1 week ago

Sending print details with metafields is ideal if you manage your own catalog and artwork, especially with many designs or designs that change often.

Once your Shopify store is connected to Fulfill Engine, you can send decorated orders without creating each product and design in Fulfill Engine first. Instead, you are able to tag your Shopify products and variants with a few metafields that
tell us:

  • Which blank to use: a Fulfill Engine SKU on each variant (color/size).
  • How to decorate it: one or more prints on the product, each with a location, method, and artwork URL.

When an order comes in, we read these metafields and produce the item as described.


Before You Begin

  1. Your Shopify store must already be connected to Fulfill Engine, with orders being sent to us for fulfillment.
    Follow the Shopify Integration Setup Guide here.
  2. Get the Fulfill Engine SKU IDs for each blank, color, and size you plan to sell. Review Product Catalog here.
  3. Host your artwork files at public URLs that stay available, for example in your Shopify Files or on a CDN

Step 1: Create the Metafield Definitions

In Shopify admin, go to Settings → Custom data.

Variant metafields

Under Variants, choose Add definition:

Name (suggested) Namespace and key Type
Fulfill Engine SKU fulfillengine.sku Single line text

Product metafields

Under Products, add one set of three definitions for each print you'll need. Start with print 1:

Name (suggested) Namespace and key Type
FE Print 1 Location fulfillengine.print_1_location Single line text
FE Print 1 Method fulfillengine.print_1_method Single line text
FE Print 1 Artwork URL fulfillengine.print_1_url Single line text

For products with more than one print, such as front and back, also add print_2_location, print_2_method, print_2_url, then print_3_..., and so on.

The namespace must be exactly fulfillengine, and keys must match the spelling above (lowercase,underscores).

Step 2: Set the SKU on Every Variant

Open each product, select each variant, and enter its Fulfill Engine SKU ID in Fulfill Engine SKU.

  • Every variant you sell needs its own value. Setting it only on the product isn't enough.
  • Enter the SKU ID exactly, with no extra spaces.

Step 3: Add Print Details to the Product

On the product, fill in the print metafields:

  • Location: where the artwork goes (see Artwork Placement below).
  • Method: how it's decorated (see Decoration Methods below).
  • Artwork URL: a link to the print-ready artwork file.

Rules: 

  • Always start with print 1, and number additional prints in order (1, 2, 3...). Don't skip numbers; prints after a gap are ignored.
  • Each print needs all three values: location, method, and URL.
  • Prints apply to all variants of the product. If different colors need different artwork, such as a white print on dark shirts, create separate products.

Example: Product Team Logo Tee

Metafield Value
fulfillengine.print_1_location front
fulfillengine.print_1_method  dtg
fulfillengine.print_1_url https://cdn.example.com/art/team-logo-front.png
fulfillengine.print_2_location back
fulfillengine.print_2_location dtg
fulfillengine.print_2_url

https://cdn.example.com/art/team-logo-back.png

Variant Navy / L:

Metafield Value
fulfillengine.sku Insert Fulfill Engine SKU ID for the Navy / L blank

Artwork Requirements

  • Supply print-ready files sized to the actual print dimensions. We print the artwork at the size provided and don't scale it.
  • Use a high-resolution PNG with a transparent background for most garment methods.
  • URLs must be publicly reachable, with no login, and must stay valid until the order ships.

Artwork Placement
Values are not case-sensitive. The placement must be available for the blank you select. Confirm the placement within the catalog here. 

Value Location
front Full front (on hats, the cap front)
back Full back
left_chest / right_chest Left / Right chest
upper_back Upper back
lower_back Lower back
left_sleeve / right_sleeve Left / Right sleeve
neck_label Applicable for Enterprise accounts
Inside neck label
cap_front
cap_back
cap_side_left
cap_side_right
Hats
drinkware_front drinkware_back
drinkware_wrap
Drinkware

Decoration Methods
The method must be available for the blank you select. Confirm the methods within the catalog here. 

Value Method
dtg Direct to Garment
dtf Direct to Film
embroidery Embroidery
screen_printing 24 piece MOQ
Screen Printing
screen_print_transfer Applicable for Enterprise accounts
Screen Print Transfer
htv Applicable for Enterprise accounts
Heat Transfer Vinyl
dye_sublimation Dye Sublimation
uv_print UV Print
engraving Engraving
heat_seal_patch Applicable for Enterprise accounts
Heat Seal Patch
sewn_on_patch Applicable for Enterprise accounts
Sewn on Patch
sticker Applicable for Enterprise accounts
Sticker
neck_label Applicable for Enterprise accounts
Neck Label
transfer_label Applicable for Enterprise accounts
Transfer Label
hangtag Applicable for Enterprise accounts
Hang Tag
liquid_3d LIQUID 3D™

Step 4: Test Before Going Live

  1. Set up one product and its variants following the steps above.
  2. Place a test order and send it to Fulfill Engine for fulfillment.
  3. In Fulfill Engine, confirm the order shows the right blank, color, size, print locations, and artwork.
  4. Then roll out to the rest of your catalog. For many products, Shopify's bulk editor or a bulk import app can fill in metafields faster.

Troubleshooting

If we can't process an order, the fulfillment request is rejected and the reason appears on the order in Shopify.

Message What to check
Unrecognized SKU "<your SKU>" The variant has no fulfillengine.sku value, or the product has no print_1_... values. Check the namespace and key spelling, and that the SKU is on the variant and the prints are on the product.
SKU <id> unrecognized for variant <id> The fulfillengine.sku value isn't a valid Fulfill Engine SKU ID. Check for typos or extra spaces.
... has incomplete
fulfillengine.print_N metadata
Print N is missing its location, method, or URL.
Shopify print location ''<value>" is not recognized ... The location is misspelled or isn't available on that blank.
Shopify print method ''<value>" is not recognized. The method isn't one of the Print Methods values.

Tips

  • After you add or fix metafields, wait about 5 minutes before retrying the order. Recent lookups are briefly cached.
  • Check the exact product and variant on the order. A similar-looking product or a different variant may be the one missing values.
  • If a Shopify SKU matches a product you've already set up directly in Fulfill Engine, that existing setup is used instead of the metafields.
Did this answer your question?