From b954c8e5d3261576cc40c24179387cd03852c1b7 Mon Sep 17 00:00:00 2001 From: samsonpeter85 Date: Wed, 28 Jan 2026 12:15:10 +0500 Subject: [PATCH 1/3] PL-1503 * PL-1503 related changes * Added cache management for MarketPay access_token --- cartridges/int_marketpay_headless/caches.json | 8 + .../cartridge/scripts/hooks/basketHooks.js | 19 ++ .../scripts/hooks/basketPaymentHooks.js | 74 ++++---- .../cartridge/scripts/services/marketPay.js | 168 +++++++++++++----- cartridges/int_marketpay_headless/hooks.json | 15 +- .../int_marketpay_headless/package.json | 5 +- 6 files changed, 200 insertions(+), 89 deletions(-) create mode 100644 cartridges/int_marketpay_headless/caches.json create mode 100644 cartridges/int_marketpay_headless/cartridge/scripts/hooks/basketHooks.js diff --git a/cartridges/int_marketpay_headless/caches.json b/cartridges/int_marketpay_headless/caches.json new file mode 100644 index 0000000..1f6932d --- /dev/null +++ b/cartridges/int_marketpay_headless/caches.json @@ -0,0 +1,8 @@ +{ + "caches": [ + { + "id": "marketPayRestOauthToken", + "expireAfterSeconds": 3500 + } + ] +} diff --git a/cartridges/int_marketpay_headless/cartridge/scripts/hooks/basketHooks.js b/cartridges/int_marketpay_headless/cartridge/scripts/hooks/basketHooks.js new file mode 100644 index 0000000..73dbd85 --- /dev/null +++ b/cartridges/int_marketpay_headless/cartridge/scripts/hooks/basketHooks.js @@ -0,0 +1,19 @@ +'use strict'; + +const Site = require('dw/system/Site'); +const Logger = require('dw/system/Logger'); +const BasketMgr = require('dw/order/BasketMgr'); + +exports.afterPOST = function (basketId) { + + Logger.info("basket afterPost Called "); + + var HookMgr = require('dw/system/HookMgr'); + + if (HookMgr.hasHook('dw.order.createOrderNo')) { + var orderNo = HookMgr.callHook('dw.order.createOrderNo', 'createOrderNo'); + Logger.info("MarketPayOrderNo Created via hook: " + orderNo); + } else { + Logger.error("dw.order.createOrderNo hook not found"); + } +}; \ No newline at end of file diff --git a/cartridges/int_marketpay_headless/cartridge/scripts/hooks/basketPaymentHooks.js b/cartridges/int_marketpay_headless/cartridge/scripts/hooks/basketPaymentHooks.js index cc0ba21..e21ebca 100644 --- a/cartridges/int_marketpay_headless/cartridge/scripts/hooks/basketPaymentHooks.js +++ b/cartridges/int_marketpay_headless/cartridge/scripts/hooks/basketPaymentHooks.js @@ -3,20 +3,8 @@ const Site = require('dw/system/Site'); const Logger = require('dw/system/Logger'); const BasketMgr = require('dw/order/BasketMgr'); +const Transaction = require('dw/system/Transaction'); -exports.afterPOST = function (basketId) { - - Logger.info("basket afterPost Called "); - - var HookMgr = require('dw/system/HookMgr'); - - if (HookMgr.hasHook('dw.order.createOrderNo')) { - var orderNo = HookMgr.callHook('dw.order.createOrderNo', 'createOrderNo'); - Logger.info("MarketPayOrderNo Created via hook: " + orderNo); - } else { - Logger.error("dw.order.createOrderNo hook not found"); - } -} exports.modifyGETResponse_v2 = function (basket, paymentMethodResultResponse) { @@ -26,7 +14,7 @@ exports.modifyGETResponse_v2 = function (basket, paymentMethodResultResponse) { const marketPayDataHelper = require('*/cartridge/scripts/helpers/marketPayDataHelper'); var marketPayTokenAndSession = marketPayService.getTokenAndSessionId(marketPayDataHelper.getFormattedDataForMarketPaySession(basket)); - var marketPayPaymentMethods = marketPayService.getPaymentMethods(marketPayTokenAndSession.token, marketPayTokenAndSession.sessionId); + var marketPayPaymentMethods = marketPayService.getPaymentMethods(marketPayTokenAndSession.sessionId); const site = require('*/cartridge/scripts/helpers/site.js'); var marketPayTerminalsMapping = site.getCustomPreference('marketpayTerminals'); @@ -97,8 +85,7 @@ exports.modifyGETResponse_v2 = function (basket, paymentMethodResultResponse) { var paymentMethod = marketPayPaymentMethods.methods[k]; if (paymentMethod.metadata && paymentMethod.metadata.terminalName === terminalMapping.name) { // Include the matched payment method - method.c_marketPay = { - access_token: marketPayTokenAndSession.token, + method.c_marketPay = { sessionId: marketPayTokenAndSession.sessionId, paymentMethod: paymentMethod } @@ -121,41 +108,62 @@ exports.modifyGETResponse_v2 = function (basket, paymentMethodResultResponse) { } }; + exports.modifyPOSTResponse = function(basket, basketResponse, paymentInstrumentRequest ) { - Logger.info("MarketPay: payment instrument modifyPOSTREsponse "); + Logger.info("basket modifyPOSTResponse called"); + +}; + +exports.afterPOST = function (basket, paymentInstrument) { + + Logger.info("basket afterPOST Called "); + + var paymentInstrumentRequest = paymentInstrument; + var basketResponse = basket; const marketPayService = require('*/cartridge/scripts/services/marketPay'); const marketPayDataHelper = require('*/cartridge/scripts/helpers/marketPayDataHelper'); - if (paymentInstrumentRequest.c_marketpayPaymentMethodID && - paymentInstrumentRequest.c_marketPayToken && - paymentInstrumentRequest.c_marketPaySessionID) { + if (paymentInstrumentRequest.c_marketPayPaymentMethodID && + paymentInstrumentRequest.c_marketPaySessionID && + paymentInstrumentRequest.c_marketPayOnInitiatePaymentURL) { - Logger.info("c_marketpayPaymentMethodID: " + paymentInstrumentRequest.c_marketpayPaymentMethodID); + Logger.info("c_marketPayPaymentMethodID: " + paymentInstrumentRequest.c_marketPayPaymentMethodID); // Token and sessionId should be sent from PWA in the request body - Logger.info("beforePost token: " + paymentInstrumentRequest.c_marketPayToken); - Logger.info("beforePost sessionID: " + paymentInstrumentRequest.c_marketPaySessionID); + Logger.info("modifyPOSTResponse sessionID: " + paymentInstrumentRequest.c_marketPaySessionID); // Token and sessionId should be sent from PWA in the request body - var mpPayment = marketPayService.createPayment(paymentInstrumentRequest.c_marketPayToken, + var mpPayment = marketPayService.createPayment( paymentInstrumentRequest.c_marketPaySessionID, - paymentInstrumentRequest.c_marketpayPaymentMethodID); - basketResponse.c_marketPay = mpPayment; + paymentInstrumentRequest.c_marketPayPaymentMethodID, + paymentInstrumentRequest.c_marketPayOnInitiatePaymentURL); + + if (basketResponse.paymentInstruments && basketResponse.paymentInstruments.length > 0) { + for (var i = 0; i < basketResponse.paymentInstruments.length; i++) { + var paymentInstrument = basketResponse.paymentInstruments[i]; + if (paymentInstrument.paymentMethod === paymentInstrumentRequest.paymentMethodId) { + Transaction.wrap(function () { + paymentInstrument.custom.marketPayPaymentURL = mpPayment.url; + //paymentInstrument.custom.marketPayURLType = mpPayment.type; + }); + break; + } + } + } + } else { var missingFields = []; - if (!paymentInstrumentRequest.c_marketpayPaymentMethodID) { - missingFields.push('c_marketpayPaymentMethodID'); - } - if (!paymentInstrumentRequest.c_marketPayToken) { - missingFields.push('c_marketPayToken'); - } + if (!paymentInstrumentRequest.c_marketPayPaymentMethodID) { + missingFields.push('c_marketPayPaymentMethodID'); + } if (!paymentInstrumentRequest.c_marketPaySessionID) { missingFields.push('c_marketPaySessionID'); } Logger.error("MarketPay: Missing required fields: " + missingFields.join(', ')); + basketResponse.c_marketPayError = { error: true, message: "Missing required MarketPay fields: " + missingFields.join(', ') @@ -163,4 +171,4 @@ exports.modifyPOSTResponse = function(basket, basketResponse, paymentInstrumentR return; } -}; +} diff --git a/cartridges/int_marketpay_headless/cartridge/scripts/services/marketPay.js b/cartridges/int_marketpay_headless/cartridge/scripts/services/marketPay.js index b8875dc..ea8af88 100644 --- a/cartridges/int_marketpay_headless/cartridge/scripts/services/marketPay.js +++ b/cartridges/int_marketpay_headless/cartridge/scripts/services/marketPay.js @@ -4,6 +4,10 @@ const LocalServiceRegistry = require('dw/svc/LocalServiceRegistry'); const Encoding = require('dw/crypto/Encoding'); const Bytes = require('dw/util/Bytes'); const Logger = require('dw/system/Logger'); +var CacheMgr = require('dw/system/CacheMgr'); + +const CACHE_ID = 'marketPayRestOauthToken'; +const CACHE_KEY = 'oauth_token'; /** * Creates and returns a LocalServiceRegistry service for authenticating with MarketPay. @@ -18,6 +22,82 @@ const Logger = require('dw/system/Logger'); * @returns {dw.svc.HTTPService} * A configured MarketPay authentication service instance. */ + +function fetchNewToken() { + + const tokenService = LocalServiceRegistry.createService("int.marketpay.auth", { + createRequest: function (service, params) { + service.setRequestMethod("POST"); + service.addHeader("Content-Type", "application/x-www-form-urlencoded"); + + const credentials = service.getConfiguration().getCredential(); + const clientId = credentials.getUser(); + const clientSecret = credentials.getPassword(); + + const authString = clientId + ":" + clientSecret; + const base64Auth = Encoding.toBase64(new Bytes(authString)); + service.addHeader("Authorization", "Basic " + base64Auth); + + return JSON.stringify({}); + }, + parseResponse: function (service, response) { + return JSON.parse(response.text); + } + }); + + const result = tokenService.call(); + + if (result.ok && result.object && result.object.token) { + const accessToken = result.object.token; + + // Cache the token (expires automatically after 3500 seconds) + const cache = CacheMgr.getCache(CACHE_ID); + cache.put(CACHE_KEY, accessToken); + + return accessToken; + } + + + throw new Error("Failed to get token: " + (result.errorMessage || 'Unknown error')); +} + +function fetchNewAuthToken() { + + var tokenService = LocalServiceRegistry.createService("int.marketpay.auth", { + createRequest: function (service, params) { + service.setRequestMethod("POST"); + service.addHeader("Content-Type", "application/x-www-form-urlencoded"); + + // Get credentials + var credentials = service.getConfiguration().getCredential(); + var clientId = credentials.getUser(); + var clientSecret = credentials.getPassword(); + + // Create Basic Auth header manually + var authString = clientId + ":" + clientSecret; + var base64Auth = Encoding.toBase64(new Bytes(authString)); + service.addHeader("Authorization", "Basic " + base64Auth); + + return JSON.stringify({}); + }, + parseResponse: function (service, response) { + return JSON.parse(response.text); + } + }); + + var result = tokenService.call(); + + if (result.ok) { + var tokenData = result.object; + //this.cacheToken(tokenData); + //return tokenData.token; + + return tokenData; + } + + throw new Error("Failed to get token: " + result.errorMessage); +} + function getMarketPayAuthenticateService() { let authString; let encodedAuthString; @@ -55,22 +135,24 @@ function getMarketPayAuthenticateService() { }); } -function getService(serviceType, method) { +function getService(serviceType, method, url) { return LocalServiceRegistry.createService('marketpay.http.service', { createRequest: function (svc, payload) { - + var log = Logger.getLogger("marketpay"); - log.info("GetService Marketing _url:" + svc.getURL()+'/'+serviceType); - log.info("GetService token:" + payload.token); + log.info("GetService Marketing _url:" + svc.getURL() + '/' + serviceType); + log.info("GetService token:" + getAuthToken()); log.info("GetService body:" + JSON.stringify(payload.requestBody)); - - svc.setURL(svc.getURL()+'/'+serviceType); + if (url == null) + svc.setURL(svc.getURL() + '/' + serviceType); + else + svc.setURL(url); svc.setRequestMethod(method); svc.addHeader('Content-Type', 'application/json'); - svc.addHeader('Authorization', 'Bearer ' + payload.token); + svc.addHeader('Authorization', 'Bearer ' + getAuthToken()); return JSON.stringify(payload.requestBody); }, @@ -96,6 +178,7 @@ function getService(serviceType, method) { }); } + /** * Creates and returns a LocalServiceRegistry service for creating a MarketPay session. * @@ -158,22 +241,18 @@ function getMarketPaySessionService() { * @returns {string} * The MarketPay authentication token. */ -function getAuthToken() { - const site = require('*/cartridge/scripts/helpers/site.js'); - const authService = getMarketPayAuthenticateService(); - const payload = { - username: site.getCustomPreference('marketpayUsername'), - password: site.getCustomPreference('marketpayPassword') - }; - - const result = authService.call(payload); +function getAuthToken() { + + const cache = CacheMgr.getCache(CACHE_ID); + let token = cache.get(CACHE_KEY); - if (!result.ok || !result.object || !result.object.token) { - Logger.error('MarketPay Authenticate API error'); - throw new Error('Failed to retrieve MarketPay authentication token'); + // If token exists in cache, return it (cache handles expiry) + if (token) { + return token; } - return result.object.token; + // Otherwise fetch new token + return fetchNewToken(); } /** @@ -198,13 +277,13 @@ function getAuthToken() { * - sessionId: The created MarketPay session ID */ function getTokenAndSessionId(requestBody) { - const token = getAuthToken(); + const token = getAuthToken(); const sessionService = getMarketPaySessionService(); - const result = sessionService.call({ - token: token, - requestBody: requestBody - }); + const result = sessionService.call({ + token: token, + requestBody: requestBody + }); if (!result.ok || !result.object || !result.object.sessionId) { Logger.error('MarketPay Session API error', result.errorMessage); @@ -213,42 +292,36 @@ function getTokenAndSessionId(requestBody) { return { token: token, - sessionId: result.object.sessionId + sessionId: result.object.sessionId }; } -function getPaymentMethods(authToken, checkoutSessionId) { +function getPaymentMethods(checkoutSessionId) { const service = getService(`session/${checkoutSessionId}/payment-methods`, 'GET'); - const result = service.call({ - token: authToken, - requestBody: {} - }); + const result = service.call({ + requestBody: {} + }); - //Logger.info('MarketPay PaymentMethods', JSON.stringify(result)); - if (!result.ok) { Logger.error('MarketPay PaymentMethods API error', result.errorMessage); throw new Error('Failed to retrieve MarketPay Payment Methods'); } - - return result.object; } -function createPayment(authToken, checkoutSessionId, paymentMethodId) { +function createPayment(checkoutSessionId, paymentMethodId, onInitiatePaymentURL) { - const service = getService(`payment`, 'POST'); - const result = service.call({ - token: authToken, - requestBody: { - paymentMethodId: paymentMethodId, - sessionId: checkoutSessionId - } - }); + const service = getService(`payment`, 'POST', onInitiatePaymentURL); + const result = service.call({ + requestBody: { + paymentMethodId: paymentMethodId, + sessionId: checkoutSessionId + } + }); - if (!result.ok || !result.object ) { + if (!result.ok || !result.object) { Logger.error('MarketPay createPayment API error', result.errorMessage); throw new Error('Failed to create MarketPay session ID'); } @@ -258,8 +331,9 @@ function createPayment(authToken, checkoutSessionId, paymentMethodId) { module.exports = { getTokenAndSessionId: getTokenAndSessionId, - getPaymentMethods: getPaymentMethods, - createPayment: createPayment + getPaymentMethods: getPaymentMethods, + createPayment: createPayment, + fetchNewAuthToken: fetchNewAuthToken }; diff --git a/cartridges/int_marketpay_headless/hooks.json b/cartridges/int_marketpay_headless/hooks.json index 5452dee..36ef4ca 100644 --- a/cartridges/int_marketpay_headless/hooks.json +++ b/cartridges/int_marketpay_headless/hooks.json @@ -6,20 +6,21 @@ }, { "name": "dw.ocapi.shop.basket.afterPOST", - "script": "./cartridge/scripts/hooks/basketPaymentHooks.js" - + "script": "./cartridge/scripts/hooks/basketHooks.js" }, { "name": "dw.ocapi.shop.basket.payment_methods.modifyGETResponse_v2", "script": "./cartridge/scripts/hooks/basketPaymentHooks.js" }, - { - "name": "dw.ocapi.shop.basket.payment_instrument.beforePOST", - "script": "./cartridge/scripts/hooks/basketPaymentHooks.js" - }, { "name": "dw.ocapi.shop.basket.payment_instrument.modifyPOSTResponse", "script": "./cartridge/scripts/hooks/basketPaymentHooks.js" - } + }, + { + "name": "dw.ocapi.shop.basket.payment_instrument.afterPOST", + "script": "./cartridge/scripts/hooks/basketPaymentHooks.js" + } ] + } + diff --git a/cartridges/int_marketpay_headless/package.json b/cartridges/int_marketpay_headless/package.json index dbc747c..77a85a8 100644 --- a/cartridges/int_marketpay_headless/package.json +++ b/cartridges/int_marketpay_headless/package.json @@ -1,3 +1,4 @@ { - "hooks": "./hooks.json" -} + "hooks": "./hooks.json", + "caches": "./caches.json" +} \ No newline at end of file From fa056a7a61fea915788733793b3b814a5b411bf7 Mon Sep 17 00:00:00 2001 From: samsonpeter85 Date: Wed, 28 Jan 2026 13:04:43 +0500 Subject: [PATCH 2/3] removed unused function --- .../cartridge/scripts/services/marketPay.js | 40 +------------------ 1 file changed, 1 insertion(+), 39 deletions(-) diff --git a/cartridges/int_marketpay_headless/cartridge/scripts/services/marketPay.js b/cartridges/int_marketpay_headless/cartridge/scripts/services/marketPay.js index ea8af88..73099b4 100644 --- a/cartridges/int_marketpay_headless/cartridge/scripts/services/marketPay.js +++ b/cartridges/int_marketpay_headless/cartridge/scripts/services/marketPay.js @@ -61,43 +61,6 @@ function fetchNewToken() { throw new Error("Failed to get token: " + (result.errorMessage || 'Unknown error')); } -function fetchNewAuthToken() { - - var tokenService = LocalServiceRegistry.createService("int.marketpay.auth", { - createRequest: function (service, params) { - service.setRequestMethod("POST"); - service.addHeader("Content-Type", "application/x-www-form-urlencoded"); - - // Get credentials - var credentials = service.getConfiguration().getCredential(); - var clientId = credentials.getUser(); - var clientSecret = credentials.getPassword(); - - // Create Basic Auth header manually - var authString = clientId + ":" + clientSecret; - var base64Auth = Encoding.toBase64(new Bytes(authString)); - service.addHeader("Authorization", "Basic " + base64Auth); - - return JSON.stringify({}); - }, - parseResponse: function (service, response) { - return JSON.parse(response.text); - } - }); - - var result = tokenService.call(); - - if (result.ok) { - var tokenData = result.object; - //this.cacheToken(tokenData); - //return tokenData.token; - - return tokenData; - } - - throw new Error("Failed to get token: " + result.errorMessage); -} - function getMarketPayAuthenticateService() { let authString; let encodedAuthString; @@ -332,8 +295,7 @@ function createPayment(checkoutSessionId, paymentMethodId, onInitiatePaymentURL) module.exports = { getTokenAndSessionId: getTokenAndSessionId, getPaymentMethods: getPaymentMethods, - createPayment: createPayment, - fetchNewAuthToken: fetchNewAuthToken + createPayment: createPayment }; From 92d344b7948f696c8894775c0f28491c7058a0ed Mon Sep 17 00:00:00 2001 From: samsonpeter85 Date: Wed, 28 Jan 2026 13:40:30 +0500 Subject: [PATCH 3/3] cleanup --- .../cartridge/scripts/helpers/site.js | 1 - .../cartridge/scripts/hooks/basketHooks.js | 4 -- .../scripts/hooks/basketPaymentHooks.js | 8 ---- .../cartridge/scripts/services/marketPay.js | 39 ------------------- cartridges/int_marketpay_headless/hooks.json | 4 -- 5 files changed, 56 deletions(-) diff --git a/cartridges/int_marketpay_headless/cartridge/scripts/helpers/site.js b/cartridges/int_marketpay_headless/cartridge/scripts/helpers/site.js index eebfb10..52bf9ae 100644 --- a/cartridges/int_marketpay_headless/cartridge/scripts/helpers/site.js +++ b/cartridges/int_marketpay_headless/cartridge/scripts/helpers/site.js @@ -1,6 +1,5 @@ 'use strict'; -const Logger = require('dw/system/Logger'); const Site = require('dw/system/Site'); /** diff --git a/cartridges/int_marketpay_headless/cartridge/scripts/hooks/basketHooks.js b/cartridges/int_marketpay_headless/cartridge/scripts/hooks/basketHooks.js index 73dbd85..43e27e5 100644 --- a/cartridges/int_marketpay_headless/cartridge/scripts/hooks/basketHooks.js +++ b/cartridges/int_marketpay_headless/cartridge/scripts/hooks/basketHooks.js @@ -1,13 +1,9 @@ 'use strict'; -const Site = require('dw/system/Site'); const Logger = require('dw/system/Logger'); -const BasketMgr = require('dw/order/BasketMgr'); exports.afterPOST = function (basketId) { - Logger.info("basket afterPost Called "); - var HookMgr = require('dw/system/HookMgr'); if (HookMgr.hasHook('dw.order.createOrderNo')) { diff --git a/cartridges/int_marketpay_headless/cartridge/scripts/hooks/basketPaymentHooks.js b/cartridges/int_marketpay_headless/cartridge/scripts/hooks/basketPaymentHooks.js index e21ebca..42b101c 100644 --- a/cartridges/int_marketpay_headless/cartridge/scripts/hooks/basketPaymentHooks.js +++ b/cartridges/int_marketpay_headless/cartridge/scripts/hooks/basketPaymentHooks.js @@ -2,7 +2,6 @@ const Site = require('dw/system/Site'); const Logger = require('dw/system/Logger'); -const BasketMgr = require('dw/order/BasketMgr'); const Transaction = require('dw/system/Transaction'); @@ -108,13 +107,6 @@ exports.modifyGETResponse_v2 = function (basket, paymentMethodResultResponse) { } }; - -exports.modifyPOSTResponse = function(basket, basketResponse, paymentInstrumentRequest ) { - - Logger.info("basket modifyPOSTResponse called"); - -}; - exports.afterPOST = function (basket, paymentInstrument) { Logger.info("basket afterPOST Called "); diff --git a/cartridges/int_marketpay_headless/cartridge/scripts/services/marketPay.js b/cartridges/int_marketpay_headless/cartridge/scripts/services/marketPay.js index 73099b4..50f6723 100644 --- a/cartridges/int_marketpay_headless/cartridge/scripts/services/marketPay.js +++ b/cartridges/int_marketpay_headless/cartridge/scripts/services/marketPay.js @@ -61,43 +61,6 @@ function fetchNewToken() { throw new Error("Failed to get token: " + (result.errorMessage || 'Unknown error')); } -function getMarketPayAuthenticateService() { - let authString; - let encodedAuthString; - - return LocalServiceRegistry.createService('int.marketpay.auth', { - createRequest: function (svc, payload) { - svc.setRequestMethod('POST'); - svc.addHeader('Content-Type', 'application/json'); - - authString = payload.username + ':' + payload.password; - encodedAuthString = Encoding.toBase64(new Bytes(authString)); - svc.addHeader('Authorization', 'Basic ' + encodedAuthString); - - return JSON.stringify(payload); - }, - - parseResponse: function (svc, client) { - try { - return JSON.parse(client.text); - } catch (e) { - throw new Error('Failed to parse authentication response: ' + e.message); - } - }, - - filterLogMessage: function (msg) { - return msg; // Mask if needed - }, - - mockCall: function () { - return { - status: 'SUCCESS', - token: 'mock-auth-token' - }; - } - }); -} - function getService(serviceType, method, url) { return LocalServiceRegistry.createService('marketpay.http.service', { createRequest: function (svc, payload) { @@ -297,5 +260,3 @@ module.exports = { getPaymentMethods: getPaymentMethods, createPayment: createPayment }; - - diff --git a/cartridges/int_marketpay_headless/hooks.json b/cartridges/int_marketpay_headless/hooks.json index 36ef4ca..ff51ead 100644 --- a/cartridges/int_marketpay_headless/hooks.json +++ b/cartridges/int_marketpay_headless/hooks.json @@ -12,10 +12,6 @@ "name": "dw.ocapi.shop.basket.payment_methods.modifyGETResponse_v2", "script": "./cartridge/scripts/hooks/basketPaymentHooks.js" }, - { - "name": "dw.ocapi.shop.basket.payment_instrument.modifyPOSTResponse", - "script": "./cartridge/scripts/hooks/basketPaymentHooks.js" - }, { "name": "dw.ocapi.shop.basket.payment_instrument.afterPOST", "script": "./cartridge/scripts/hooks/basketPaymentHooks.js"