diff --git a/addons/point_of_sale/static/src/js/gui.js b/addons/point_of_sale/static/src/js/gui.js
index 6ae8397fd3e..1557c2af230 100644
--- a/addons/point_of_sale/static/src/js/gui.js
+++ b/addons/point_of_sale/static/src/js/gui.js
@@ -314,14 +314,15 @@ openerp.point_of_sale.load_gui = function load_gui(instance, module) {
numpad_input: function(buffer, input, options) {
var options = options || {};
var newbuf = buffer.slice(0);
+ var decimal_point = instance.web._t.database.parameters.decimal_point;
- if (input === '.') {
+ if (input === decimal_point) {
if (options.firstinput) {
newbuf = "0.";
}else if (!newbuf.length || newbuf === '-') {
newbuf += "0.";
- } else if (newbuf.indexOf('.') < 0){
- newbuf = newbuf + '.';
+ } else if (newbuf.indexOf(decimal_point) < 0){
+ newbuf = newbuf + decimal_point;
}
} else if (input === 'CLEAR') {
newbuf = "";
diff --git a/addons/point_of_sale/static/src/js/screens.js b/addons/point_of_sale/static/src/js/screens.js
index 68ce5aa9180..24de92cd923 100644
--- a/addons/point_of_sale/static/src/js/screens.js
+++ b/addons/point_of_sale/static/src/js/screens.js
@@ -1482,7 +1482,7 @@ openerp.point_of_sale.load_screens = function load_screens(instance, module){ //
} else if ( event.keyCode === 190 || // Dot
event.keyCode === 110 || // Decimal point (numpad)
event.keyCode === 188 ) { // Comma
- key = '.';
+ key = self.decimal_point;
} else if ( event.keyCode === 46 ) { // Delete
key = 'CLEAR';
} else if ( event.keyCode === 8 ) { // Backspace
diff --git a/addons/point_of_sale/static/src/xml/pos.xml b/addons/point_of_sale/static/src/xml/pos.xml
index 4fe8863c019..b2314424144 100644
--- a/addons/point_of_sale/static/src/xml/pos.xml
+++ b/addons/point_of_sale/static/src/xml/pos.xml
@@ -544,7 +544,7 @@
-
+