Why Don't Shopify Gift Messages Show Up in ShipStation?
Published
Short answer: because Shopify has nowhere to put one. ShipStation has a proper place for a gift message — every order has a This is a Gift checkbox and a gift message field, and packing slips can print it with [Gift Message]. Shopify orders have no equivalent field, so a gift message reaches ShipStation as part of the order note, which lands in Notes from Buyer, or as a note attribute, which lands nowhere until you map it to a custom field. ShipStation’s Shopify guide lists gift order identification as not supported, so the checkbox stays unticked too.
The fix depends on which of those two your store uses. One is a store setting. The other means moving the message into a field of its own.
This post is about the gift message. For the packing slip template itself — headers, item rows, where things go — see how to customize packing slips in ShipStation.
Where the message comes from in Shopify
A Shopify order has no gift message field. Shopify’s own reference for the order’s note describes it as “commonly used for special delivery instructions, gift messages, or internal processing notes”, and the order’s custom attributes the same way: “for example, gift message, delivery instructions, or internal notes.”
That gives a store two places a gift message can end up, and which one yours uses depends on the theme or app that collects it.
The order note. Most themes can show a box on the cart page — Shopify calls them order notes, and some themes call them cart notes — and whatever the customer types goes into the order’s single Notes field. There is one box, so the gift message shares it with anything else the customer wanted to say.
A note attribute. A theme or app can add its own fields instead — on Shopify Plus, the checkout custom field block even ships a “Gift message” template — and those save to the order as an order metafield, an order note attribute, or the order note itself. A separate field keeps the message apart from everything else, which matters once it reaches ShipStation.
If you are not sure which your store uses, open a recent gift order in Shopify and look at where the message sits.
Where it lands in ShipStation
ShipStation’s Shopify integration guide answers this in its feature table and its custom fields section.
The order note goes to Notes from Buyer. ShipStation imports the notes the customer provided when they made their purchase. Everything in that box comes across as one block of text.
Note attributes and metafields go nowhere by default, and can be mapped. In ShipStation’s words, “Shopify sends additional order details to ShipStation that are not mapped to a ShipStation field by default.” Shopify Order Note Attributes and Order Metafields are both on the list you can map to Custom Field 1, 2 or 3. The mapping lives in the store’s settings, under Edit Shopify Settings, in the Custom Field Mappings section, and it applies to orders imported after you set it — orders already in ShipStation are not affected.
The gift checkbox stays unticked. The same table lists Identifies Gift Orders as not supported for Shopify. ShipStation is relaying what the store sends, and Shopify does not send a gift flag.
Other channels
The gift checkbox is a per-channel feature, and plenty of channels do fill it. ShipStation’s integration guides list gift order identification as supported for, among others, Amazon, Etsy and the current BigCommerce integration, and the BigCommerce guide says gift notes import as well. Amazon carries a caveat: ShipStation notes that Amazon no longer provides a direct gift indicator, so it identifies gift orders from order notes and gift wrap selections, and some may not be identified.
WooCommerce’s own documentation says its ShipStation plugin can send gift information to ShipStation’s gift fields once the gift option is enabled at checkout.
Whatever the channel, one test order tells you more than any table: place it with a gift message, import it, and see which field it arrived in.
ShipStation’s gift fields
In the order details, ShipStation has a This is a Gift option and a gift message field (the help centre calls it the Gift Note in some places and the gift message in others). You can tick the option and type a message yourself, and the Orders grid has a Gift column you can turn on.
Both are editable, with one caution ShipStation spells out: notes imported from your store take priority, and Notes from Buyer, Notes to Buyer and gift notes can be overwritten by a store refresh. Typing a message in by hand is fine for the odd order. It is not a process.
Printing it on the packing slip
Packing slip templates read these fields through field replacements, and there is one for each place the message might be:
[Gift Message]prints the gift message field from the order details.[Notes from Buyer]prints the whole of Notes from Buyer.[Custom Field #1],#2and#3print the custom fields.
If your account uses the newer Liquid packing slip editor, the gift message is also available as {{ gift_message }}, and you can wrap it in {% if gift_message != blank %} so the line only appears when there is a message.
ShipStation’s own advice for gift orders goes further than the field. It recommends a separate packing slip template with no item prices or order totals, with [Gift Message] on it, applied to gift orders by an automation rule that uses the gift field as its criterion. Removing prices from a template is a matter of deleting the price lines.
Which token to use follows from where the message landed:
If you mapped a note attribute to a custom field, put [Custom Field #1] (or whichever you mapped) on the slip, labelled as the gift message. That is the whole job, done with ShipStation’s own settings. It does not tick This is a Gift, though, so a Gift Order rule still won’t pick these orders up — step 3 below covers that.
If the message is in Notes from Buyer, [Notes from Buyer] will print it — along with everything else in the note. If your customers only ever use that box for gift messages, that is fine. If it also carries delivery instructions or a PO number, they go into the box with the gift.
What automation rules can and can’t do here
Rules can read all of these fields. Notes from Buyer is a criterion that can equal, contain, start with or end with a value you type, the custom fields work the same way, and Gift Order checks whether the This is a Gift option is ticked. So a rule can find orders whose note contains “Gift message:” and tag them or send them to a gift template.
What rules can’t do is move part of a field somewhere else. There is no action that ticks the gift option or sets the gift message, and Set Custom Field writes text you typed into the rule rather than text it read off the order. One consequence is worth knowing before you build: a rule using Gift Order as its criterion will not fire on Shopify orders unless someone has ticked the box by hand, because nothing in the import ticks it.
None of this is ShipStation being deficient. A rules engine compares whole fields against values you chose in advance — that is the shape of the thing, and it is why rules are predictable. Lifting one line out of a block of free text is a different kind of operation.
Moving the message into its own field
When the message is inside Notes from Buyer and the note carries other things too, the remaining step is to pull the gift message out and put it in a field of its own.
That is what the free Gift message mapping tool does. It pulls a value out of the block of text your channel sent and writes it into the field you nominate — the gift message field, so [Gift Message] prints it on its own line. You pick a preset for your channel rather than writing a pattern, and load any recent order to see exactly what it would extract before it writes anything. Gift messages are the usual reason, but anything consistently formatted in that note can be mapped the same way.
It can also tick This is a Gift whenever it finds a message — an option you switch on per mapping. With the box ticked, the Gift Order criterion works on Shopify orders too, so the gift packing slip template ShipStation recommends can be applied by a rule, the same way it is for channels that send the flag.
What to check
- Find one recent gift order and see where the message sits in Shopify: the order note, or a separate field.
- Find the same order in ShipStation and see where it arrived: Notes from Buyer, or nowhere.
- If it is a note attribute, map it to a custom field in the store’s settings and print that custom field. This is a Gift stays unticked, and ShipStation’s custom field criteria test whether the field equals, contains, starts with or ends with a value, or is blank — there is no documented test for “has any value” — so sending these orders to a gift template means setting the gift flag another way: by hand, or with Gift message mapping if your store also puts the message in Notes from Buyer.
- If it is in Notes from Buyer and the note only ever holds gift messages, print
[Notes from Buyer]on a gift template. - If it is in Notes from Buyer alongside other things, move it into its own field first, then print
[Gift Message]. Gift message mapping does the move and, where you switch it on, marks the order as a gift, so a Gift Order rule sends it to your gift template.
Free for ShipStation users
Is the gift message stuck in the order note?
Gift message mapping moves it out of Notes from Buyer into its own field and can mark the order as a gift. It shows you what it would extract from a recent order first.
Free. About five minutes to set up. Nothing changes until you turn it on.