You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Odoo POS打印小票中添加客户参考号?

解决Odoo POS小票添加发票客户参考的问题

你之前的代码无效,核心原因是:POS前端的订单对象本身没有customer_ref字段——这个字段属于发票(account.move),而非POS订单(pos.order);widget.pos.get_client()获取的是当前选中的客户信息,和发票里的“客户参考”不是同一个数据,所以两种写法都取不到值。

下面是两种可行的实现方法,推荐用第一种(自定义模块继承,避免修改核心文件):

方法一:后端扩展POS订单,同步发票客户参考到前端

  1. 创建一个自定义模块,在模块的models/pos_order.py中添加以下代码:
from odoo import models

class PosOrder(models.Model):
    _inherit = 'pos.order'

    def _export_for_ui(self, order):
        # 继承POS订单导出到前端的方法,追加发票的客户参考字段
        res = super()._export_for_ui(order)
        # 查找当前POS订单对应的发票
        invoice = self.env['account.move'].search([('pos_order_ids', '=', order.id)], limit=1)
        # 将发票的客户参考写入前端订单数据
        res['customer_ref'] = invoice.customer_ref if invoice else False
        return res
  1. 在模块的static/src/xml/receipt.xml中继承修改小票模板:
<t t-extend="OrderReceipt">
    <t t-jquery=".pos-receipt-order" t-operation="append">
        <!-- 当存在客户参考时显示 -->
        <t t-if="order.customer_ref">
            <div class="row">
                <div class="col-xs-6">客户参考:</div>
                <div class="col-xs-6 text-right"><t t-esc="order.customer_ref"/></div>
            </div>
        </t>
    </t>
</t>
  1. 安装并启用这个自定义模块,重启Odoo并刷新POS页面,之后打印的小票就会显示发票的客户参考了。

方法二:前端直接读取关联发票的客户参考(需确保数据已同步)

如果你的POS配置是订单完成后立即生成发票,且POS前端已加载发票数据,可以直接在小票模板中读取订单关联的发票字段:

<t t-extend="OrderReceipt">
    <t t-jquery=".pos-receipt-order" t-operation="append">
        <t t-if="order.account_move && order.account_move.customer_ref">
            <div class="row">
                <div class="col-xs-6">客户参考:</div>
                <div class="col-xs-6 text-right"><t t-esc="order.account_move.customer_ref"/></div>
            </div>
        </t>
    </t>
</t>

注意:这种方法需要后端确保POS订单的前端数据中包含account_move对象及customer_ref字段,否则还是需要配合后端的字段同步代码。

重要提醒

不要直接修改Odoo核心模块的文件,否则后续升级Odoo时你的修改会被覆盖。通过自定义模块继承修改是标准的Odoo二次开发方式。

内容的提问来源于stack exchange,提问作者Ahmed Ragab

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.13 21:30:13