---
 .../hooks/ValidateChequeCadeauBarcode.java           |  3 +++
 .../js/hooks/hookObidcoPreAddCouponHook.js           | 12 +++++++++---
 2 files changed, 12 insertions(+), 3 deletions(-)

diff --git a/src/org/openbravo/retail/chequecadeau/hooks/ValidateChequeCadeauBarcode.java b/src/org/openbravo/retail/chequecadeau/hooks/ValidateChequeCadeauBarcode.java
index 06480d9..16a6ccf 100644
--- a/src/org/openbravo/retail/chequecadeau/hooks/ValidateChequeCadeauBarcode.java
+++ b/src/org/openbravo/retail/chequecadeau/hooks/ValidateChequeCadeauBarcode.java
@@ -32,10 +32,13 @@ public class ValidateChequeCadeauBarcode extends JSONProcessSimple {
     OBContext.setAdminMode();
     try {
       String chBarcode = coupon.optString("ccgsBarcode");
+      String issuingCompany = coupon.getJSONObject("obdicoIssuingCompany").getString("id");
       if (!"".equals(chBarcode) && !chBarcode.isEmpty()) {
         OBCriteria<OBDICO_DigitalCoupons> obc = OBDal.getInstance()
             .createCriteria(OBDICO_DigitalCoupons.class);
         obc.add(Restrictions.eq(OBDICO_DigitalCoupons.PROPERTY_CCGSBARCODE, chBarcode));
+        obc.add(Restrictions.eq(OBDICO_DigitalCoupons.PROPERTY_OBDICOISSUINGCOMPANY + ".id",
+            issuingCompany));
         obc.setFilterOnReadableClients(false);
         obc.setFilterOnReadableOrganization(false);
         obc.setMaxResults(1);
diff --git a/web/org.openbravo.retail.chequecadeau/js/hooks/hookObidcoPreAddCouponHook.js b/web/org.openbravo.retail.chequecadeau/js/hooks/hookObidcoPreAddCouponHook.js
index f31699d..1feb366 100644
--- a/web/org.openbravo.retail.chequecadeau/js/hooks/hookObidcoPreAddCouponHook.js
+++ b/web/org.openbravo.retail.chequecadeau/js/hooks/hookObidcoPreAddCouponHook.js
@@ -21,11 +21,13 @@
       var procesValidateDate = new OB.DS.Process(
         'org.openbravo.retail.chequecadeau.hooks.ValidateChequeCadeauBarcode'
       );
-      var barcodeInPayments = function(payments, barCode) {
+      var barcodeInPayments = function(payments, barCode, issuingCompany) {
         var result = _.find(payments, payment => {
           return _.find(payment.get('coupons'), coupon => {
             return (
-              OB.DCUTIL.getCouponProperty(coupon, 'ccgsBarcode') === barCode
+              OB.DCUTIL.getCouponProperty(coupon, 'ccgsBarcode') === barCode &&
+              OB.DCUTIL.getCouponProperty(coupon, 'obdicoIssuingCompany').id ===
+                issuingCompany
             );
           });
         });
@@ -46,7 +48,11 @@
           data = data || {};
           data.duplicated =
             data.duplicated ||
-            barcodeInPayments(receiptPayments, args.coupon.get('ccgsBarcode'));
+            barcodeInPayments(
+              receiptPayments,
+              args.coupon.get('ccgsBarcode'),
+              args.coupon.get('obdicoIssuingCompany').get('id')
+            );
           if (data.duplicated) {
             args.cancellation = true;
             me.hide();
-- 
2.28.0

