# Order Automation

> 订单自动化助手 - 自动路由、批量处理、优先级规则、发票生成、物流标签

- Skill: `huifer/order-automation` (Agent Skill)
- Install (CLI): `npx skillmds@latest add huifer/order-automation`
- Raw SKILL.md: https://api.skillmd.com/api/skills/huifer/order-automation/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: huifer (https://skillmd.com/u/huifer)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/huifer/order-automation

---


# Order Automation 🚚

> 智能订单自动化系统，从订单路由到发货标签，全流程自动化处理，提升运营效率

自动化处理订单流程，智能分配仓库和承运商，批量处理订单，自动生成发票和物流标签，减少人工操作，降低错误率，加快发货速度。

---

## 🎯 核心功能

### 1. 订单自动路由

#### 路由规则引擎

```yaml
基于仓库路由:
  原则: 就近发货
  算法: 距离 + 库存 + 成本

  规则示例:
    IF 客户地址 == "上海" AND 华东仓库存 > 订单数量
    THEN 分配到华东仓

    IF 客户地址 == "北京" AND 华北仓库存 > 订单数量
    THEN 分配到华北仓

    IF 首选仓库存不足
    THEN 检查次选仓库存
    ELSE 分拆订单到多仓库

基于承运商路由:
  原则: 成本 + 速度 + 可靠性

  规则示例:
    IF 订单重量 < 1kg AND 地址在一线城市
    THEN 使用快递A (快速且经济)

    IF 订单重量 > 5kg OR 地址在偏远地区
    THEN 使用物流B (成本优势)

    IF 客户选择"极速达"
    THEN 使用快递C (最快)

    IF 订单金额 > ¥1000
    THEN 使用保价物流D

基于产品类型路由:
  原则: 产品特性 + 运输要求

  规则示例:
    IF 产品类型 == "易碎品"
    THEN 使用专业包装 + 特殊物流

    IF 产品类型 == "冷链"
    THEN 使用冷链物流E

    IF 产品类型 == "大件家具"
    THEN 使用专线物流F
```

#### 路由配置示例

```markdown
## 订单路由配置

### 多仓库配置

**仓库设置**:

| 仓库 | 代码 | 覆盖区域 | 优先级 | 处理能力 |
|------|------|---------|--------|---------|
| 华东仓 | WH-CN01 | 上海、江苏、浙江、安徽 | 1 | 2000单/日 |
| 华北仓 | WH-CN02 | 北京、天津、河北、山西 | 1 | 1500单/日 |
| 华南仓 | WH-CN03 | 广东、福建、广西、海南 | 1 | 1500单/日 |
| 西部仓 | WH-CN04 | 四川、重庆、云南、贵州 | 2 | 800单/日 |

**路由逻辑**:

```
订单进入
  ↓
解析客户地址
  ↓
匹配覆盖区域
  ↓
检查首选仓库存
  ├─ 库存充足 → 分配到首选仓 ✓
  └─ 库存不足
      ├─ 检查次选仓库存
      │   ├─ 有库存 → 分配到次选仓 ✓
      │   └─ 无库存
      │       ├─ 分拆订单 (部分发货)
      │       └─ 等待补货 (统一发货)
      └─ 返回无库存提示
```

### 承运商配置

**承运商设置**:

| 承运商 | 代码 | 类型 | 时效 | 价格区间 | 适用场景 |
|--------|------|------|------|---------|---------|
| 顺丰 | SF-001 | 快递 | 1-2天 | 高 | 高价值、急件 |
| 中通 | ZTO-001 | 快递 | 2-3天 | 中 | 常规包裹 |
| 圆通 | YTO-001 | 快递 | 2-3天 | 中低 | 电商包裹 |
| 德邦 | DBL-001 | 物流 | 3-5天 | 中低 | 大件、重货 |
| EMS | EMS-001 | 邮政 | 3-7天 | 中 | 偏远地区 |

**路由规则**:

```yaml
规则1: 重量优先
  IF 重量 <= 1kg:
    选择: ZTO-001 (经济)
  IF 重量 > 1kg AND <= 5kg:
    选择: YTO-001 (平衡)
  IF 重量 > 5kg:
    选择: DBL-001 (重货优势)

规则2: 速度优先
  IF 配送方式 == "极速达":
    选择: SF-001 (最快)

规则3: 地区优先
  IF 地址 IN ["西藏", "新疆", "青海"]:
    选择: EMS-001 (覆盖全境)

规则4: 价值优先
  IF 订单金额 >= ¥1000:
    选择: SF-001 (安全可靠)
