塞尔维亚 eOtpremnica:2027 年 10 月 1 日前接通您的 ERP、WMS 和 TMS

从 2027 年 10 月 1 日起,塞尔维亚两家已办理增值税登记的私营公司之间的每一次货物移动,都需要一张电子发货单,即 eOtpremnica,并且必须在货物出发之前通过财政部系统发送。收货公司必须在几天之内在同一系统中确认收货,承运人必须能够在检查时出示这张发货单。
这涵盖销售发货、退货和您自有仓库之间的调拨。发货单不再是 ERP 打印出来的一张表格。它变成一个 UBL 文件,经过国家 API,带着一个标识符和一个二维码返回,然后在双方之间走一套状态流程。
谁需要读这篇文章
如果您用 Minimax、BizniSoft 或 Pantheon 开票和发货,厂商已经在提供 eOtpremnica 支持。如果您的业务量小到可以把发货单手工录入财政部的免费网页门户或其移动应用,那也行得通。读一读关于收货期限的那一节,培训好装卸口的人员,基本上就完成了。
本文写给另一类公司:分销商、制造商、批发商和承运人,其发货和收货流程运行在自己的 ERP、定制 WMS、TMS 或处理 B2B 订单的网店后台上。没有人会给您推送更新。您必须自己构建集成。
已经适用的和即将改变的
《电子发货单法》(Zakon o elektronskim otpremnicama)制定于 2024 年,此后已修订两次。最新的修正法于 2026 年 8 月 31 日刊登在 Službeni glasnik 80/2026 上,保留了 2027 年 10 月这个日期。财政部的常见问题解答和合并文本列出了各个阶段。
自 2026 年 1 月 1 日起:
- 私营公司对消费税应税货物发送和接收 eOtpremnica:烟草、尼古丁产品、咖啡、酒精饮料和石油产品。
- 私营公司对交付给公共部门实体的任何货物发送 eOtpremnica,公共部门实体对其自身的货物移动发送 eOtpremnica。
- 承运人对上述货物移动出示发货单。
生产系统自 2025 年 12 月 30 日起运行。用于测试内部软件的演示环境自 2025 年 3 月 5 日起开放。
自 2027 年 10 月 1 日起:
- 发货方和收货方均为私营部门实体、且货物不是消费税应税货物时的发送义务。
- 每一个私营部门实体的接收义务。
- 承运人对这些货物移动出示发货单。
有几个细节容易让人掉进坑里。同一厂区内两个仓库之间的调拨,如果货物改变了地址并且使用了公共道路,就需要一张内部发货单(XML 中的 Int 类型)。进口需要一张内部发货单,从您取得货物处置权的地点(某些情况下是海关)到您的仓库。出口通常需要一张到货运代理接手地点的内部发货单。依照税控法进行的零售销售豁免,所以凭税控收据销售的网店,这部分订单不在范围内。它的批发业务则在范围内。
8 月的修正还规定,在 2027 年 1 月 1 日之前,监管机构不会追究已发送发货单和收货单中的数据错误。这对消费税货物和公共部门的发货方有帮助,对 2027 年 10 月则毫无影响。
这个日期会变吗?这部法律在不到两年的时间里修订了两次,所以进一步修改是可能的。但刚刚通过的修正保留了这个日期。请按它来规划。
期限都在收货这一步
发送是容易的那一半。合并文本把硬性期限放在了收货方一侧。
- 在货物移动之前,发货方发送发货单。在收货方确认实物收货之前,发货方可以注明理由将其撤销。
- 实物收货必须在接收货物的当天确认,最迟不晚于开始收货后的第三个工作日。
- 在该确认后的八天之内,收货方通过发送 ePrijemnica(电子收货单),全部或部分接受或拒绝这批货物。
- 私营部门收货方如果在八天内什么都没发送,即视为全部拒绝这批货物。 公共部门收货方则相反:沉默视为接受。
- 部分接受时,发货方自电子收货单到达起有 30 天时间同意其中的差异。否则视为全部拒绝该电子收货单。
- 没有实物收货确认的发货单,自货物开始移动起 30 天后失效。
一旦双方达成一致,单据即进入 Usaglašeno 状态(API 中为 Fulfilled),此后不能再作任何更改。
错过实物收货期限是一项明列的违法行为:对公司处以 20 万至 200 万第纳尔罚款,对责任人处以 5 万至 15 万第纳尔罚款。完全不发送发货单的,适用同样的罚款幅度。
实际的结论是:实物收货应该在装卸口、在 WMS 中、在货物入库登记的那一刻完成。如果等到月末有人对账时才处理,期限早就过了。
对接财政部 API 要构建什么
技术文档描述的是一个交换 UBL 2.1 XML 的 REST API。eOtpremnica 是一个 DespatchAdvice,ePrijemnica 是一个 ReceiptAdvice,其他每一个步骤(撤销、开始运输、更换车辆、实物收货、接受或拒绝电子收货单)都是一个带数字代码的 ApplicationResponse。财政部于 2025 年 12 月 5 日为 IT 行业举办了一场研讨会,内容涉及单据类型、XML 扩展、提交和 webhook。
发送
每份单据都发往同一个端点 POST /public/documents/requests,并附上您自己的唯一请求 ID。处理是异步的。结果稍后通过 webhook 到达,或者通过轮询 /public/documents/requests/changes 获取,后者会报告每个请求处于待处理、成功还是失败状态,并附上业务错误。
因此,您的 ERP 需要一个发件箱:每张发货单一条记录、一个状态机,以及一条不会产生重复的重试路径。系统会拒绝贵公司已经存在的单据编号,这有帮助,但前提是您的编号在重试时保持不变。
财政部 API 常见问题解答中的错误清单,显示了数据工作在哪里:
- 开具日期必须是今天,按塞尔维亚时间计。不能倒签日期,也不能把昨天的发货单在队列里压一夜。
- 每个地址(您的、客户的、承运人的、装货点和卸货点)都需要街道和城市。
- 无论是自有运输、承运人运输还是收货方运输,承运人、车辆牌照和运输方式都是必填项。自有运输还需要为贵公司开启承运人身份。
- 数量要带计量单位代码。行号从 1 开始。GTIN 如果提供,只能是数字。
- 收货方必须已注册且处于有效状态。发送前可以用
GET /public/companies/status检查 PIB。
主数据通常比 XML 的工作量更大。有一个校验端点可以让您在提交前测试单据,它应该纳入您的测试套件。
接收与仓库
收到的发货单通过 /public/documents/customers/changes 获取,按日期轮询,每页 1000 条变更,或者通过 webhook 推送。webhook 订阅按天计:调用一次 /public/webhook-notifications/subscribe 覆盖第二天。把它作为定时任务运行,失败时告警,并保留拉取端点作为每晚的对账手段,这样一次漏掉的推送就不会变成一次错过的期限。
每张收到的发货单都应该作为预期收货进入 WMS,并把供应商的物料编码映射到您的编码。货物入库登记时,WMS 发送实物收货操作。数量和质量检查完成后,它发送 ePrijemnica:逐行列出实际到货数量,以及被拒收并随同一车辆退回的数量。系统不接受超过收货数量的拒收数量。
财政部自己的角色模型是一个有用的模板。它的仓库角色可以列出和下载收到的发货单,并确认实物收货。这也正是 WMS 权限应有的形态。
作为发货方,您也会收到对方的电子收货单,并且必须接受或拒绝。在 ERP 中跟踪 30 天的确认期限,而不是放在某个人的收件箱里。
与 SEF 电子发票关联
把发货单与 SEF 中的电子发票关联是可选的。发货单一旦发出且实际发货时间已过,SEF 就可以把一张或多张发货单关联到一张电子发票上,而发票不必等收货流程走完。如果您已经在 ERP 中进行订单、交货和发票的三方匹配,这种关联就能给客户的应付账款部门提供同样的证据。我们的电子发票集成工作涵盖 SEF 这一侧。
承运人与道路运输
司机可以通过财政部的承运人应用出示发货单。如果承运人不是系统用户,就由发货方打印发货单,承运人在出发前签字,发货方在货物移动之前上传签字件。8 月修正之后,无法使用系统的承运人也可以改为出示发送发货单时生成的二维码;此时发货方须在出发前附上可打印视图。您的 TMS 需要生成您的承运人所用的那一种,而 API 会单独返回二维码,供打印标签使用。
系统中断时有纸质备用方案:三份打印件,贴上塞尔维亚国家银行 Topčider 造币厂出品的防伪全息贴纸,并在下一个工作日之前录入系统。在需要之前就把贴纸买好。
API 密钥如何运作
由法定代表人通过国家 eID 门户登录,为公司完成注册。之后在网页界面中创建密钥(设置、API 设置、管理模块、API 密钥)。演示环境和生产环境是分开的,所以两边的密钥都要准备。
密钥标识的是公司。API 常见问题解答说得很直白:您不能代表另一家公司发送单据,系统通过所出示的 API 密钥来识别公司。在实践中:
- 一个有五个法人实体的集团需要五个密钥,以及一个按 PIB 选择正确密钥的路由组件。
- 共享服务中心或软件公司不能用一个密钥替所有客户提交。
- 密钥应保存在有负责人和轮换流程的密钥库中,而不是 ERP 服务器上的配置文件里。
十二个月计划
现在是 2026 年 10 月。从 2027 年 10 月 1 日倒推:
2026 年 10 月至 12 月:盘点与开通权限。
- 列出每一种货物移动类型:销售、退货、仓库间调拨、进口、出口、自有车队、第三方承运人、客户自提。
- 在生产环境中注册公司,并获取演示环境的 API 密钥。
- 开始清理主数据:地址、合作伙伴的 PIB 和注册号、承运人、车辆、计量单位。
2027 年 1 月至 3 月:发送路径。
- 从发货记录生成 DespatchAdvice,配套发件箱、异步状态跟踪和错误处理。
- 每日 webhook 订阅任务,加上拉取对账。
- 校验器在 CI 中针对演示环境运行。
2027 年 4 月至 6 月:接收与收货。
- 收到的发货单作为预期收货进入 WMS。
- 在装卸口完成实物收货,检查后发送 ePrijemnica,在三天期限的第二天和八天期限的第六天发出提醒。
- 处理您作为发货方收到的电子收货单的接受和拒绝。如有需要,接入 SEF 关联。
2027 年 7 月至 9 月:道路运输与试点。
- 承运人流程、打印和二维码,以及现场备好贴纸的离线流程。
- 与已经注册的合作伙伴在生产环境中开具真实发货单;私营公司已经可以自愿使用该系统。
- 培训仓库员工和司机。9 月冻结变更。
对于一个数据干净的法人实体,十二个月很宽裕。对于一个拥有多个法人实体、多个仓库、主数据多年没人碰过的集团,就很紧了。
从哪里获得帮助
C9 Group 在诺维萨德设有办公室,塞尔维亚的规则对我们来说是主场。我们构建的就是集成本身:在您现有的 ERP、WMS 或网店后台中实现 UBL 生成、API 客户端、webhook 处理和仓库收货流程。请参阅我们的 ERP 现代化服务,或写信到 office@c9group.dev。