メインコンテンツまでスキップ
ストア運営・コンテンツ

Shopifyにギフトラッピング・熨斗の標準機能はない|cart attributesを使うとShop Payが消え、line item propertyは注文CSVに出ない

Shopifyのヘルプセンターにあった「ギフトラップのオプションを追加する」記事は、現在すべてリダイレクトされて消えています。標準UIとして残っているのは注文メモだけです。テーマ改修で自作する場合、cart attributesは注文CSVに出ますがShop Payなどの高速チェックアウトボタンが使えなくなり、line item propertiesは商品ごとに持てますが注文CSVに列が存在しません。どちらかを捨てる選択になります。さらに熨斗を明記しているアプリはGift wrap and messagesカテゴリ53本のうち5本だけで、全て日本製です。2026年9月1日時点の公式ドキュメントとApp Storeで確認しました。

AIECアプリ研究所 AI編集部公開日 更新日 読了 20#Shopifyブログ運営#アプリ比較#初心者向け

この記事でわかること

この記事の目次Contents閉じる開く

「Shopifyでギフトラッピングを設定する方法」を検索すると、テーマにチェックボックスを足す手順を解説した記事がいくつも出てきます。しかしその多くが参照しているShopifyヘルプセンターの「Add a gift wrap option」記事は、現在3つのURLすべてがリダイレクトされて消滅しています。テーマの「よくあるカスタマイズ」一覧15項目にも、ギフトラップの項目は残っていません。

標準UIとして存在するのは注文メモ(cart note)だけです。それ以外は、テーマ改修かアプリになります。

そしてテーマ改修で自作しようとすると、最初の分岐で選択を迫られます。ギフト情報を cart attributes(カート単位)で持つか、line item properties(商品行単位)で持つか。前者は注文CSVに出力されますが Shop Pay などの高速チェックアウトボタンが使えなくなります。後者は商品ごとに熨斗を変えられますが、注文CSVに該当する列が存在しません。

この記事では、公式ドキュメントに書かれている制約を一つずつ確認しながら、自作が壊れる場所を特定します。そのうえで、熨斗(のし)という日本固有の要件をどこまでアプリで扱えるのかを整理します。調査日は2026年9月1日、料金はすべてUSD表記です。

先に結論

ギフトメッセージだけあればよく、ラッピング料金は取らないなら、アプリは不要です。テーマエディタでカートの注文メモ欄を有効化するだけで足ります。全無料テーマで可能で、注文CSVの Notes 列にも出力されます。

ラッピングの有無を選ばせたいだけで、ラッピングは無料、Shop Pay などの高速チェックアウトボタンを使っていないなら、cart attributes での自作で足ります。

ラッピング料金を課金したい、あるいは商品ごとに熨斗を変えたいなら、自作の破綻点が急に増えます。アプリが有力です。

熨斗が必要なら、実質的に日本製アプリ一択です。Gift wrap and messages カテゴリの53アプリのうち、熨斗対応を明記しているのは5本で、すべて日本製でした。海外の主要6本(Wrapin / Gift Wrap Plus / Giftship / Super / Wrapped / PAL)は、熨斗に一言も触れていません。

月に数件のギフト注文を電話・メールで受けているなら、下書き注文のカスタムアイテムが最もクリーンです。ただし自動出荷アプリと併用できません。

標準機能でできること

まず、追加コストゼロでできることを確認します。

**注文メモ(cart note)**は、テーマエディタの Cart → Sections → Subtotal で「Enable cart note」にチェックを入れるだけで、カートページに自由入力欄が出ます。全無料テーマで可能です。入力内容は管理画面の注文詳細「Notes」セクションに表示され、注文CSVの Notes 列にも出力されます。ギフトメッセージの受け皿としては、これが最も低コストです。

**cart attributes(cart.attributes)**は、カート全体に「キー:値」の文字列ペアを持たせる仕組みです。<input name="attributes[Gift wrap]"> を置くか、/cart/update.jsattributes をPOSTします。Shopify公式のAjax Cart APIリファレンス自体が、カート属性の例として attributes: {"Gift wrap": "Yes"} を掲載しています。注文CSVの Note Attributes 列に出力されます。

**line item properties(properties[...])**は、商品行ごとに文字列ペアを持たせる仕組みです。商品フォームに <input name="properties[熨斗表書き]"> を置くか、/cart/add.jsproperties で渡します。商品Aは内のし、商品Bは外のし、といった持ち方ができます。