```

### 智能路由算法

**成本优化算法**:
```python
def calculate_shipping_cost(order, carrier):
    # 基础运费
    base_rate = carrier.base_rate

    # 重量费用
    weight_fee = max(0, order.weight - carrier.free_weight) * carrier.weight_rate

    # 地区附加费
    zone_fee = carrier.zone_rates.get(order.zone, 0)

    # 附加服务费
    extra_fee = 0
    if order.requires_cod:
        extra_fee += carrier.cod_fee
    if order.requires_insurance:
        extra_fee += carrier.insurance_rate * order.value

    return base_rate + weight_fee + zone_fee + extra_fee

def select_carrier(order):
    candidates = get_eligible_carriers(order)

    # 综合评分
    for carrier in candidates:
        carrier.score = (
            calculate_shipping_cost(order, carrier) * 0.4 +  # 成本权重40%
            carrier.delivery_time * 0.3 +                      # 时效权重30%
            carrier.reliability * 0.3                          # 可靠性权重30%
        )

    return min(candidates, key=lambda c: c.score)
```
```

### 2. 批量处理设置

#### 批处理配置

```yaml
批量类型:
  时间批次:
    - 每小时处理一次
    - 每天4个批次 (10AM, 2PM, 4PM, 6PM)
    - 高峰期增加批次

  数量批次:
    - 每50单一批次
    - 每30分钟强制处理
    - 优先级订单立即处理

  规则批次:
    - 按仓库分组
    - 按承运商分组
    - 按配送方式分组

处理优先级:
  紧急:
    - VIP客户
    - 预售订单
    - 急件订单

  高:
    - 付费加急
    - 高价值订单
    - 当日截单前

  正常:
    - 普通订单
    - 常规配送

  低:
    - 预售未到货
    - 缺货等待
```

#### 批处理流程

```markdown
## 批量处理工作流

### 处理时间表

**每日批次**:

| 批次 | 处理时间 | 截单时间 | 目标 | 特殊处理 |
|------|---------|---------|------|---------|
| 早班 | 08:00 | 07:30 | 昨晚订单 | VIP优先 |
| 上午 | 10:00 | 09:30 | 早晨订单 | 急件 |
| 午间 | 13:00 | 12:30 | 中午订单 | - |
| 下午 | 15:00 | 14:30 | 下午订单 | - |
| 傍晚 | 17:00 | 16:30 | 傍晚订单 | 加急 |
| 晚班 | 19:00 | 18:30 | 晚间订单 | 当日达 |
| 夜班 | 22:00 | 21:30 | 夜间订单 | 次日发 |

### 批处理步骤

**步骤1: 订单抓取**
```
START
  ↓
查询待处理订单
  ├─ 状态: 已支付 / 已确认
  ├─ 时间: 批次截止前
  └─ 排除: 缺货 / 异常 / 挂起
  ↓
按优先级排序
  ├─ VIP客户
  ├─ 预售订单
  ├─ 加急订单
  └─ 普通订单
  ↓
生成批次清单
```

**步骤2: 智能分配**
```
批次清单
  ↓
库存检查
  ├─ 有库存 → 保留订单
  └─ 无库存 → 排除/部分发货
  ↓
仓库分配
  ├─ 单仓发货 → 分配到最优仓
  └─ 多仓发货 → 拆单分配
  ↓
承运商选择
  ├─ 成本最优
  ├─ 时效最优
  └─ 综合最优
```

**步骤3: 单据生成**
```
分配结果
  ↓
生成拣货单
  ├─ 按仓库分组
  ├─ 按商品排序
  └─ 优化拣货路径
  ↓
生成物流标签
  ├─ 面单打印
  ├─ 扫描码生成
  └─ 跟踪号关联
  ↓
生成发票/装箱单
```

**步骤4: 通知发送**
```
单据完成
  ↓
仓库通知
  ├─ 拣货任务推送
  ├─ 移动端提醒
  └─ 打印机触发
  ↓
承运商通知
  ├─ 取件预约
  ├─ 面单提交
  └─ 跟踪激活
  ↓
客户通知
  ├─ 订单确认邮件
  ├─ 发货准备短信
  └─ 跟踪信息推送
```
```

### 3. 订单优先级规则

#### 优先级评分系统

