帮助中心GitHub
ERPNext
集成指南

ERPNext + AtoShip

在 ERPNext 里直接比较各大承运商实时运费、购买面单、批量发货并追踪—— 订单进来就发货,物流单号自动回写到 Sales Order。全部在 ERPNext 内完成,无需在两个后台之间来回切换。

工作原理

「atoship for ERPNext」是一个自托管的 Frappe 应用,它就像 Shopify、WooCommerce 应用发货店铺订单一样, 直接发货你的 ERPNext Sales Order(销售订单)。atoship 是一个轻客户端:所有比价、承运商路由和面单生成 都跑在 atoship 的 v1 API 上,界面里始终只会显示各大真实、知名品牌承运商,绝不显示背后的聚合商。

1

提交 Sales Order

销售订单进入 ERPNext,等待发货

2

比价并购买面单

对比各大承运商实时运费,一键或批量购买

3

物流单号回写并追踪

承运商与物流单号写回 Sales Order,随时追踪

ERPNext 里的 atoship Ship Queue 发货工作台——所有订单一张表,含实时运费、发货地、重量与一键 Ship

Ship Queue 发货工作台(/app/atoship-ship)—— 所有订单一张表发完。

ERPNext 销售订单里的实时承运商运费——比价后直接购买面单

销售订单里的实时比价 —— 在订单页内比价并直接购买。

安装

这是一个自托管的 Frappe 应用,通过 git 安装——不需要 OAuth 授权,也没有应用市场「连接店铺」的流程。 在你的 Frappe 服务器上运行 bench 命令即可。

第 1 步 — 通过 git 安装 Frappe 应用

在你的 Frappe/ERPNext 服务器(自托管或 Frappe Cloud)上,把 your-site替换成你的站点名,依次执行:

bench
bench get-app https://github.com/atoship/atoship-for-erpnext
bench --site your-site install-app atoship_shipping
bench --site your-site migrate

仓库是公开且 MIT 许可的(atoship_shipping 为应用 ID)。 安装完成后,「Atoship Settings」等界面会出现在你的 ERPNext 里。

第 2 步 — 获取 atoship API 密钥

登录你的 atoship 后台,在 设置 里创建一个 API 密钥。用于正式发货请使用ak_live_… 密钥;想先空跑试一试, 可以用 ak_test_… 测试密钥。

请确保你的 atoship 钱包已充值——面单费用从钱包扣款,没有按面单收取的月费。

配置 Atoship Settings

在 ERPNext 中打开 Atoship Settings,完成一次性配置:

  1. 粘贴上一步创建的 API 密钥
  2. 点击 Test Connection 验证密钥并确认钱包已连通
  3. 设置默认的 Ship-From Address(发货地址)
  4. 设置默认的箱型 / 重量,以及面单格式(label format)

API 密钥

atoship 用它对所有比价与购买请求进行身份验证。ak_live_…会真实购买并从钱包扣款;ak_test_… 只做空跑,不产生费用。

Test Connection

一键校验密钥是否有效、钱包是否已连通。在开始发货前建议先跑一次,确认配置无误。

Ship-From Address(发货地址)

比价与购面单默认使用的发货地址。在 Sales Order 表单和 Ship Queue 里,你仍可以按单切换发货地址。

默认箱型 / 重量与面单格式

设定默认的包裹尺寸、重量和面单格式(如 4×6 热敏或 PDF)。发货时会自动带入,需要时再逐单调整即可。

在哪里使用

安装后,发货能力会出现在 ERPNext 的三个地方——从单张订单到整批发货都覆盖到了。

1. Sales Order 表单

在销售订单页面新增一个 「Ship with atoship」按钮:获取实时运费 → 选择一个 → 购买。 之后即可 Print Label(打印面单)、Update Tracking(更新物流)、Track Package(追踪包裹)。运费会被缓存,重新打开时秒开。

2. Sales Order 列表

勾选多张订单,通过 Actions →「Ship with atoship」 批量购买面单; 列表上还有一个 「Open Ship Queue」 按钮,一键进入发货工作台。

3. Ship Queue(发货工作台)

一个原生页面(/app/atoship-ship),把所有已提交、未发货的订单 汇总到一张表里,成为完整的履约工作台:

  • 每行可单独设置发货地址(ship-from),可编辑重量 / 尺寸
  • 自动获取一个运费,可随时切换到其它承运商 / 服务
  • 签名(signature)与保险(insurance)开关
  • 一键 Ship 发货;勾选多行后,用底部固定的批量操作栏一次性全部购买
  • 已发货的行显示物流单号 + Print(打印)+ Cancel(作废并退款)

同步的内容

ERPNext → atoship

  • Sales Order 单号、日期与金额
  • 收货地址与联系人
  • 订单行项目(含商品、数量)
  • 包裹重量 / 尺寸(可按单覆盖)
  • 发货地址(ship-from)

atoship → ERPNext

  • 物流单号、承运商 + 服务名称
  • 面单 PDF(用于打印 / 重新打印)
  • 物流状态与追踪链接
  • 作废 / 退款结果

物流单号与承运商会直接回写到对应的 Sales Order 上——发货、追踪、打印都留在 ERPNext 里,无需另装追踪插件。

功能亮点

多承运商比价

同一批包裹同时对比各大承运商的实时运费,挑最合适的下单。

一键 + 批量购买面单

单张订单一键发货,或在 Ship Queue 里勾选多单,用批量操作栏一次性全部购买。

物流单号回写

承运商、服务与物流单号自动写回 Sales Order,团队在 ERPNext 里就能追踪。

签名与保险

发货时按需勾选签名(signature)与保险(insurance),逐单可控。

作废与退款

未使用的面单可一键作废(Cancel),费用退回你的 atoship 钱包。

折扣价 · 无月费

享受 atoship 的折扣运费,从钱包扣款,没有按面单收取的月费。

仅限包裹快递;货运 / LTL(整车 / 零担)不在此集成范围内。

故障排查

Test Connection 失败

请确认 API 密钥是从 atoship 后台原样复制的(不带多余空格),并且服务器能访问公网。 想空跑测试时用 ak_test_…,正式发货再换成ak_live_…

安装后看不到 Atoship 界面

确认三条 bench 命令都成功执行了,尤其是最后的bench --site your-site migrate。 之后运行 bench --site your-site clear-cache并刷新浏览器。

取不到运费

请确认已设置默认的 Ship-From Address,且订单填写了收货地址、重量与尺寸。缺少重量 / 尺寸时运费会不准确, 可在 Sales Order 表单或 Ship Queue 里逐单补充后再重新获取。

购买时提示余额不足

面单费用从 atoship 钱包扣款。请先在 atoship 后台为钱包充值,再回到 ERPNext 购买面单。

环境要求

  • ERPNext v15 或更高版本(自托管或 Frappe Cloud)
  • 可执行 bench 命令的服务器访问权限
  • 一个 atoship 账户,钱包已充值
  • atoship API 密钥(ak_live_… 正式 /ak_test_… 测试)
获取应用
开源 Frappe 应用(MIT)。通过 bench get-app 安装。
在 GitHub 上查看

应用 ID:atoship_shipping· ERPNext v15+ · MIT

概览
安装方式bench get-app(git)
认证方式API 密钥
ERPNextv15+
开源协议
MIT
包含功能
多承运商实时比价
一键 + 批量购买面单
Ship Queue 发货工作台
物流单号回写 Sales Order
签名与保险
作废与退款
折扣价 · 无月费
准备好发货了吗?
创建一个 API 密钥,粘贴进 Atoship Settings。
atoship © 2026