下書き注文のカスタムアイテムは、名前・価格・数量に加えて「課税するか」「物理商品か」を**行単位で選べます。**カスタム送料やライン単位の割引も設定できます。

なお、プロパティ名の先頭に _(属性名なら __)を付けると、「チェックアウトでは非表示、管理画面の注文詳細では表示」という扱いになります。内部管理用のフラグを持たせたいときに使えます。

自作で壊れる5か所

ここからが本題です。公式ドキュメントに明記されている制約を、実装で踏みやすい順に挙げます。

1. cart attributes を使うと Shop Pay が消える

Shopify公式ドキュメントに、こう書かれています。

Accelerated checkout buttons don't support cart attributes.

高速チェックアウトボタン、つまり Shop Pay・Apple Pay・Google Pay などが cart attributes に対応していません。カートページに「ギフトラッピングを希望する」というチェックボックスを cart attributes で実装した時点で、その下に並んでいた高速チェックアウトボタンが機能しなくなります。

Checkout UI Extensions の applyAttributeChange についても、「buyer is using an accelerated checkout method, such as Apple Pay or Google Pay」の場合はエラーを返すと明記されています。

2. line item properties は注文CSVに存在しない

商品ごとに熨斗の表書きを変えたいなら、line item properties が必然です。しかしその瞬間、出荷側で問題が起きます。

注文CSVのLineitem系の列は、quantity / name / price / compare-at price / SKU / requires shipping / taxable / fulfillment status / discount の9列です。Lineitem properties に相当する列は存在しません。

つまり「商品ごとの熨斗情報を含んだ出荷リストをCSVで出す」ことが、標準機能ではできません。管理画面の注文詳細で1件ずつ確認するか、外部の出荷システムとAPI連携するか、どちらかになります。

cart attributes(CSVに出るがShop Payが消える)と line item properties(商品ごとに持てるがCSVに出ない)のどちらを取るか、というのが自作における最初の、そして最大の分岐です。

3. properties は部分更新できない

公式リファレンスにこうあります。

Whenever a POST request includes properties, it overwrites the entire properties object.

/cart/change.jsproperties を渡すと、**properties オブジェクト全体が上書きされます。**既存のキーは消えます。「ラッピングの種類だけ後から変更する」といった実装をすると、先に入れていた熨斗の表書きが消えます。

さらに、一度セットした properties を空にすることもできません。公式には「If you need to remove all line item properties, then you need to remove the entire line item.」とあり、行ごと削除するしかありません。

4. line item key は properties が変わるたびに変わる

The line item key is not persistent for the lifetime of a line item, it changes as characteristics of the line item change. This includes, but is not limited to, properties and discount applications.

カートの数量更新をline item keyで行っているJavaScriptは、propertiesを変更した瞬間に対象を見失います。ギフトオプションを変更したら数量が変えられなくなる、という不具合の典型的な原因です。

5. /cart/clear.js はカート属性とノートを消さない

This does not remove cart attributes or the cart note.

「カートを空にする」ボタンでカート属性が残ります。前回選んだギフトラッピングの指定が次の買い物に持ち越される、という事故につながります。

もう1点、/cart/update.js は**すでにカートに入っているバリアントの数量を在庫と照合しません。**在庫を超える数量が入り得ます。

ラッピング料金を課金しようとすると、さらに増える

cart attributes も line item properties も、key: String / value: String の文字列ペアです。金額を持たせて課金する仕組みは仕様上ありません。

したがって自作でラッピング料金を取るなら、「ラッピング料金という名前の商品をカートに追加する」しかありません。この方法自体は動きますが、副作用が3つあります。

送料。重量ベースの送料設定を使っている場合、追加した商品の重量に加えて、店舗のデフォルト梱包重量が商品ごとに加算されます。重量の階層上限を超えると、**チェックアウトで送料エラーになり注文が完了できません。**回避するには、ラッピング商品の「Physical product」をオフにします。オフにすると重量欄と関税情報欄そのものが表示されなくなります。

割引。「全商品対象」の割引コードは、カート内の全アイテムに按分で適用されます。ラッピング料金にも割引が乗ります。回避するには、割引の対象を Specific products / Specific collections に限定します。

在庫。ラッピング商品の在庫追跡はオフにしておかないと、売り切れ扱いで購入できなくなります。

なお、Shopifyは2025年8月6日に nested cart lines(親子カートライン)を追加しており、changelogの原文が用途として gift-wrapping を明記しています。ラッピング行を親商品に紐付ける公式の土台ができた形ですが、これは基盤であってギフトラッピング機能そのものではありません。実装するのはテーマかアプリ側です。

