> ## Documentation Index
> Fetch the complete documentation index at: https://docs.scanova.io/llms.txt
> Use this file to discover all available pages before exploring further.

# GS1 QR Code

> 创建一个符合 GS1 标准的 QR 码，用于零售和供应链场景。

## 适用场景

GS1 QR 码编码的是一个 [GS1 Digital Link](https://ref.gs1.org/standards/digital-link/)——一个由 GS1 应用标识符（Application Identifiers, AI）构建而成的 URI，用于标识产品、位置、货运或其他供应链对象。在应用中，该类别被描述为 "GS1 Application Identifier codes for products, locations & logistics."（用于产品、位置和物流的 GS1 应用标识符代码）。

与本页其他 Quick Code 类型不同，GS1 不是一个单屏表单：它是 `/qr/quick/gs1` 处一个专门的 5 步向导，与通用的 Quick Code 外壳相互独立，因为 GS1 代码的数据是结构化的（一个主标识符，加上可选的限定符、额外属性和解析目标），而不是几个扁平字段。

<Note>
  GS1 是唯一一个既可以是 **Dynamic**、也可以是 **Static** 的 Quick Code 类别——具体取决于您在第 1 步中选择的解析器，而不是一个单独的类型开关。参见下方的 **Step 1: Resolver**。
</Note>

## 5 个步骤

向导的步骤指示器展示了 **Resolver → Identify → Data Attributes → Resolution → Review**。只有当您在第 1 步选择了由 Scanova 托管的解析器（**Scanova Resolver** 或 **Your Custom Domain**）时，才会出现 **Resolution** 步骤——如果您选择 **GS1 Global Resolver** 或 **Custom Resolver**，第 4 步会被完全跳过，因为对于一个 Scanova 不负责解析的代码，Scanova 没有目的地需要配置。

### 1. Resolver——谁来解析此代码？

这决定了最终的数字链接中会出现哪个域名，以及生成的 QR 码是 Dynamic 还是 Static：

| 选项                  | 域名           | QR 类型   | 说明                           |
| :------------------ | :----------- | :------ | :--------------------------- |
| Scanova Resolver    | `scnv.io`    | Dynamic | 默认选项。由 Scanova 托管——开箱即用。     |
| Your Custom Domain  | 您已验证的自定义域名之一 | Dynamic | 需要自定义域名套餐配额；否则会被锁定（并显示升级提示）。 |
| GS1 Global Resolver | `id.gs1.org` | Static  | 由 GS1 自身的基础设施解析，而非 Scanova。  |
| Custom Resolver     | 您自行输入的解析器域名  | Static  | 由您自己控制解析器；Scanova 仅存储标识符数据。  |

<Frame caption="第 1 步：Resolver，默认选中 Scanova Resolver">
  <img src="https://mintcdn.com/scanova-api/q8t3kzcRTgAP7jV0/images/v2/qr-codes/create/gs1/gs1-step1-resolver.png?fit=max&auto=format&n=q8t3kzcRTgAP7jV0&q=85&s=e5ede2d1db0f5289ad5c633b423b39e4" alt="GS1 向导第 1 步，Resolver，展示四个解析器选项，默认选中 Scanova Resolver" width="1280" height="720" data-path="images/v2/qr-codes/create/gs1/gs1-step1-resolver.png" />
</Frame>

### 2. Identify——此代码标识什么？

选择与您要标注的对象相匹配的 **Application Identifier**（例如默认值 `(01) Global Trade Item Number (GTIN)`），然后输入其 **Value**。该值字段会实时校验该 AI 真实的 GS1 规则——所需长度、纯数字还是字母数字格式，以及针对 AI `00` 和 `01` 的有效 GS1 校验位。

每个应用标识符还可以展示 **Qualifiers**（限定符）——对于 GTIN，这些是 Serial Number（AI 21）、Consumer Product Variant（AI 22）和 Batch or Lot Number（AI 10），均为可选项。Serial Number 旁边有一个 "Need more than one? Bulk generate" 链接，指向 [批量操作](/zh/qr-codes/manage/folders-tags-bulk-operations)，用于一次性生成一系列序列化代码。

### 3. Data Attributes

一个可选步骤，用于为同一代码附加额外的、以 GS1 AI 为键的值——日期、度量值等类似信息。大多数 GS1 代码不需要这一步；该步骤默认以折叠状态开始，只显示一个 "Add data attributes" 开关，而不是空字段。

### 4. Resolution（仅限 Scanova 托管的解析器）

配置该代码被扫描时实际解析到的目标。**Product Page** 条目始终存在，且实际上是必填的——它是一次纯粹扫描所到达的目的地。您还可以添加其他链接类型（**Datasheet**、**Video**、**Custom**），供支持 GS1 的应用单独发现。

对于每个条目，您可以选择：

* **Simple URL** —— 一个纯粹的目标网址，或者
* **Existing QR** —— 引用您其他的、非 GS1 的动态 QR 码之一（一个 Website URL、一个 Page Builder QR、一个 Document，或一个 App Store QR，取决于您选择的意图）。

Product Page 条目还提供 **Auto-build a page**（自动构建页面）——这会根据您已经输入的 AI 值创建一个真实的落地页 QR 码（在预览对话框中选择一个主题之后），然后将其作为该条目的 "Existing QR" 引用接入，因此它仍然是一个普通的 Page Builder QR 码，之后您可以继续编辑。

<Frame caption="第 4 步：Resolution，配置必填的 Product Page 目标">
  <img src="https://mintcdn.com/scanova-api/q8t3kzcRTgAP7jV0/images/v2/qr-codes/create/gs1/gs1-step4-resolution.png?fit=max&auto=format&n=q8t3kzcRTgAP7jV0&q=85&s=bb7025263a719c8db5e5237ad4c5a72f" alt="GS1 向导第 4 步，Resolution，展示必填的 Product Page 条目已设为 Simple URL 并带有目标字段，以及一个添加更多链接类型的选项" width="1280" height="744" data-path="images/v2/qr-codes/create/gs1/gs1-step4-resolution.png" />
</Frame>

<Note>
  GS1 代码永远不能将另一个 GS1 代码作为解析目标——这个选项会被完全从选择器中过滤掉，而不仅仅是被建议不要使用。
</Note>

### 5. Review——查看并发布

展示组装完成的 **Digital link preview**（数字链接预览）（例如 `https://scnv.io/LpqE/01/04012345678901`），以及一段用通俗语言概括该代码标识什么、由谁解析、扫描后会到达哪里的摘要。您也可以在此处重命名 QR 码，然后再发布。

<Frame caption="第 5 步：Review and publish，展示组装完成的数字链接和通俗语言摘要">
  <img src="https://mintcdn.com/scanova-api/q8t3kzcRTgAP7jV0/images/v2/qr-codes/create/gs1/gs1-step5-review.png?fit=max&auto=format&n=q8t3kzcRTgAP7jV0&q=85&s=d9b316051d08951102bd4af11a08a16f" alt="GS1 向导第 5 步，Review and publish，展示组装完成的数字链接、通俗语言摘要，以及 Publish 按钮" width="1280" height="776" data-path="images/v2/qr-codes/create/gs1/gs1-step5-review.png" />
</Frame>

## 创建一个 GS1 QR 码

<Steps>
  <Step title="打开 Create QR Code 并选择 Quick Code">
    在侧边栏中，进入 **QR Codes**，然后点击 **Create QR Code**（或前往 `/qr/create`）。点击 **Quick Code** 卡片。
  </Step>

  <Step title="选择 GS1">
    在 **Quick Code** 类型网格中，点击顶部 **Dynamic** 分区下 **GS1** 下方的 **Configure**。这会打开 `/qr/quick/gs1` 处的向导。
  </Step>

  <Step title="选择解析器">
    在 **Resolver** 步骤中，选择由谁来解析该代码。**Scanova Resolver** 默认被选中，无需进一步设置——点击 **Continue**。
  </Step>

  <Step title="标识此代码所代表的内容">
    在 **Identify** 步骤中，选择一个应用标识符并输入其值（例如一个 14 位的 GTIN）。根据需要添加限定符，然后点击 **Continue**。
  </Step>

  <Step title="添加数据属性（可选）">
    除非您需要附加额外的 GS1 属性，否则可以跳过此步骤，然后点击 **Continue**。
  </Step>

  <Step title="配置解析">
    如果您选择了由 Scanova 托管的解析器，请至少设置一个 **Product Page** 目标——可以是 Simple URL、一个已有的 QR 码，或一个自动构建的页面——然后点击 **Continue**。
  </Step>

  <Step title="审核并发布">
    检查组装完成的数字链接和摘要，如有需要可调整 QR 码的名称，然后点击 **Publish**。会弹出一个面板，用于确认 QR 码的文件夹和标签，并调整 QR 码设计，然后再确认。
  </Step>
</Steps>

## 通过 API 创建

若要通过 API 而非界面创建 GS1 QR 码，请使用类别 ID `31`（在 [Create QR Code](/v1/api-reference/endpoint/qr_manager/create) 的 **Category dropdown reference** 表中标记为 **GS1**，`allowed_qr_types: "bt"`——`"dy"` 和 `"st"` 对 `qr_type` 均有效，取决于您选择的解析器）。`info` 负载是一个**裸数组**，由带类型的区块组成，每个有数据的向导步骤对应一个区块：

```json theme={null}
[
  {
    "type": "resolver",
    "data": { "name": "scanova_resolver", "domain": "scnv.io" }
  },
  {
    "type": "primaryKey",
    "data": { "id": "01", "value": "04012345678901" }
  },
  {
    "type": "qualifier",
    "data": [{ "id": 21, "value": "SER456" }]
  },
  {
    "type": "dataAttributes",
    "data": [{ "id": "3103", "value": "000195" }]
  },
  {
    "type": "resolution",
    "data": {
      "linkType": "pip",
      "name": "simple_url",
      "target": { "url": "https://acme.com/products/widget-42" }
    }
  }
]
```

`qualifier`、`dataAttributes` 和 `resolution` 区块都是可选且可重复的（每配置一个链接类型对应一个 `resolution` 区块）；`resolver` 和 `primaryKey` 则是必填的。`resolution` 区块的 `target` 要么是 `{ "url": "..." }`（当 `name` 为 `"simple_url"` 时），要么是 `{ "qrid": "..." }`（当 `name` 为 `"qr_reference"` 时）——对于 `gs1`/`custom_resolver` 解析器，`resolution` 区块会被完全省略，因为它们没有由 Scanova 托管的目的地需要存储。

完整的请求结构请参见 [Create QR Code](/v1/api-reference/endpoint/qr_manager/create)。

## 相关内容

* [Product QR Code](/zh/qr-codes/create/product) —— 一个产品的营销落地页，相较之下 GS1 是结构化的供应链标识符。
* [文件夹、标签与批量操作](/zh/qr-codes/manage/folders-tags-bulk-operations) —— 批量生成一系列序列化的 GS1 代码，并在发布后整理代码。
* [Quick Code 与完整 Page 的对比](/zh/qr-codes/create/quick-code-vs-page) —— GS1 与其他 Quick Code 类型相比处于什么位置。