```yaml
评分要素:
  客户价值 (0-30分):
    VIP客户: +30分
    高价值客户 (年消费>$5000): +20分
    中价值客户 (年消费>$1000): +10分
    新客户: +5分

  订单价值 (0-25分):
    >¥5000: +25分
    >¥2000: +20分
    >¥1000: +15分
    >¥500: +10分
    >¥200: +5分

  配送时效 (0-20分):
    当日达: +20分
    次日达: +15分
    极速达: +10分
    标准配送: +0分

  订单类型 (0-15分):
    预售首发: +15分
    礼品订单: +10分
    补货订单: +5分
    常规订单: +0分

  特殊情况 (0-10分):
    客户备注: +5分
    投诉处理: +10分
    补偿订单: +10分

优先级分级:
  紧急 (70+分):
    处理: 立即处理
    通知: 人工复核
    SLA: 2小时内发货

  高 (50-69分):
    处理: 优先批次
    通知: 加急标记
    SLA: 当日发货

  正常 (30-49分):
    处理: 正常批次
    通知: 标准流程
    SLA: 1-2日发货

  低 (<30分):
    处理: 低优先级
    通知: 常规流程
    SLA: 2-3日发货
```

#### 优先级规则配置

```markdown
## 订单优先级配置

### 规则配置界面

**规则1: VIP客户优先**

```yaml
条件:
  - customer.tier == "VIP"
  - customer.annual_spending >= 5000

操作:
  - set_priority: "HIGH"
  - add_tag: "VIP_ORDER"
  - notify: "vip_handler"
```

**规则2: 高价值订单**

```yaml
条件:
  - order.total >= 2000
  - order.payment_status == "paid"

操作:
  - set_priority: "HIGH"
  - require_verification: true
  - insurance: "full"
```

**规则3: 急件订单**

```yaml
条件:
  - order.shipping_method IN ["当日达", "次日达", "极速达"]
  - order.time_before_cutoff >= 2h

操作:
  - set_priority: "URGENT"
  - expedite_picking: true
  - priority_shipping: true
```

**规则4: 预售首发**

```yaml
条件:
  - order.contains_presale == true
  - product.presale_launch_date == today

操作:
  - set_priority: "URGENT"
  - reserve_inventory: true
  - notify_customer: true
```

**规则5: 补偿订单**

```yaml
条件:
  - order.tags CONTAINS "compensation"
  - order.tags CONTAINS "apology"

操作:
  - set_priority: "HIGH"
  - free_shipping: true
  - gift_wrap: true
  - notify: "customer_service"
```

### 动态优先级调整

**场景1: 库存紧张**
```yaml
触发: 库存 < 20件
操作: 自动升级优先级
原因: 确保库存售罄前发货
```

**场景2: 促销活动**
```yaml
触发: 订单量 > 平日3倍
操作: 临时调整优先级权重
  - 新客户权重 ↑
  - 小额订单权重 ↓
原因: 优化处理效率
```

**场景3: 节假日高峰**
```yaml
触发: 节假日期间
操作: 时效类订单优先级 ↑
原因: 确保节日送达
```
```

### 4. 自动发票生成

#### 发票配置

```yaml
发票类型:
  普通发票:
    格式: PDF
    内容: 商品明细、金额、税费
    语言: 根据客户地区
    货币: 订单货币

  增值税发票:
    格式: VAT PDF
    要求: 客户提供税号
    内容: 符合当地VAT规范
    适用: B2B订单

  电子发票:
    格式: 电子数据
    传输: 自动发送
    合规: 符合电子发票法规

  形式发票:
    格式: Proforma Invoice
    用途: 国际订单、清关
    内容: 详细申报信息

触发规则:
  自动生成:
    - 订单确认后
    - 发货前
    - 客户请求时

  不生成:
    - 礼品订单 (隐藏价格)
    - 客户选择不开票
    - 特定产品 (如虚拟商品)

发送方式:
  邮件附件:
    - 默认方式
    - PDF格式
    - 与发货通知一起

  客户下载:
    - 账户中心
    - 订单详情页
    - 永久保存

  API集成:
    - 财务系统
    - ERP系统
    - 税务系统
```

#### 发票模板

```markdown
## 自动发票生成

### 发票模板配置

**中文发票模板**:
```
--------------------------------------------------
                  销售发票
                  INVOICE

发票编号: INV-20240412-0001
订单编号: #12345
开票日期: 2024年4月12日

购货单位:
  客户名称: [客户名称]
  客户编号: [客户ID]
  联系电话: [电话]
  送货地址: [地址]

--------------------------------------------------
商品明细:

序号  商品名称        规格    数量    单价    金额
1     运动鞋         42码    2      ¥599   ¥1,198
2     运动袜         均码    5      ¥29    ¥145
--------------------------------------------------
小计:                              ¥1,343
运费:                              ¥0
折扣:                              -¥100
税费 (13%):                        ¥162
--------------------------------------------------
总计:                              ¥1,405