また、Cart Transform API による価格の上書き(lineUpdate / update)は開発ストアまたはShopify Plus限定です。「アプリを作ってカート内で価格を書き換える」という方法は、非Plusのカスタムアプリでは選べません。

下書き注文は、実はいちばんきれい

月に数件のギフト注文を個別対応で受けているなら、下書き注文のカスタムアイテムが最も筋が良い方法です。名前・価格・数量に加えて「Item is taxable」「Item is a physical product」を行単位で指定できるため、前述の送料と税の問題をその場で回避できます。

ただし制約が3つあります。

Shopify自身が「Whenever possible, create products in your admin instead of using custom items.」と警告しており、**「You can't use custom items with automated fulfillment or shipping apps.」**とも明記しています。自動出荷アプリ・配送アプリと併用できません。

order attributes と order notes は下書き注文と非互換です。標準の梱包明細とも非互換です。

そして2025年4月1日以降に作成された下書き注文は、1年間操作がないと自動削除されます。

オンライン販売の自動化には向きません。あくまで個別対応の手段です。

checkout.liquid のサンセット日は3段階ある

ギフトオプションをチェックアウト画面に出していたストアにとって重要なので、期日を整理しておきます。「2026年8月26日に checkout.liquid が廃止される」という単純化した説明を見かけますが、正確ではありません。

  • 2024年8月13日:Information / Shipping / Payment ページの checkout.liquid サンセット
  • 2025年8月28日:Shopify Plus ストアの Thank you / Order status ページのサンセット。同日、additional scripts は全ストアで編集不可(view-only)に
  • 2026年8月26日:非Plusストアの Thank you / Order status ページの移行期限。および非Plusでの script tags 停止

もう1つ、よくある誤解を訂正しておきます。Checkout UI extensions は Shopify Plus 限定ではありません。 Thank you / Order status ページ向けの UI extensions と、公開アプリの Shopify Functions は Basic 以上で使えます。Plus限定なのは Information / Shipping / Payment ページ向けの UI extensions と、カスタムアプリの Shopify Functions です。自社カスタムアプリでラッピングを作り込むならPlusが要る、という整理になります。

なお、Shopify公式の Checkout Blocks にある Gift message テンプレートについては、「Creating a custom field block is available only to merchants on the Shopify Plus plan.」と明記されています。

熨斗を扱えるアプリは、53本中5本しかない

Gift wrap and messages カテゴリには53アプリが掲載されています(2026年9月1日時点)。このうち熨斗(のし)への対応を明記しているのは5本だけで、すべて日本製でした。

海外の主要6本 ── Wrapin ‑ Gift Wrap & Options、Gift Wrap Plus、Giftship、Super、Wrapped、PAL ── は、熨斗に一切言及していません。表書き・水引き・内のし/外のし・名入れという構造を持たない以上、これは当然の結果です。ラッピングとメッセージカードだけなら海外アプリで足りますが、熨斗は別要件です。

アプリ開発元評価(件数)熨斗日本語UI最低料金課金の分母
All in giftHuckleberry(JP)4.9(129)あり日本語のみ$9.90/月機能グレード(+eギフト3%)
cocoron ギフトcocoronApps(JP)5.0(1)あり(表書き32種・内外のし・名入れ)日本語のみ$8.99/月定額
Gift Options PlusDryworks(JP)4.3〜4.4(7〜8)あり日本語・英語$3.99/月ウィジェット数
ギフトラッピング&のし専用アプリ電通デジタル(JP)5.0(1、2021年)あり日本語のみ$9.80/月定額
シンプルのし(熨斗)アプリUnReact(JP)0(0件)あり日本語のみ$6.99/月定額
PAL ‑ Gift Wrap, Gift NoteShree Balajee Tech(IN)4.8〜4.9(43〜46)なしあり$0(月5件)→$5月間ギフト注文数
Wrapped: Gift Wrap & MessagesAlacart Apps(CA)4.9(126)なしあり$19/月月間ギフト売上高
Gift Wrap PlusNulls.Net(LV)4.9(64)なしなし$0(月5件)→$3.99月間ギフト注文数
Wrapin ‑ Gift Wrap & OptionsPrezen Apps(US)4.9(355)なしなし$3.99/月機能グレード
Super: Gift Wrap, Gift MessageEffective Apps(IL)4.7(249)なしあり$9.99/月機能グレード
GiftshipGist(CA)4.8(245)なしなし$59.99/月月間注文数(超過$0.10/件)

