??
订单与货运
从创建订单、 parcels 管理到 shipment 全生命周期追踪
ZymeupClient 是面向多角色的统一 Node.js SDK,通过 role 参数切换商户/物流商模式,替代原有的 ZymeupUserSDK / ZymeupCarrierSDK 分叉设计。
import { ZymeupClient } from '@zymeup/sdk'
const sdk = new ZymeupClient({
apiKey: process.env.Zymeup_API_KEY!,
baseUrl: 'https://api.zymeup.com/api/v1',
role: 'merchant' // 'merchant' | 'carrier'
})
// 商户模式:订单 + EPOD + ECMR
const orders = await sdk.order.list({ page: 1 })
const epod = await sdk.epod.list({ trackingNo: 'TRACK123' })
// 切换物流商模式
sdk.updateConfig({ role: 'carrier', carrierCode: 'DHL' })
const tracking = await sdk.tracking.list({ status: 'in_transit' })
const customs = await sdk.compliance.check({
recipient_country: 'NL', sender_country: 'CN', parcels: []
})graph LR
A[商户下单] --> B[Order Service]
B --> C[Address 解析]
B --> D[Parcel 计算]
C --> E[EPOD 电子签收]
C --> F[ECMR 国际运单]
D --> G[Carrier 揽收]
E --> H[PDF + 签名哈希]
F --> I[HMAC 签署链接]
G --> J[Tracking 轨迹]
H --> K[Webhook 通知]
I --> K
J --> K
style B fill:#0055ff,color:#fff
style E fill:#2563eb,color:#fff
style F fill:#2563eb,color:#fff
style K fill:#10b981,color:#fffimport { ZymeupUserSDK } from '@zymeup/user-sdk'
const sdk = new ZymeupUserSDK({
apiKey: process.env.Zymeup_API_KEY!,
baseURL: 'https://api.zymeup.com/api/v1'
})
// 列出订单
const orders = await sdk.order.list({ page: 1, page_size: 10 })
// 创建订单并自动生成 EPOD + ECMR
const result = await sdk.order.createWithDocuments({
sender_address_id: 'addr_001',
receiver_address_id: 'addr_002',
parcels: [{ weight: 1.5, length: 30, width: 20, height: 15 }],
auto_generate: { ecmr: true, epod: true }
})