Point of Sale Customization

Adding a field to offline model

Starting POS customization requires understanding that point of sale app is a offline capable application.

This code will add an existing field to the offline model of the PoS

var models = require('point_of_sale.models')
var _super_posmodel = models.PosModel.prototype;

models.PosModel = models.PosModel.extend({
initialize: function (session, attributes) {
        // Add field to model
        var partner_model = _.find(this.models, function(model){
            return model.model === 'res.partner';
        // run Super
        return _super_posmodel.initialize.call(this, session, attributes)

Related Video:

Customizing the Odoo Point of Sale Application

Odoo's powerful open source Point of Sale system can be customized once you learn a few tricks. In this video you learn how to add custom fields to the POS interface. This can be used to develop powerful Point of Sale modules that can better meet custom retail business requirements

Related Video:

Developing Custom POS Applications in Odoo v10


The Odoo Point of Sale (POS) application provides a powerful offline framework that allows you to use the point of sale application even if you are not connected to the Internet. In this video you will learn how to customize an application that integrates with the POS offline functionality. This is a must see video for intermediate to advanced Odoo developers.