**全アプリがUSD建てでした。**日本製アプリを含め、円建て課金のアプリは1本も確認できませんでした。

「無料プランあり」の実態が3種類ある

この表で最も注意が必要なのが無料プランの表記です。実態は3つに分かれます。

  • 本番ストアで月5ギフト注文まで無料:PAL、Gift Wrap Plus
  • テストストア・トライアルストア専用:Wrapin
  • 開発ストア・パートナーストア専用:Super、UnReactの2本

後ろ2つは、本番ストアでは1件も無料で使えません。App Storeの「Free plan available」表記だけを見て選ぶと、導入時に前提が崩れます。

課金の分母も4種類ある

月間ギフト注文数(PAL、Gift Wrap Plus)、月間ギフト売上高(Wrapped)、月間注文数(Giftship)、ウィジェット数(Gift Options Plus)、そして機能グレードによる定額(Wrapin、Super、All in gift、日本製の定額型)。

Gift Options Plus の「ウィジェット数課金」は今回の調査で唯一でした。$3.99で1ウィジェット、$7.99で最大5、$9.99で最大10。注文数が増えても料金が上がらない構造なので、ギフト注文が多く、必要なウィジェットが少ないストアではコスト効率が良くなります。

Wrapped の「月間ギフト売上高」課金は逆で、ギフト比率が高いストアほど上位ティアへ跳ねます($10kまで$19、$50kまで$49、$100kまで$99、それ以上$149)。ただし「月間ギフト売上」の算定方法が自己申告なのかアプリ計測なのかは、公開情報では確認できませんでした。

ラッピング料金の実装方式は、ほぼどこにも書かれていない

比較表に載せられなかった軸が1つあります。ラッピング料金を line item property で持つのか、cart attribute か、ダミー商品か、Cart Transform か。App Storeのページに明記しているアプリは1本もありませんでした。

唯一の例外が電通デジタルの「ギフトラッピング&のし専用アプリ」で、公式ページに「ラッピングは、商品として登録することで画像の変更や、複数のラッピングを設定できます」と書かれています。つまりアプリを使ってもダミー商品方式であり、前述した送料・割引の副作用は同じように起きます。

間接的な手がかりとして、Shopify Functions の Cart transforms スコープを要求しているかどうかは確認できます。Giftship、Wrapped、PAL、cocoron ギフト、Gift Options Plus は要求しています。ただしこれは推定の材料であって、実装方式の証明にはなりません。

ケース別の選び方

アプリ不要(ギフトメッセージのみ):注文メモを有効化。無料、全無料テーマ対応、CSVの Notes 列に出力されます。

アプリ不要(ラッピング有無のみ・無料ラッピング):cart attributes での自作。ただし高速チェックアウトボタンは使えなくなります。

熨斗を正確に扱いたい:cocoron ギフト($8.99/月)。用途 → 表書き → 内のし/外のし → 名入れという要件分解が最も明確で、表書き32種と水引き画像を標準搭載しています。ただし2026年3月公開・レビュー1件と実績が極めて浅い点は必ず踏まえてください。

熨斗+ラッピング+eギフト+複数配送を1本で:All in gift($9.90/月〜、PRO $49/月、eギフトは取引額の3%が別途)。日本製カテゴリで最大のレビュー規模(4.9/129件)で、ロジレス・オープンロジ・ネクストエンジン・シッピーノといった国内3PL / OMSとの連携を明記している唯一のアプリです。line item properties がCSVに出ない問題を、出荷側の連携で回避できる可能性があります。ただし機能が多く、学習コストへの言及がレビューに複数見られます。

熨斗+チェックアウト表示+日英併用、コストを抑えたい:Gift Options Plus($3.99/月〜)。熨斗・チェックアウト対応・日英両対応を同時に満たす唯一のアプリです。カートで「別行として表示」と「親商品に統合して1行にまとめる」を切り替えられる点も特徴です。ただし**評価4.3〜4.4で1つ星が25%**と、今回の調査で最も評価が低く、テーマ互換性の不具合報告もあります。

熨斗は不要、まず無料で試したい:PAL ‑ Gift Wrap, Gift Note。月5ギフト注文まで無料で、その範囲でも商品単位のラッピング制御・注文タグ付け・画像プレビューが使えます。Built for Shopify、日本語UIあり、$5で月50件、$9.99で無制限。**チェックアウト表示にPlus限定の注記がありません。**ただし2025年4月公開でレビュー43〜46件と実績は浅めです。