--------------------------------------------------
备注:
[订单备注 / 促销信息]

销售单位: [店铺名称]
统一社会信用代码: [税号]
联系电话: [客服电话]
--------------------------------------------------
```

**英文发票模板 (VAT)**:
```
====================================
              VAT INVOICE
              EUROPEAN UNION

Invoice No: INV-20240412-0001
Order No: #12345
Date: April 12, 2024
VAT No: [Your VAT Number]

Sold To:
  [Customer Name]
  [Customer Address]
  [VAT Number]

Ship To:
  [Shipping Address]

====================================
Item Details:

Item  Description         Qty  Unit Price  Amount
001   Running Shoes      2    €80.00      €160.00
002   Sports Socks       5    €5.00       €25.00
====================================
Subtotal:                            €185.00
Shipping:                            €0.00
Discount:                            -€10.00
VAT (20%):                           €35.00
====================================
Total:                               €210.00

====================================
Terms:
  - Payment received
  - Goods supplied
  - VAT included in total

Supplier: [Your Company Name]
Address: [Your Address]
VAT: [Your VAT Number]
====================================
```
```

### 5. 物流标签自动打印

#### 标签配置

```yaml
标签类型:
  快递面单:
    格式: 100x150mm
    内容: 收发人、条码、服务类型
    打印: 热敏/激光打印机

  物流标签:
    格式: A5/A6
    内容: 详细地址、商品信息、条码
    打印: 激光打印机

  国际标签:
    格式: A4
    内容: 中英文、申报信息、条码
    打印: 激光打印机

  特殊标签:
    易碎品标签
    冷藏标签
    重货标签
    礼品标签

打印规则:
  自动打印:
    订单分配后
    批次处理时
    仓库要求时

  手动打印:
    重新打印
    标签损坏
    地址修改

  打印机分配:
    按仓库: 每仓指定打印机
    按承运商: 不同承运商不同打印机
    按类型: 面单/标签分开打印

信息内容:
  必填:
    - 收件人信息 (姓名、地址、电话)
    - 发件人信息
    - 运单号/条码
    - 服务类型
    - 重量信息

  可选:
    - 订单编号
    - 商品信息 (简述)
    - 特殊处理标识
    - 付款方式
    - 代收货款金额
```

#### 自动打印流程

```markdown
## 物流标签自动打印

### 打印工作流

**流程1: 批次打印**
```
批次处理完成
  ↓
生成面单数据
  ├─ 收件人信息
  ├─ 发件人信息
  ├─ 运单号
  └─ 条码
  ↓
按仓库/承运商分组
  ↓
发送到对应打印机
  ├─ 华东仓 → Printer-WH01
  ├─ 华北仓 → Printer-WH02
  └─ 华南仓 → Printer-WH03
  ↓
打印完成确认
  ├─ 成功 → 标记已打印
  └─ 失败 → 重试/人工处理
```

**流程2: 单独打印**
```
订单进入系统
  ↓
优先级判断
  ├─ 紧急订单 → 立即打印
  └─ 普通订单 → 批次打印
  ↓
检查打印队列
  ├─ 打印机空闲 → 立即发送
  └─ 打印机忙碌 → 加入队列
  ↓
打印任务发送
  ↓
确认打印状态
```

### 打印机管理

**打印机配置**:

| 打印机ID | 名称 | 位置 | 类型 | 状态 | 用途 |
|---------|------|------|------|------|------|
| P-WH01-01 | 华东面单打印机 | 华东仓 | 热敏 | 在线 | 快递面单 |
| P-WH01-02 | 华东标签打印机 | 华东仓 | 激光 | 在线 | 物流标签 |
| P-WH02-01 | 华北面单打印机 | 华北仓 | 热敏 | 在线 | 快递面单 |
| P-WH02-02 | 华北标签打印机 | 华北仓 | 激光 | 故障 | 物流标签 |
| P-WH03-01 | 华南面单打印机 | 华南仓 | 热敏 | 在线 | 快递面单 |

**故障处理**:
```yaml
检测到故障:
  1. 标记打印机离线
  2. 自动切换到备用打印机
  3. 发送故障通知
  4. 记录故障日志

备用打印机:
  - 同仓备机
  - 邻近仓库
  - 云打印服务

恢复策略:
  - 自动重试打印
  - 补打印遗漏面单
  - 验证打印质量
```
```

### 6. 订单状态自动更新

#### 状态流转