熨斗は不要、注文単位と商品単位を使い分けたい:Wrapped: Gift Wrap & Messages($19/月〜)。注文全体へのギフトオプションと商品ごとのギフトオプションを両方明記している唯一のアプリで、この記事のテーマである「cart attributes と line item properties のどちらで持つか」に正面から対応しています。日本語UIあり、Plus限定の注記なし。

法人ギフト・1注文を複数住所へ・英語圏:Giftship($59.99/月〜)。ただしチェックアウトオプションはPlus前提です。国内なら All in gift PRO($49/月)のマルチシップが対抗馬になります。

住所を知らない相手に贈りたい(eギフト):これは別カテゴリです。ラッピングアプリでは解決しません。Shopify標準のギフトカードは受取人メールアドレス欄までテーマカスタマイズで対応できますが、現物商品を住所不明のまま贈ることは標準機能では不可能です。All in gift のeギフト機能(受取URL発行・住所匿名化)が該当します。

導入前チェックリスト

  • ギフトメッセージだけで足りるなら、注文メモで済まないか確認したか
  • ギフト情報を cart attributes(CSVに出るがShop Payが消える)と line item properties(商品ごとに持てるがCSVに出ない)のどちらで持つか決めたか
  • 出荷担当がギフト情報をどう受け取るか(CSVか、管理画面か、外部システム連携か)を決めたか
  • ラッピング料金を課金するなら、ダミー商品の送料・割引・在庫の3つの副作用に対処したか
  • 高速チェックアウトボタン(Shop Pay / Apple Pay / Google Pay)を使っているか確認したか
  • 熨斗が必要なら、内のし/外のし・表書き・名入れのどこまでを要件にするか定義したか
  • 「無料プランあり」が本番ストアで使えるものか、開発ストア専用か確認したか
  • 課金の分母(ギフト注文数/ギフト売上高/注文数/ウィジェット数/定額)を確認したか
  • チェックアウト画面に出したい場合、自店のプランで可能か確認したか
  • アンインストール時にテーマへ追加されたコードが残るか確認したか(今回、12本すべてApp Storeページに記載がありませんでした)

まとめ

判断基準を4つに絞ります。

  1. **標準UIは注文メモだけです。**ギフトメッセージ1つで足りるなら、そこで終わりにできます。無料で、CSVにも出ます。
  2. **自作の分岐は「CSVを取るか、Shop Payを取るか」です。**cart attributes と line item properties は用途が違うのではなく、捨てるものが違います。ここを先に決めないと、実装の途中で作り直しになります。
  3. **ラッピング料金を課金した瞬間、送料・割引・在庫の3か所に手当てが必要になります。**アプリを入れても、ダミー商品方式なら副作用は同じです。
  4. **熨斗が要件に入るなら、選択肢は日本製の5本に絞られます。**そして5本のうち3本はレビューが0〜1件です。実績と機能のどちらを優先するかを、先に決めてください。

次にやることは、自店の直近のギフト注文を10件ほど見直し、「1注文に1つのメッセージで足りているか」「商品ごとに熨斗を変える必要が実際にあったか」を数えることです。この2つの答えが出れば、注文メモで足りるのか、cart attributes なのか、line item properties が必要なのかが決まります。

料金・評価・カテゴリの掲載数はいずれも変動します。この記事の数値は2026年9月1日時点で、Shopify公式ドキュメント、Shopify App Store、各開発元の公式ページを直接確認したものです。導入前に最新の表示をご確認ください。

RelatedShopifyは住所を無料で検証している。そして「アプリと併用するな」と書いている

Shopifyの管理画面側の住所検証は、全プランで常時有効、無料で、米国に対応している。チェックアウト時の検証もトグル1つで有効にできる。そのうえで公式ドキュメントは、サードパーティの住所検証アプリを同時に使うと提案が競合してチェックアウトのコンバージョンを下げうるため、どちらか一方にせよと明記している。ここでカテゴリの見え方が変わる。アプリは配送可能性の判定を二重化するためのものではなく、Shopifyの検証がやらない「私書箱の拒否」「部屋番号の必須化」といったポリシー強制のためのものだ。2026-09-02時点で米国App Storeの実在アプリ4本を確認した。月額4.99ドルの定額、1注文あたり0.04ドル、そしてShopifyの請求とは別に契約が必要なものまで幅がある。