```yaml
订单状态:
  待支付:
    触发: 订单创建
    操作: 等待支付
    超时: 自动取消 (15分钟)

  已支付:
    触发: 支付成功
    操作: 进入处理队列
    通知: 发送确认邮件

  处理中:
    触发: 开始处理
    操作: 库存检查、仓库分配
    更新: 每5分钟检查进度

  已确认:
    触发: 处理完成
    操作: 生成拣货单
    通知: 发送确认通知

  拣货中:
    触发: 拣货开始
    更新: 拣货进度 (50%, 80%)
    通知: 订单开始拣货

  已打包:
    触发: 打包完成
    操作: 生成面单
    更新: 重量、尺寸

  已发货:
    触发: 交接给承运商
    更新: 物流单号、物流状态
    通知: 发送发货通知 + 跟踪链接

  运输中:
    触发: 物流状态更新
    更新: 自动同步物流信息
    频率: 每6小时

  已签收:
    触发: 客户签收
    更新: 签收信息、签收时间
    通知: 发送签收确认

  已完成:
    触发: 签收后7天
    操作: 自动完成
    通知: 满意度调查

  已取消:
    触发: 客户取消 / 系统取消
    操作: 释放库存、退款
    通知: 取消确认

自动更新规则:
  物流同步:
    频率: 每6小时
    来源: 承运商API
    更新: 运输状态、位置、预计送达

  超时处理:
    处理超时 (2小时): 发送提醒
    发货超时 (24小时): 自动升级
    运输异常: 立即通知

  异常检测:
    地址错误: 标记异常
    库存不足: 暂停处理
    支付异常: 验证失败
```

#### 状态同步配置

```markdown
## 订单状态自动同步

### 物流状态同步

**同步配置**:

| 承运商 | API | 同步频率 | 状态映射 |
|--------|-----|---------|---------|
| 顺丰 | SF-API | 每4小时 | 实时物流 |
| 中通 | ZTO-API | 每6小时 | 节点更新 |
| 圆通 | YTO-API | 每6小时 | 节点更新 |
| 德邦 | DBL-API | 每6小时 | 节点更新 |

**状态映射**:
```yaml
承运商状态 → 系统状态:

  "已揽收" → "已发货"
  "运输中" → "运输中"
  "派送中" → "派送中"
  "已签收" → "已签收"
  "拒收" → "拒收-需处理"
  "异常" → "运输异常"
```

### 自动通知规则

**通知触发点**:

| 状态变化 | 通知类型 | 通知对象 | 内容 |
|---------|---------|---------|------|
| 已支付 | 邮件/短信 | 客户 | 订单确认 |
| 已发货 | 邮件/短信/App推送 | 客户 | 发货通知+跟踪 |
| 运输中 | App推送 | 客户 | 物流更新 |
| 派送中 | 短信 | 客户 | 派送提醒 |
| 已签收 | 邮件 | 客户 | 签收确认 |
| 运输异常 | 邮件/短信 | 客户+客服 | 异常提醒 |
| 延迟发货 | 邮件 | 客户 | 延迟致歉+优惠券 |

**通知模板**:

**发货通知模板**:
```
主题: 您的订单已发货！🚚

尊敬的 [客户姓名],

您的订单 [订单号] 已发货！

📦 订单信息:
  订单编号: #12345
  物流公司: 顺丰速运
  运单号码: SF1234567890
  预计送达: 4月14日

📍 实时跟踪:
  [物流跟踪链接]

📱 手机App:
  [App跟踪链接]

如有任何问题,请随时联系我们!

祝您购物愉快!
[店铺名称]
客服电话: 400-xxx-xxxx
```
```

---

## 🚀 快速命令

### 配置订单路由
```bash
/order-automation --routing --configure
```

### 设置批处理
```bash
/order-automation --batch --schedule "daily"
```

### 配置优先级
```bash
/order-automation --priority --rules
```

### 自动发票设置
```bash
/order-automation --invoice --configure
```

### 物流标签打印
```bash
/order-automation --label --auto-print
```

### 状态同步配置
```bash
/order-automation --sync --logistics
```

---

## 💡 最佳实践

### 1. 路由优化
- 定期审查路由规则
- 测试不同算法效果
- 平衡成本和速度
- 监控异常路由

### 2. 批处理优化
- 合理设置批次大小
- 避免批次过大延迟
- 高峰期增加批次
- 监控处理时效

### 3. 优先级管理
- 定期审查规则
- 避免过多高优先级
- 动态调整权重
- 监控客户满意度

---

## 🔗 相关 Skills

- `/inventory-optimizer` - 库存优化
- `/shipping-config` - 物流配置
- `/customer-service` - 客户服务

---

**版本**: 1.0.0
**更新**: 2026-04-12
**作者**: Shopilot Team

