{
	"info": {
		"_postman_id": "70629a4f-3be5-4205-a4b4-028b502fe8d4",
		"name": "FnacDarty-370 Patch 20190327_1",
		"schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json"
	},
	"item": [
		{
			"name": "#451 :  Mise à jour discount plan lors de la résiliation d'une souscription",
			"item": [
				{
					"name": "Creat DiscountPlanTerminationNotifScript",
					"event": [
						{
							"listen": "test",
							"script": {
								"id": "4b51b1bd-d7f0-4632-b601-490b832e7987",
								"exec": [
									"var jsonData = JSON.parse(responseBody);",
									"tests[\"is.success\"] = jsonData.actionStatus.status === \"SUCCESS\";"
								],
								"type": "text/javascript"
							}
						}
					],
					"request": {
						"auth": {
							"type": "basic",
							"basic": [
								{
									"key": "username",
									"value": "{{opencell.username}}",
									"type": "string"
								},
								{
									"key": "password",
									"value": "{{opencell.password}}",
									"type": "string"
								}
							]
						},
						"method": "POST",
						"header": [
							{
								"key": "Content-Type",
								"value": "application/json"
							}
						],
						"body": {
							"mode": "raw",
							"raw": "{\n    \"code\": \"org.meveo.service.script.DiscountPlanTerminationNotifScript\",\n    \"description\": \"DiscountPlanTerminationNotifScript\",\n    \"type\": \"JAVA\",\n    \"script\": \"package org.meveo.service.script;\\r\\n\\r\\nimport java.util.Collection;\\r\\nimport java.util.Collections;\\r\\nimport java.util.Date;\\r\\nimport java.util.Map;\\r\\n\\r\\nimport org.meveo.admin.exception.BusinessException;\\r\\nimport org.meveo.event.FieldAudit;\\r\\nimport org.meveo.model.billing.BillingAccount;\\r\\nimport org.meveo.model.billing.DiscountPlanInstance;\\r\\nimport org.meveo.model.billing.Subscription;\\r\\nimport org.meveo.service.billing.impl.BillingAccountService;\\r\\n\\r\\n/**\\r\\n * A script to be fired due to a subscription termination, and whih will terminate the related Discount Plans.\\r\\n * \\r\\n * @author Said Ramli\\r\\n */\\r\\npublic class DiscountPlanTerminationNotifScript extends Script {\\r\\n\\r\\n    private final BillingAccountService baService = (BillingAccountService) getServiceInterface(BillingAccountService.class.getSimpleName());\\r\\n\\r\\n    @Override\\r\\n    public void execute(Map<String, Object> methodContext) throws BusinessException {\\r\\n        try {\\r\\n            \\r\\n            log.debug(\\\" >>>  methodContext {} \\\", methodContext.entrySet());\\r\\n            \\r\\n            Object entityOrEvent = methodContext.get(\\\"entityOrEvent\\\");\\r\\n            if (entityOrEvent == null) {\\r\\n                throw new BusinessException(\\\" Subscription entityOrEvent cannot be null \\\");\\r\\n            }\\r\\n\\r\\n            Subscription s = null;\\r\\n            if (entityOrEvent instanceof FieldAudit) {\\r\\n                s = (Subscription) ((FieldAudit) methodContext.get(\\\"entityOrEvent\\\")).getEntity();\\r\\n            } else {\\r\\n                s = (Subscription) methodContext.get(\\\"entityOrEvent\\\");\\r\\n            }\\r\\n\\r\\n            String contractNumber = s.getCode();\\r\\n            Date terminationDate = s.getTerminationDate();\\r\\n            log.debug(\\\" contractNumber = {}, terminationDate = {} \\\", contractNumber, terminationDate);\\r\\n            \\r\\n            BillingAccount ba = baService.retrieveIfNotManaged(s.getUserAccount().getBillingAccount());\\r\\n            \\r\\n            for (DiscountPlanInstance dpi :safe( ba.getDiscountPlanInstances() )) {\\r\\n               dpi.setEndDate(terminationDate);\\r\\n               log.debug(\\\" >>> terminating dpi=[{}]\\\", dpi.getId());\\r\\n            }\\r\\n\\r\\n        } catch (Exception e) {\\r\\n            String msg = e.getMessage();\\r\\n            log.error(\\\"Error : {} \\\", msg, e); // to dont rollback main transaction ...\\r\\n            methodContext.put(JOB_RESULT_NB_KO, \\\"1\\\");\\r\\n            methodContext.put(JOB_RESULT_REPORT, msg);\\r\\n        }\\r\\n    }\\r\\n\\r\\n    @SuppressWarnings(\\\"unchecked\\\")\\r\\n    public static <T> Collection<T> safe(Collection<T> collection) {\\r\\n        return collection == null ? Collections.EMPTY_LIST : collection;\\r\\n    }\\r\\n\\r\\n}\\r\\n\",\n    \"executionRoles\": [],\n    \"sourcingRoles\": []\n}"
						},
						"url": {
							"raw": "{{opencell.url}}/scriptInstance/createOrUpdate",
							"host": [
								"{{opencell.url}}"
							],
							"path": [
								"scriptInstance",
								"createOrUpdate"
							]
						}
					},
					"response": []
				},
				{
					"name": "Create SUBS_DP_RESILIATION_NOTIF",
					"event": [
						{
							"listen": "test",
							"script": {
								"id": "83d4419b-d4f7-4b69-8b09-5b8c037881ff",
								"exec": [
									"var jsonData = JSON.parse(responseBody);",
									"tests[\"is.success\"] = jsonData.status === \"SUCCESS\";"
								],
								"type": "text/javascript"
							}
						}
					],
					"request": {
						"auth": {
							"type": "basic",
							"basic": [
								{
									"key": "username",
									"value": "{{opencell.username}}",
									"type": "string"
								},
								{
									"key": "password",
									"value": "{{opencell.password}}",
									"type": "string"
								},
								{
									"key": "saveHelperData",
									"value": true,
									"type": "boolean"
								},
								{
									"key": "showPassword",
									"value": false,
									"type": "boolean"
								}
							]
						},
						"method": "POST",
						"header": [
							{
								"key": "Content-Type",
								"value": "application/json"
							},
							{
								"key": "Proxy-Authorization",
								"value": "{{proxy.auth}}",
								"type": "text"
							}
						],
						"body": {
							"mode": "raw",
							"raw": "{\n    \"code\": \"SUBS_DP_RESILIATION_NOTIF\",\n    \"classNameFilter\": \"org.meveo.model.billing.Subscription\",\n    \"eventTypeFilter\": \"STATUS_UPDATED\",\n    \"elFilter\" : \"#{ event.entity.terminationDate != null and event.entity.status == 'RESILIATED'}\",\n    \"scriptInstanceCode\": \"org.meveo.service.script.DiscountPlanTerminationNotifScript\",\n    \"priority\" : 1,\n    \"counterTemplate\": null\n}"
						},
						"url": {
							"raw": "{{opencell.url}}/notification/createOrUpdate",
							"host": [
								"{{opencell.url}}"
							],
							"path": [
								"notification",
								"createOrUpdate"
							]
						}
					},
					"response": []
				}
			]
		},
		{
			"name": "#468 - The status of key SERENITE is not updated ",
			"item": [
				{
					"name": "Additional Scripts",
					"item": [
						{
							"name": "ActivateKeyScript",
							"request": {
								"auth": {
									"type": "basic",
									"basic": [
										{
											"key": "password",
											"value": "{{opencell.password}}",
											"type": "string"
										},
										{
											"key": "username",
											"value": "{{opencell.username}}",
											"type": "string"
										}
									]
								},
								"method": "POST",
								"header": [
									{
										"key": "Content-Type",
										"value": "application/json"
									},
									{
										"key": "Proxy-Authorization",
										"type": "text",
										"value": "{{proxy.auth}}"
									}
								],
								"body": {
									"mode": "raw",
									"raw": "{\n    \"code\": \"org.meveo.service.script.ActivateKeyScript\",\n    \"description\": \"ActivateKey Script\",\n    \"type\": \"JAVA\",\n    \"script\": \"package org.meveo.service.script;\\r\\n\\r\\nimport org.apache.http.HttpEntity;\\r\\nimport org.apache.http.HttpResponse;\\r\\nimport org.apache.http.StatusLine;\\r\\nimport org.apache.http.client.methods.CloseableHttpResponse;\\r\\nimport org.apache.http.client.methods.HttpPost;\\r\\nimport org.apache.http.entity.StringEntity;\\r\\nimport org.apache.http.impl.client.CloseableHttpClient;\\r\\nimport org.apache.http.impl.client.HttpClients;\\r\\nimport org.apache.http.impl.nio.client.CloseableHttpAsyncClient;\\r\\nimport org.apache.http.impl.nio.client.HttpAsyncClients;\\r\\nimport org.apache.http.util.EntityUtils;\\r\\nimport org.meveo.admin.exception.BusinessException;\\r\\nimport org.meveo.admin.exception.ElementNotFoundException;\\r\\nimport org.meveo.commons.utils.EjbUtils;\\r\\nimport org.meveo.commons.utils.ParamBean;\\r\\nimport org.meveo.commons.utils.ParamBeanFactory;\\r\\nimport org.meveo.model.ICustomFieldEntity;\\r\\nimport org.meveo.model.billing.ServiceInstance;\\r\\nimport org.meveo.model.billing.Subscription;\\r\\nimport org.meveo.model.crm.Provider;\\r\\nimport org.meveo.service.billing.impl.ServiceInstanceService;\\r\\nimport org.meveo.service.billing.impl.SubscriptionService;\\r\\nimport org.meveo.service.crm.impl.CustomFieldInstanceService;\\r\\nimport org.meveo.service.crm.impl.ProviderService;\\r\\nimport org.w3c.dom.CharacterData;\\r\\nimport org.w3c.dom.Document;\\r\\nimport org.w3c.dom.Element;\\r\\nimport org.w3c.dom.Node;\\r\\nimport org.xml.sax.InputSource;\\r\\nimport org.xml.sax.SAXException;\\r\\n\\r\\nimport javax.xml.parsers.DocumentBuilder;\\r\\nimport javax.xml.parsers.DocumentBuilderFactory;\\r\\nimport javax.xml.parsers.ParserConfigurationException;\\r\\nimport java.io.IOException;\\r\\nimport java.io.StringReader;\\r\\nimport java.text.SimpleDateFormat;\\r\\nimport java.util.Date;\\r\\nimport java.util.HashMap;\\r\\nimport java.util.Map;\\r\\nimport java.util.concurrent.*;\\r\\n\\r\\n\\r\\n/**\\r\\n * @author Mounir Bahije\\r\\n * <p>\\r\\n * Call ActivateKeyScript of Serenite Web Service\\r\\n * <p>\\r\\n * Execute Context Variable :\\r\\n * + action        + numeroContrat     + source        + cle\\r\\n * + numeroVente   + offre             + engagement    + recurrence\\r\\n * + essai         + login             + civilite      + nom\\r\\n * + prenom        + numVoie           + typeVoie      + nomVoie\\r\\n * + codePostal    + ville             + numTelFixe    + numTelMobile\\r\\n * + emailContact\\r\\n */\\r\\n\\r\\n\\r\\npublic class ActivateKeyScript extends Script {\\r\\n\\r\\n    private SubscriptionService subscriptionService = (SubscriptionService) getServiceInterface(\\\"SubscriptionService\\\");\\r\\n    private ServiceInstanceService serviceInstanceService = (ServiceInstanceService) getServiceInterface(\\\"ServiceInstanceService\\\");\\r\\n    private CustomFieldInstanceService cfiService = (CustomFieldInstanceService) getServiceInterface(\\\"CustomFieldInstanceService\\\");\\r\\n    private ProviderService providerService = (ProviderService) getServiceInterface(\\\"ProviderService\\\");\\r\\n    private Provider appProvider = providerService.getProvider();\\r\\n\\r\\n    private static final String CF_FD_URL_WS_SERENITE = \\\"CF_FD_URL_WS_SERENITE\\\";\\r\\n    private static final String CF_FD_ACTION_URI_WS_SERENITE = \\\"CF_FD_ACTION_URI_WS_SERENITE\\\";\\r\\n\\r\\n    private int counter = 0;\\r\\n    private GatewayKeyResponse gatewayKeyResponseGlobal = null;\\r\\n\\r\\n    private ScheduledExecutorService service;\\r\\n\\r\\n\\r\\n    @Override\\r\\n    public void execute(Map<String, Object> methodContext) throws BusinessException {\\r\\n        log.debug(\\\"EXECUTE  methodContext {}\\\", methodContext);\\r\\n\\r\\n        String action = (methodContext.get(\\\"action\\\") == null) ? \\\"\\\" : (String) methodContext.get(\\\"action\\\");\\r\\n        String numeroContrat = (methodContext.get(\\\"numeroContrat\\\") == null) ? \\\"\\\" : (String) methodContext.get(\\\"numeroContrat\\\");\\r\\n        String source = (methodContext.get(\\\"source\\\") == null) ? \\\"\\\" : (String) methodContext.get(\\\"source\\\");\\r\\n        String cle = (methodContext.get(\\\"cle\\\") == null) ? \\\"\\\" : (String) methodContext.get(\\\"cle\\\");\\r\\n        String numeroVente = (methodContext.get(\\\"numeroVente\\\") == null) ? \\\"\\\" : (String) methodContext.get(\\\"numeroVente\\\");\\r\\n        String offre = (methodContext.get(\\\"offre\\\") == null) ? \\\"\\\" : (String) methodContext.get(\\\"offre\\\");\\r\\n        String engagement = (methodContext.get(\\\"engagement\\\") == null) ? \\\"\\\" : (String) methodContext.get(\\\"engagement\\\");\\r\\n        String recurrence = (methodContext.get(\\\"recurrence\\\") == null) ? \\\"\\\" : (String) methodContext.get(\\\"recurrence\\\");\\r\\n        String essai = (methodContext.get(\\\"essai\\\") == null) ? \\\"\\\" : (String) methodContext.get(\\\"essai\\\");\\r\\n        String login = (methodContext.get(\\\"login\\\") == null) ? \\\"\\\" : (String) methodContext.get(\\\"login\\\");\\r\\n        String civilite = (methodContext.get(\\\"civilite\\\") == null) ? \\\"\\\" : (String) methodContext.get(\\\"civilite\\\");\\r\\n        String nom = (methodContext.get(\\\"nom\\\") == null) ? \\\"\\\" : (String) methodContext.get(\\\"nom\\\");\\r\\n        String prenom = (methodContext.get(\\\"prenom\\\") == null) ? \\\"\\\" : (String) methodContext.get(\\\"prenom\\\");\\r\\n        String numVoie = (methodContext.get(\\\"numVoie\\\") == null) ? \\\"\\\" : (String) methodContext.get(\\\"numVoie\\\");\\r\\n        String typeVoie = (methodContext.get(\\\"typeVoie\\\") == null) ? \\\"\\\" : (String) methodContext.get(\\\"typeVoie\\\");\\r\\n        String nomVoie = (methodContext.get(\\\"nomVoie\\\") == null) ? \\\"\\\" : (String) methodContext.get(\\\"nomVoie\\\");\\r\\n        String codePostal = (methodContext.get(\\\"codePostal\\\") == null) ? \\\"\\\" : (String) methodContext.get(\\\"codePostal\\\");\\r\\n        String ville = (methodContext.get(\\\"ville\\\") == null) ? \\\"\\\" : (String) methodContext.get(\\\"ville\\\");\\r\\n        String numTelFixe = (methodContext.get(\\\"numTelFixe\\\") == null) ? \\\"\\\" : (String) methodContext.get(\\\"numTelFixe\\\");\\r\\n        String numTelMobile = (methodContext.get(\\\"numTelMobile\\\") == null) ? \\\"\\\" : (String) methodContext.get(\\\"numTelMobile\\\");\\r\\n        String emailContact = (methodContext.get(\\\"emailContact\\\") == null) ? \\\"\\\" : (String) methodContext.get(\\\"emailContact\\\");\\r\\n\\r\\n        String soapEnvBody = \\\"\\\" +\\r\\n                \\\"<action>\\\" + action + \\\"</action>\\\" +\\r\\n                \\\"<numeroContrat>\\\" + numeroContrat + \\\"</numeroContrat>\\\" +\\r\\n                \\\"<source>\\\" + source + \\\"</source>\\\" +\\r\\n                \\\"<cle>\\\" + cle + \\\"</cle>\\\" +\\r\\n                \\\"<numeroVente>\\\" + numeroVente + \\\"</numeroVente>\\\" +\\r\\n                \\\"<offre>\\\" + offre + \\\"</offre>\\\" +\\r\\n                \\\"<engagement>\\\" + engagement + \\\"</engagement>\\\" +\\r\\n                \\\"<recurrence>\\\" + recurrence + \\\"</recurrence>\\\" +\\r\\n                \\\"<essai>\\\" + essai + \\\"</essai>\\\" +\\r\\n                \\\"<login>\\\" + login + \\\"</login>\\\" +\\r\\n                \\\"<civilite>\\\" + civilite + \\\"</civilite>\\\" +\\r\\n                \\\"<nom>\\\" + nom + \\\"</nom>\\\" +\\r\\n                \\\"<prenom>\\\" + prenom + \\\"</prenom>\\\" +\\r\\n                \\\"<numVoie>\\\" + numVoie + \\\"</numVoie>\\\" +\\r\\n                \\\"<typeVoie>\\\" + typeVoie + \\\"</typeVoie>\\\" +\\r\\n                \\\"<nomVoie>\\\" + nomVoie + \\\"</nomVoie>\\\" +\\r\\n                \\\"<codePostal>\\\" + codePostal + \\\"</codePostal>\\\" +\\r\\n                \\\"<ville>\\\" + ville + \\\"</ville>\\\" +\\r\\n                \\\"<numTelFixe>\\\" + numTelFixe + \\\"</numTelFixe>\\\" +\\r\\n                \\\"<numTelMobile>\\\" + numTelMobile + \\\"</numTelMobile>\\\" +\\r\\n                \\\"<emailContact>\\\" + emailContact + \\\"</emailContact>\\\" +\\r\\n                \\\"\\\";\\r\\n\\r\\n        final String urlWS = (String) this.fetchCFConfigValue(appProvider, CF_FD_URL_WS_SERENITE, true);\\r\\n        final String actionURI = (String) this.fetchCFConfigValue(appProvider, CF_FD_ACTION_URI_WS_SERENITE, true);\\r\\n\\r\\n\\r\\n        GatewayKeyResponse response = callWebService(soapEnvBody, urlWS, actionURI, numeroContrat);\\r\\n        methodContext.clear();\\r\\n        if (response != null) {\\r\\n            methodContext.put(\\\"statut\\\", response.getStatut());\\r\\n            methodContext.put(\\\"response\\\", response);\\r\\n        } else {\\r\\n            methodContext.put(\\\"statut\\\", \\\"KO\\\");\\r\\n        }\\r\\n    }\\r\\n\\r\\n    public GatewayKeyResponse callWebService(String soapEnvBody, String urlWS, String actionURI, String numeroContrat) {\\r\\n\\r\\n        String body = \\\"<soapenv:Envelope xmlns:soapenv=\\\\\\\"http://schemas.xmlsoap.org/soap/envelope/\\\\\\\" xmlns:gat=\\\\\\\"\\\" + urlWS + \\\"\\\\\\\"><soapenv:Header/><soapenv:Body><gat:activateKey><activateKeyRequest>\\\" + soapEnvBody + \\\"</activateKeyRequest></gat:activateKey></soapenv:Body></soapenv:Envelope>\\\";\\r\\n\\r\\n        StringEntity stringEntity = new StringEntity(body, \\\"UTF-8\\\");\\r\\n        stringEntity.setChunked(true);\\r\\n        // Request parameters and other properties.\\r\\n        HttpPost httpPost = new HttpPost(urlWS);\\r\\n        httpPost.setEntity(stringEntity);\\r\\n        httpPost.setHeader(\\\"SOAPAction\\\", actionURI);\\r\\n\\r\\n        // Execute and get the response.\\r\\n        CloseableHttpClient httpClient = HttpClients.createDefault();\\r\\n        CloseableHttpResponse response = null;\\r\\n        int x_attempts = 0;\\r\\n        int y_delay = 0;\\r\\n        ParamBeanFactory paramBeanFactory = (ParamBeanFactory) EjbUtils.getServiceInterface(ParamBeanFactory.class.getSimpleName());\\r\\n\\r\\n        ParamBean paramBean = paramBeanFactory.getInstance();\\r\\n        String xStrAttempts = paramBean.getProperty(\\\"activateKey.x.attempts\\\", \\\"0\\\");\\r\\n        String yStrDelay = paramBean.getProperty(\\\"activateKey.y.delay\\\", \\\"0\\\");\\r\\n        x_attempts = Integer.valueOf(xStrAttempts);\\r\\n        y_delay = Integer.valueOf(yStrDelay);\\r\\n        try {\\r\\n            boolean responseOK = false;\\r\\n            response = httpClient.execute(httpPost);\\r\\n            if (response != null) {\\r\\n                StatusLine statusLine = response.getStatusLine();\\r\\n                if (statusLine != null) {\\r\\n                    int statusCode = statusLine.getStatusCode();\\r\\n                    if (statusCode == 200) {\\r\\n                        updateLicenseStatus(numeroContrat);\\r\\n                        responseOK = true;\\r\\n                        log.info(\\\"in ActivateKeyScript : First call : OK\\\");\\r\\n                    }\\r\\n                }\\r\\n            }\\r\\n            if (responseOK) {\\r\\n                return gatewayKeyResponseFromHttpResponse(response);\\r\\n            } else {\\r\\n                try {\\r\\n                    log.info(\\\"in ActivateKeyScript : First call : KO -> retryCallWebService\\\");\\r\\n                    loopCallWS(x_attempts, y_delay, httpPost, numeroContrat);\\r\\n                } catch (Exception e) {\\r\\n                    log.error(\\\"Exception in ActivateKeyScript.retryCallWebService :\\\", e);\\r\\n                }\\r\\n            }\\r\\n        } catch (Exception e) {\\r\\n            loopCallWS(x_attempts, y_delay, httpPost, numeroContrat);\\r\\n            log.error(\\\"Exception in ActivateKeyScript :\\\", e);\\r\\n        }\\r\\n        return null;\\r\\n    }\\r\\n\\r\\n    public GatewayKeyResponse gatewayKeyResponseFromHttpResponse(HttpResponse response) throws IOException, ParserConfigurationException, SAXException {\\r\\n        HttpEntity entity = response.getEntity();\\r\\n        String soapResponse = EntityUtils.toString(entity);\\r\\n        DocumentBuilder db = DocumentBuilderFactory.newInstance().newDocumentBuilder();\\r\\n        InputSource is = new InputSource();\\r\\n        is.setCharacterStream(new StringReader(soapResponse));\\r\\n        Document doc = db.parse(is);\\r\\n        if (doc == null) {\\r\\n            log.error(\\\"Error in ActivateKeyScript : doc is null\\\");\\r\\n            return null;\\r\\n        }\\r\\n        String cle = getCharacterDataFromElement((Element) (doc.getElementsByTagName(\\\"cle\\\")).item(0));\\r\\n        String statut = getCharacterDataFromElement((Element) (doc.getElementsByTagName(\\\"statut\\\")).item(0));\\r\\n        String type = getCharacterDataFromElement((Element) (doc.getElementsByTagName(\\\"type\\\")).item(0));\\r\\n        String motif = getCharacterDataFromElement((Element) (doc.getElementsByTagName(\\\"motif\\\")).item(0));\\r\\n        GatewayKeyResponse gatewayKeyResponse = new GatewayKeyResponse();\\r\\n        gatewayKeyResponse.setCle(cle);\\r\\n        gatewayKeyResponse.setStatut(statut);\\r\\n        gatewayKeyResponse.setType(type);\\r\\n        gatewayKeyResponse.setMotif(motif);\\r\\n        return gatewayKeyResponse;\\r\\n    }\\r\\n\\r\\n    public void loopCallWS(int x_attempts, int y_delay, HttpPost httpPost, String numeroContrat) {\\r\\n        Runnable runnable = new Runnable() {\\r\\n            public void run() {\\r\\n                retryCallWebService(httpPost, x_attempts, numeroContrat);\\r\\n            }\\r\\n        };\\r\\n        service = Executors.newSingleThreadScheduledExecutor();\\r\\n        service.scheduleAtFixedRate(runnable, 0, y_delay, TimeUnit.SECONDS);\\r\\n    }\\r\\n\\r\\n    public void retryCallWebService(HttpPost httpPost, int x_attempts, String numeroContrat) {\\r\\n        counter++;\\r\\n        try {\\r\\n            CloseableHttpAsyncClient client = HttpAsyncClients.createDefault();\\r\\n            client.start();\\r\\n            Future<HttpResponse> future = client.execute(httpPost, null);\\r\\n            HttpResponse response = null;\\r\\n\\r\\n            if (counter > x_attempts) {\\r\\n                future.cancel(false);\\r\\n                service.shutdown();\\r\\n            }\\r\\n            response = future.get();\\r\\n\\r\\n            boolean responseOK = false;\\r\\n\\r\\n            if (response != null) {\\r\\n                StatusLine statusLine = response.getStatusLine();\\r\\n                if (statusLine != null) {\\r\\n                    int statusCode = statusLine.getStatusCode();\\r\\n                    if (statusCode == 200) {\\r\\n                        responseOK = true;\\r\\n                    }\\r\\n                }\\r\\n            }\\r\\n\\r\\n\\r\\n            if (responseOK) {\\r\\n                updateLicenseStatus(numeroContrat);\\r\\n                future.cancel(false);\\r\\n                service.shutdown();\\r\\n            }\\r\\n        } catch (InterruptedException e) {\\r\\n            log.error(\\\"Exception in ActivateKeyScript :\\\", e);\\r\\n        } catch (ExecutionException e) {\\r\\n            log.error(\\\"Exception in ActivateKeyScript :\\\", e);\\r\\n        } catch (ElementNotFoundException e) {\\r\\n            log.error(\\\"Exception in ActivateKeyScript :\\\", e);\\r\\n        }\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * get Data From a Dom Element\\r\\n     *\\r\\n     * @param element\\r\\n     * @return\\r\\n     */\\r\\n\\r\\n    public static String getCharacterDataFromElement(Element element) {\\r\\n        Node child = element.getFirstChild();\\r\\n        if (child instanceof CharacterData) {\\r\\n            CharacterData cd = (CharacterData) child;\\r\\n            return cd.getData();\\r\\n        }\\r\\n        return \\\"\\\";\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * GatewayKeyResponse : the response class of ReservKey method\\r\\n     */\\r\\n    class GatewayKeyResponse implements java.io.Serializable {\\r\\n        private String cle;\\r\\n\\r\\n        private String statut;\\r\\n        private String type;\\r\\n        private String motif;\\r\\n\\r\\n        public GatewayKeyResponse() {\\r\\n        }\\r\\n\\r\\n        public GatewayKeyResponse(\\r\\n                String cle,\\r\\n                String statut,\\r\\n                String type,\\r\\n                String motif) {\\r\\n            this.cle = cle;\\r\\n            this.statut = statut;\\r\\n            this.type = type;\\r\\n            this.motif = motif;\\r\\n        }\\r\\n\\r\\n        /**\\r\\n         * Gets the cle value for this GatewayKeyResponse.\\r\\n         *\\r\\n         * @return cle\\r\\n         */\\r\\n        public String getCle() {\\r\\n            return cle;\\r\\n        }\\r\\n\\r\\n        /**\\r\\n         * Sets the cle value for this GatewayKeyResponse.\\r\\n         *\\r\\n         * @param cle\\r\\n         */\\r\\n        public void setCle(String cle) {\\r\\n            this.cle = cle;\\r\\n        }\\r\\n\\r\\n        /**\\r\\n         * Gets the statut value for this GatewayKeyResponse.\\r\\n         *\\r\\n         * @return statut\\r\\n         */\\r\\n        public String getStatut() {\\r\\n            return statut;\\r\\n        }\\r\\n\\r\\n        /**\\r\\n         * Sets the statut value for this GatewayKeyResponse.\\r\\n         *\\r\\n         * @param statut\\r\\n         */\\r\\n        public void setStatut(String statut) {\\r\\n            this.statut = statut;\\r\\n        }\\r\\n\\r\\n        /**\\r\\n         * Gets the type value for this GatewayKeyResponse.\\r\\n         *\\r\\n         * @return type\\r\\n         */\\r\\n        public String getType() {\\r\\n            return type;\\r\\n        }\\r\\n\\r\\n        /**\\r\\n         * Sets the type value for this GatewayKeyResponse.\\r\\n         *\\r\\n         * @param type\\r\\n         */\\r\\n        public void setType(String type) {\\r\\n            this.type = type;\\r\\n        }\\r\\n\\r\\n        /**\\r\\n         * Gets the motif value for this GatewayKeyResponse.\\r\\n         *\\r\\n         * @return motif\\r\\n         */\\r\\n        public String getMotif() {\\r\\n            return motif;\\r\\n        }\\r\\n\\r\\n        /**\\r\\n         * Sets the motif value for this GatewayKeyResponse.\\r\\n         *\\r\\n         * @param motif\\r\\n         */\\r\\n        public void setMotif(String motif) {\\r\\n            this.motif = motif;\\r\\n        }\\r\\n    }\\r\\n\\r\\n    private Object fetchCFConfigValue(ICustomFieldEntity entity, String cfKey, boolean isMandatory) throws BusinessException {\\r\\n        Object cfValue = cfiService.getCFValue(entity, cfKey);\\r\\n        if (isMandatory && (cfValue == null || (cfValue instanceof String && org.apache.commons.lang3.StringUtils.isEmpty(String.valueOf(cfValue))))) {\\r\\n            throw new BusinessException(\\\" Missing mandatory config [\\\" + cfKey + \\\"]\\\");\\r\\n        }\\r\\n        return cfValue;\\r\\n    }\\r\\n\\r\\n    private void updateLicenseStatus(String numeroContrat) throws ElementNotFoundException {\\r\\n\\r\\n        log.info(\\\"in ActivateKeyScript : retryCallWebService = OK\\\");\\r\\n\\r\\n        if (subscriptionService == null) {\\r\\n            log.error(\\\"Failed to load subscriptionService\\\");\\r\\n            throw new RuntimeException(\\\"Failed to load subscriptionService\\\");\\r\\n        }\\r\\n        Subscription subscription =  subscriptionService.findByCode(numeroContrat);\\r\\n\\r\\n        if (subscription == null) {\\r\\n            log.error(\\\"Failed to find subscription by code : \\\" + numeroContrat);\\r\\n            throw new ElementNotFoundException(numeroContrat, \\\"subscription\\\" );\\r\\n        }\\r\\n        SimpleDateFormat df = new SimpleDateFormat(\\\"DD/MM/YY hh:mm:ss\\\");\\r\\n        String  currentDate = df.format(new Date());\\r\\n        for (ServiceInstance service : subscription.getServiceInstances()) {\\r\\n            if (\\\"SE_FD_LICENCE\\\".equals(service.getCode())) {\\r\\n                boolean isActivable = true;\\r\\n                try {\\r\\n                    log.debug(\\\"serviceInstance={}\\\", service);\\r\\n                    cfiService.setCFValue(service, \\\"CF_SE_FD_LICENCE_STATUS\\\", \\\"ACTIVABLE\\\");\\r\\n                    log.info(\\\"Setting CF_SE_FD_LICENCE_STATUS to ACTIVABLE\\\");\\r\\n\\r\\n                    Map<String, Object> statusHistory = (Map<String, Object>) cfiService.getCFValue(service, \\\"CF_SE_FD_LICENCE_STATUS_HISTORY\\\");\\r\\n                    if (statusHistory == null) {\\r\\n                        statusHistory = new HashMap<String, Object>();\\r\\n                    }\\r\\n                    statusHistory.put(currentDate, \\\"ACTIVABLE\\\");\\r\\n                    cfiService.setCFValue(service, \\\"CF_SE_FD_LICENCE_STATUS_HISTORY\\\", statusHistory);\\r\\n\\r\\n                } catch (BusinessException e) {\\r\\n                    log.error(\\\"Failed to activate service : \\\" + e);\\r\\n                }\\r\\n            }\\r\\n        }\\r\\n    }\\r\\n}\",\n    \"executionRoles\": [],\n    \"sourcingRoles\": []\n}"
								},
								"url": {
									"raw": "{{opencell.url}}/scriptInstance/createOrUpdate",
									"host": [
										"{{opencell.url}}"
									],
									"path": [
										"scriptInstance",
										"createOrUpdate"
									]
								}
							},
							"response": []
						}
					],
					"_postman_isSubFolder": true
				}
			]
		},
		{
			"name": "#386 - CAT - Mode de calcul des remises de type one shot charge en %",
			"item": [
				{
					"name": "Discounts",
					"item": [
						{
							"name": "SCRIPT|ComputeDiscountWithOrWithoutADH",
							"event": [
								{
									"listen": "test",
									"script": {
										"id": "f39f7a91-b793-460f-ac72-b0afd39fd6c8",
										"exec": [
											"var jsonData = JSON.parse(responseBody);",
											"tests[\"is.success\"] = jsonData.actionStatus.status === \"SUCCESS\";",
											"tests[\"is.compiled\"] = jsonData.compilationErrors.length === 0;",
											""
										],
										"type": "text/javascript"
									}
								}
							],
							"request": {
								"auth": {
									"type": "basic",
									"basic": [
										{
											"key": "username",
											"value": "{{opencell.username}}",
											"type": "string"
										},
										{
											"key": "password",
											"value": "{{opencell.password}}",
											"type": "string"
										},
										{
											"key": "saveHelperData",
											"value": true,
											"type": "boolean"
										},
										{
											"key": "showPassword",
											"value": false,
											"type": "boolean"
										}
									]
								},
								"method": "POST",
								"header": [
									{
										"key": "Proxy-Authorization",
										"value": "{{proxy.auth}}"
									},
									{
										"key": "Content-Type",
										"value": "application/json"
									},
									{
										"key": "Authorization",
										"value": "Basic b3BlbmNlbGwuYWRtaW46b3BlbmNlbGwuYWRtaW4="
									}
								],
								"body": {
									"mode": "raw",
									"raw": "{\r\n    \"code\": \"org.meveo.service.script.{{request.label.1}}\",\r\n    \"description\": \"Computes the discount based on the occurence of a valid ADH discount\",\r\n    \"type\": \"JAVA\",\r\n    \"script\": \"package org.meveo.service.script;\\n\\nimport java.util.Map;\\nimport java.util.List;\\nimport java.util.Date;\\nimport java.math.BigDecimal;\\n\\nimport org.slf4j.Logger;\\nimport org.slf4j.LoggerFactory;\\n\\nimport org.meveo.service.script.Script;\\nimport org.meveo.admin.exception.BusinessException;\\nimport org.meveo.model.shared.DateUtils;\\n\\nimport org.meveo.model.billing.BillingAccount;\\nimport org.meveo.model.billing.Subscription;\\nimport org.meveo.model.catalog.DiscountPlan;\\nimport org.meveo.model.catalog.DiscountPlanItem;\\nimport org.meveo.model.catalog.DiscountPlanItemTypeEnum;\\nimport org.meveo.model.billing.DiscountPlanInstance;\\nimport org.meveo.model.billing.WalletOperation;\\n\\nimport org.meveo.service.crm.impl.CustomFieldInstanceService;\\nimport org.meveo.service.billing.impl.SubscriptionService;\\n\\n/**\\n\\n    Rating script for One-shot Other discounts\\n    Computes the discount based on the occurence of a valid ADH discount\\n\\n*/\\npublic class ComputeDiscountWithOrWithoutADH extends Script {\\n    private static final Logger log = LoggerFactory.getLogger(ComputeDiscountWithOrWithoutADH.class);\\n\\n    private CustomFieldInstanceService cfiService = (CustomFieldInstanceService) getServiceInterface(\\\"CustomFieldInstanceService\\\");\\n    private SubscriptionService suService = (SubscriptionService) getServiceInterface(\\\"SubscriptionService\\\");\\n\\n    @Override\\n    public void execute(Map<String, Object> context) throws BusinessException {\\n        log.info(\\\"EXECUTE context={}\\\", context);\\n\\n        WalletOperation wo = (WalletOperation) context.get(\\\"CONTEXT_ENTITY\\\");\\n        if(wo == null) {\\n            throw new BusinessException(\\\"WalletOperation is null\\\");\\n        }\\n        log.debug(\\\"WalletOperation={}\\\", wo);\\n\\n        Subscription su = wo.getSubscription();\\n        if(su == null) {\\n            throw new BusinessException(\\\"Subscription is null\\\");\\n        }\\n        log.debug(\\\"subscription={}\\\", su);\\n\\n\\n        // Checks for DiscountPlanInstances\\n        BillingAccount ba = su.getUserAccount().getBillingAccount();\\n        List<DiscountPlanInstance> discountPlanInstances = ba.getDiscountPlanInstances();\\n        if(discountPlanInstances == null || discountPlanInstances.isEmpty()) {\\n            log.info(\\\"No discount plan instance for {}\\\", ba);\\n        } else {\\n            // Browse through DiscountPlanInstances\\n            DiscountPlanInstance discountPlanInstance = discountPlanInstances.stream()\\n                    .filter(dpi->dpi.getDiscountPlan().getCode().startsWith(\\\"PROMOADH\\\"))\\n                    .filter(dpi->DateUtils.isDateTimeWithinPeriod(new Date(), dpi.getStartDate(), dpi.getEndDate()))\\n                    .findFirst()\\n                    .orElse(null);\\n\\n            if( discountPlanInstance == null ) {\\n                log.debug(\\\"No valid PROMOADH discount plan instance for {}\\\", ba);\\n            } else {\\n                DiscountPlan discountPlan = discountPlanInstance.getDiscountPlan();\\n                log.info(\\\"Found instance {} of DiscountPlan[id={}, code={}] for {}\\\"\\n                    , discountPlanInstance\\n                    , discountPlan.getId()\\n                    , discountPlan.getCode()\\n                    , ba);\\n\\n                // Compute discount ADH\\n                // >>>>>>>>>>>>>>>\\n                // !!! WARNING !!! \\n                // <<<<<<<<<<<<<<<\\n                // Here we assume that there's at least ONE and only ONE DiscountPlanItem per DiscountPlan, and a simple discountValue (no EL)\\n                DiscountPlanItem discountPlanItem = discountPlan.getDiscountPlanItems().get(0);\\n                DiscountPlanItemTypeEnum discountType = discountPlanItem.getDiscountPlanItemType();\\n                BigDecimal discountValue = discountPlanItem.getDiscountValue();\\n\\n                log.debug(\\\"Computing ADH discount [type={}, value={}] for {}\\\", discountType, discountValue, ba);\\n\\n                BigDecimal ONE_HUNDRED = BigDecimal.valueOf(100);\\n                if( discountType == DiscountPlanItemTypeEnum.FIXED ) {\\n                    if(discountPlan.getCode().endsWith(\\\"_SA\\\")) {\\n                        // Sérénité Yearly\\n                        wo.setAmountWithTax(wo.getAmountWithTax().add(discountValue.divide(BigDecimal.valueOf(12),2,BigDecimal.ROUND_HALF_UP)));\\n                    } else {\\n                        wo.setAmountWithTax(wo.getAmountWithTax().add(discountValue));\\n                    }\\n\\n                } else {\\n                    wo.setAmountWithTax(wo.getAmountWithTax().multiply(discountValue).divide(ONE_HUNDRED,2,BigDecimal.ROUND_HALF_UP));\\n                }\\n\\n                wo.setAmountWithoutTax(wo.getAmountWithTax().multiply(ONE_HUNDRED).divide(wo.getTaxPercent().add(ONE_HUNDRED),2,BigDecimal.ROUND_HALF_UP));\\n                wo.setAmountTax(wo.getAmountWithTax().subtract(wo.getAmountWithoutTax()));\\n\\n                log.info(\\\"New amounts are amountWithTax={}, amountWithoutTax={}, amountTax={}\\\"\\n                    , wo.getAmountWithTax(), wo.getAmountWithoutTax(), wo.getAmountTax() );\\n            }\\n        }\\n    }\\n}\",\r\n    \"executionRoles\": [],\r\n    \"sourcingRoles\": []\r\n}"
								},
								"url": {
									"raw": "{{opencell.url}}/scriptInstance/createOrUpdate",
									"host": [
										"{{opencell.url}}"
									],
									"path": [
										"scriptInstance",
										"createOrUpdate"
									]
								}
							},
							"response": []
						}
					],
					"_postman_isSubFolder": true
				}
			]
		},
		{
			"name": "#290 : Job Exec - Clean up unvalid subscriptions",
			"item": [
				{
					"name": "Create CleanUpInactiveSubscriptionsScript",
					"request": {
						"auth": {
							"type": "basic",
							"basic": [
								{
									"key": "username",
									"value": "{{opencell.username}}",
									"type": "string"
								},
								{
									"key": "password",
									"value": "{{opencell.password}}",
									"type": "string"
								}
							]
						},
						"method": "POST",
						"header": [
							{
								"key": "Content-Type",
								"value": "application/json"
							},
							{
								"key": "Proxy-Authorization",
								"value": "{{proxy.auth}}",
								"type": "text"
							}
						],
						"body": {
							"mode": "raw",
							"raw": "{\r\n    \"code\": \"org.meveo.service.script.CleanUpInactiveSubscriptionsScript\",\r\n    \"description\": \"CleanUpInactiveSubscriptionsScript\",\r\n    \"type\": \"JAVA\",\r\n    \"script\": \"package org.meveo.service.script;\\r\\n\\r\\nimport java.util.ArrayList;\\r\\nimport java.util.Calendar;\\r\\nimport java.util.Collection;\\r\\nimport java.util.Collections;\\r\\nimport java.util.Date;\\r\\nimport java.util.HashMap;\\r\\nimport java.util.HashSet;\\r\\nimport java.util.List;\\r\\nimport java.util.Map;\\r\\nimport java.util.Set;\\r\\n\\r\\nimport org.apache.commons.collections4.CollectionUtils;\\r\\nimport org.meveo.admin.exception.BusinessException;\\r\\nimport org.meveo.model.billing.BillingAccount;\\r\\nimport org.meveo.model.billing.ChargeInstance;\\r\\nimport org.meveo.model.billing.Subscription;\\r\\nimport org.meveo.model.billing.UserAccount;\\r\\nimport org.meveo.model.crm.Customer;\\r\\nimport org.meveo.model.payments.CustomerAccount;\\r\\nimport org.meveo.service.billing.impl.ChargeInstanceService;\\r\\nimport org.meveo.service.billing.impl.RejectedBillingAccountService;\\r\\nimport org.meveo.service.billing.impl.SubscriptionService;\\r\\nimport org.meveo.service.crm.impl.CustomerService;\\r\\nimport org.meveo.service.order.OrderItemService;\\r\\nimport org.meveo.service.payments.impl.CustomerAccountService;\\r\\n\\r\\n/**\\r\\n * A script purging inactive subscriptions.\\r\\n * \\r\\n * @author Said Ramli\\r\\n */\\r\\npublic class CleanUpInactiveSubscriptionsScript extends Script {\\r\\n\\r\\n    private final SubscriptionService subscriptionService = (SubscriptionService) getServiceInterface(SubscriptionService.class.getSimpleName());\\r\\n    private final CustomerAccountService customerAccountService = (CustomerAccountService) getServiceInterface(CustomerAccountService.class.getSimpleName());\\r\\n    private final CustomerService customerService = (CustomerService) getServiceInterface(CustomerService.class.getSimpleName());\\r\\n    private final OrderItemService orderItemService = (OrderItemService) getServiceInterface(OrderItemService.class.getSimpleName());\\r\\n    private final ChargeInstanceService chargeInstanceService = (ChargeInstanceService) getServiceInterface(ChargeInstanceService.class.getSimpleName());\\r\\n    private final RejectedBillingAccountService rejectedBAService = (RejectedBillingAccountService) getServiceInterface(RejectedBillingAccountService.class.getSimpleName());\\r\\n\\r\\n    @Override\\r\\n    public void execute(Map<String, Object> methodContext) throws BusinessException {\\r\\n        String nbrDaysBefore = (String) methodContext.get(\\\"SINCE\\\");\\r\\n\\r\\n        Date validityDate = getValidityDate(nbrDaysBefore);\\r\\n        Set<Long> listCustomerIds = new HashSet<>();\\r\\n\\r\\n        // removing C / CA having no Subscriptions\\r\\n        List<CustomerAccount> listCAsHavingNoSubscription = findCAsHavingNoSubscription(validityDate);\\r\\n        if (listCAsHavingNoSubscription == null) {\\r\\n            listCAsHavingNoSubscription = new ArrayList<>();\\r\\n        }\\r\\n\\r\\n        Set<CustomerAccount> listCAsToRemove = new HashSet<>(listCAsHavingNoSubscription);\\r\\n\\r\\n        // Removing C / CA having no Active Subscriptions\\r\\n        List<Subscription> listSubscriptionIdsToRemove = findListSubscriptionsToRemove(validityDate);\\r\\n        for (Subscription s : safe(listSubscriptionIdsToRemove)) {\\r\\n            CustomerAccount ca = s.getUserAccount().getBillingAccount().getCustomerAccount();\\r\\n            if (!uaHasOrderItems(ca)) {\\r\\n                this.removeChargeInstances(s);\\r\\n                listCAsToRemove.add(ca); // For FD we have one Subscription per CustomerAccount , so removing the Subscription should lead to remove its CustomerAccount also\\r\\n            }\\r\\n        }\\r\\n\\r\\n        for (CustomerAccount ca : safe(listCAsToRemove)) {\\r\\n            if (CollectionUtils.isEmpty(ca.getAccountOperations())) {\\r\\n                listCustomerIds.add(ca.getCustomer().getId());\\r\\n                ca.getCustomer().getCustomerAccounts().remove(ca);\\r\\n                try {\\r\\n                    this.removeRejectedBAsIfExist(ca);\\r\\n                    log.debug(\\\" >>> removing ca [id={}] \\\", ca.getId());\\r\\n                    customerAccountService.remove(ca); // we use this remove method instead of customerAccountService.remove(listCAsIds) in order to benefit from CascadeType.REMOVE\\r\\n                } catch (Exception e) {\\r\\n                    log.error(\\\"Error on customerAccountService.remove(ca) [{}] ,  [{}] \\\", ca, e.getMessage(), e);\\r\\n                }\\r\\n            }\\r\\n        }\\r\\n        // removing empty Customers\\r\\n        this.removeCustomerIfEmpty(listCustomerIds);\\r\\n    }\\r\\n\\r\\n    @SuppressWarnings(\\\"unchecked\\\")\\r\\n    private void removeRejectedBAsIfExist(CustomerAccount ca) {\\r\\n        log.debug(\\\" >>> removeRejectedBAsIfExist [ca={}]\\\",ca);\\r\\n        try {\\r\\n            List<BillingAccount>  listBAs = ca.getBillingAccounts();\\r\\n            if(CollectionUtils.isNotEmpty(listBAs)) {\\r\\n                String query = \\\"select rba.id from RejectedBillingAccount rba where rba.billingAccount=:ba\\\";\\r\\n                Map<String, Object> queryParams = new HashMap<>();\\r\\n                BillingAccount ba = listBAs.get(0);\\r\\n                queryParams.put(\\\"ba\\\", ba);\\r\\n                List<Long> ids = (List<Long>) orderItemService.executeSelectQuery(query, queryParams);\\r\\n                if (CollectionUtils.isNotEmpty(ids)) {\\r\\n                    rejectedBAService.remove(new HashSet<>(ids));\\r\\n                } else {\\r\\n                    log.debug(\\\" >>>  [BA={}] doesn't have any Rejected BA \\\",ba);\\r\\n                }\\r\\n             } else {\\r\\n                log.debug(\\\" >>>  [ca={}] doesn't have any BA \\\",ca);  \\r\\n            }\\r\\n        } catch (Exception e) {\\r\\n            log.error(\\\"Error on removeRejectedBAsIfExist  [ca={}]\\\",ca);\\r\\n        } \\r\\n        \\r\\n    }\\r\\n\\r\\n    @SuppressWarnings(\\\"unchecked\\\")\\r\\n    private void removeChargeInstances(Subscription subscription) {\\r\\n        try {\\r\\n            String query = \\\"select ci from ChargeInstance ci where ci.subscription =:subscription\\\";\\r\\n            Map<String, Object> queryParams = new HashMap<>();\\r\\n            queryParams.put(\\\"subscription\\\", subscription);\\r\\n            List<ChargeInstance> ids = (List<ChargeInstance>) orderItemService.executeSelectQuery(query, queryParams);\\r\\n\\r\\n            if (CollectionUtils.isNotEmpty(ids)) {\\r\\n                for (ChargeInstance ci : ids) {\\r\\n                    chargeInstanceService.remove(ci);\\r\\n                }\\r\\n            }\\r\\n        } catch (Exception e) {\\r\\n            log.error(\\\"Error on removeChargeInstances  [Subscription={}] ,  [{}] \\\", subscription, e.getMessage(), e);\\r\\n        }\\r\\n    }\\r\\n\\r\\n    @SuppressWarnings(\\\"unchecked\\\")\\r\\n    private boolean uaHasOrderItems(CustomerAccount ca) {\\r\\n        Set<UserAccount> listUAs = new HashSet<>();\\r\\n        try {\\r\\n            for (BillingAccount ba : safe(ca.getBillingAccounts())) {\\r\\n                for (UserAccount ua : safe(ba.getUsersAccounts())) {\\r\\n                    listUAs.add(ua);\\r\\n                }\\r\\n            }\\r\\n\\r\\n            String query = \\\"select oi.id from OrderItem oi where oi.userAccount in :listUAs\\\";\\r\\n            Map<String, Object> queryParams = new HashMap<>();\\r\\n            queryParams.put(\\\"listUAs\\\", listUAs);\\r\\n\\r\\n            List<Long> listOrderItemIds = (List<Long>) orderItemService.executeSelectQuery(query, queryParams);\\r\\n            return CollectionUtils.isNotEmpty(listOrderItemIds);\\r\\n        } catch (Exception e) {\\r\\n            log.error(\\\"Error on uaHasOrderItems for [ca={}] ,  [{}] \\\", ca, e.getMessage(), e);\\r\\n            return true;\\r\\n        }\\r\\n\\r\\n    }\\r\\n\\r\\n    @SuppressWarnings(\\\"unchecked\\\")\\r\\n    private <T> Collection<T> safe(Collection<T> collection) {\\r\\n        return collection == null ? Collections.EMPTY_LIST : collection;\\r\\n    }\\r\\n\\r\\n    private Date getValidityDate(String nbrDaysBefore) {\\r\\n        Long nbrDays = null;\\r\\n        try {\\r\\n            nbrDays = new Long(nbrDaysBefore);\\r\\n        } catch (Exception e) {\\r\\n            nbrDays = new Long(0);\\r\\n        }\\r\\n\\r\\n        log.debug(\\\" >>>>>>>>>>>>> \\\" + nbrDaysBefore);\\r\\n        Calendar validityCal = Calendar.getInstance();\\r\\n        validityCal.set(Calendar.HOUR_OF_DAY, 0);\\r\\n        validityCal.set(Calendar.MINUTE, 0);\\r\\n        validityCal.set(Calendar.SECOND, 0);\\r\\n        validityCal.add(Calendar.DAY_OF_MONTH, nbrDays.intValue());\\r\\n        Date validityDate = validityCal.getTime();\\r\\n        return validityDate;\\r\\n    }\\r\\n\\r\\n    private List<Subscription> findListSubscriptionsToRemove(Date validityDate) {\\r\\n\\r\\n        log.debug(\\\" findListSubscriptionsToRemove -> validityDate = [{}] \\\", validityDate);\\r\\n\\r\\n        List<Subscription> subscriptionHavingInactiveServices = this.findSubscriptionHavingInactiveServices(validityDate);\\r\\n        List<Subscription> listSubscriptionIdsToRemove = new ArrayList<>();\\r\\n\\r\\n        if (CollectionUtils.isNotEmpty(subscriptionHavingInactiveServices)) {\\r\\n            for (Subscription s : subscriptionHavingInactiveServices) {\\r\\n                if (this.subscriptionHasNoActiveServices(s)) {\\r\\n                    listSubscriptionIdsToRemove.add(s);\\r\\n                }\\r\\n            }\\r\\n        }\\r\\n        log.debug(\\\" Found [{}] Subscription to remove\\\", listSubscriptionIdsToRemove.size());\\r\\n        return listSubscriptionIdsToRemove;\\r\\n    }\\r\\n\\r\\n    private void removeCustomerIfEmpty(Set<Long> listCustomerIds) {\\r\\n        log.debug(\\\" >>>>>>>>>>>>> removing empty Customers \\\" + listCustomerIds);\\r\\n        if (CollectionUtils.isNotEmpty(listCustomerIds)) {\\r\\n            for (Long id : listCustomerIds) {\\r\\n                try {\\r\\n                    Customer c = customerService.findById(id);\\r\\n                    if (CollectionUtils.isEmpty(c.getCustomerAccounts())) {\\r\\n                        log.debug(\\\" >>>>>>>>>>>>> removing Customer having no CA, [customer={}] \\\" + id);\\r\\n                        customerService.remove(id);\\r\\n                    }\\r\\n                } catch (BusinessException e) {\\r\\n                    log.error(\\\"Error on removeCustomerIfEmpty [{}] \\\", e.getMessage(), e);\\r\\n                }\\r\\n            }\\r\\n        }\\r\\n    }\\r\\n\\r\\n    @SuppressWarnings(\\\"unchecked\\\")\\r\\n    private List<CustomerAccount> findCAsHavingNoSubscription(Date validityDate) {\\r\\n\\r\\n        try {\\r\\n            StringBuffer query = new StringBuffer(\\r\\n                \\\"select DISTINCT ca from CustomerAccount ca LEFT JOIN ca.billingAccounts ba LEFT JOIN ba.usersAccounts ua LEFT JOIN ua.subscriptions s \\\").append(\\r\\n                    \\\" where ca.dateStatus < :validityDate and ( ca.billingAccounts IS EMPTY OR ba.usersAccounts IS EMPTY OR ua.subscriptions IS EMPTY OR s.serviceInstances IS EMPTY)\\\");\\r\\n\\r\\n            Map<String, Object> queryParams = new HashMap<>();\\r\\n            queryParams.put(\\\"validityDate\\\", validityDate);\\r\\n\\r\\n            Object result = customerAccountService.executeSelectQuery(query.toString(), queryParams);\\r\\n            return (List<CustomerAccount>) result;\\r\\n        } catch (Exception e) {\\r\\n            log.error(\\\" Error on findCAsHavingNoSubscription : [{}] \\\", e.getMessage(), e);\\r\\n            return null;\\r\\n        }\\r\\n    }\\r\\n\\r\\n    @SuppressWarnings(\\\"unchecked\\\")\\r\\n    private boolean subscriptionHasNoActiveServices(Subscription s) {\\r\\n        String query = \\\"select si from ServiceInstance si where si.status = 'ACTIVE' and si.subscription =:subscription\\\";\\r\\n        Map<String, Object> queryParams = new HashMap<>();\\r\\n        queryParams.put(\\\"subscription\\\", s);\\r\\n        Object objSubscription = subscriptionService.executeSelectQuery(query, queryParams);\\r\\n        return objSubscription == null || CollectionUtils.isEmpty((List<Subscription>) objSubscription);\\r\\n    }\\r\\n\\r\\n    @SuppressWarnings(\\\"unchecked\\\")\\r\\n    private List<Subscription> findSubscriptionHavingInactiveServices(Date validityDate) {\\r\\n        try {\\r\\n            StringBuffer query = new StringBuffer(\\\"select DISTINCT s from Subscription s, CustomerAccount ca \\\")\\r\\n                .append(\\\" LEFT JOIN s.serviceInstances service where s.status != 'RESILIATED' and s.status != 'ACTIVE' and s.userAccount.billingAccount.customerAccount = ca \\\")\\r\\n                .append(\\\" and ca.dateStatus < :validityDate  and service.status != 'ACTIVE'\\\");\\r\\n\\r\\n            Map<String, Object> queryParams = new HashMap<>();\\r\\n            queryParams.put(\\\"validityDate\\\", validityDate);\\r\\n            Object objSubscription = subscriptionService.executeSelectQuery(query.toString(), queryParams);\\r\\n\\r\\n            return ((List<Subscription>) objSubscription);\\r\\n        } catch (Exception e) {\\r\\n            log.error(\\\" Error on getSubscription : [{}] \\\", e.getMessage(), e);\\r\\n            return null;\\r\\n        }\\r\\n    }\\r\\n}\\r\\n\",\r\n    \"executionRoles\": [],\r\n    \"sourcingRoles\": []\r\n}"
						},
						"url": {
							"raw": "{{opencell.url}}/scriptInstance/createOrUpdate",
							"host": [
								"{{opencell.url}}"
							],
							"path": [
								"scriptInstance",
								"createOrUpdate"
							]
						}
					},
					"response": []
				}
			]
		},
		{
			"name": "#477 - CAT - Paramétrage analytique Fnac+",
			"item": [
				{
					"name": "FNAC_PLUS|CAL_YEARLY_PERIOD|49|Fnac+|Abonnement annuel - 30 jours d'essai puis 49€/an|- 5% de remise immédiate Livre / Papeterie / Sport / High-Tech / Kids / Bricolage / Jardinage\\n- Des promotions sur les Cd, DVD, Blu-ray\\n- Ventes privées jusqu'à 40% sur une sélection de produits\\n- 10€ offerts tous les 100€ d'achat en chèque cadeau lors des week-ends adhérents\\n- Abonnement 3 mois DEEZER PREMIUM +\\n- Plus de 18 000 spectacles par an à tarif réduit \\n- 5% de remise immédiate sur les travaux photo\\n- Livraison gratuite et illimitée en 1 jour\\n- Livraison gratuite en 2H Chrono\\n- Livraison gratuite en Relais colis\\n- Livraison gratuite chez Darty\\n- Livraison gratuite sur rendez-vous\\n- Livraison et installation gratuite de votre TV\\n- Caisse prioritaire en magasin",
					"event": [
						{
							"listen": "test",
							"script": {
								"id": "4d15ba87-3952-4687-a2e8-298a6dbc507c",
								"exec": [
									"var jsonData = JSON.parse(responseBody);",
									"tests[\"is.success\"] = jsonData.status === \"SUCCESS\";"
								],
								"type": "text/javascript"
							}
						}
					],
					"request": {
						"auth": {
							"type": "basic",
							"basic": [
								{
									"key": "username",
									"value": "{{opencell.username}}",
									"type": "string"
								},
								{
									"key": "password",
									"value": "{{opencell.password}}",
									"type": "string"
								},
								{
									"key": "showPassword",
									"value": false,
									"type": "boolean"
								}
							]
						},
						"method": "POST",
						"header": [
							{
								"key": "Proxy-Authorization",
								"value": "{{proxy.auth}}"
							},
							{
								"key": "Content-Type",
								"value": "application/json"
							},
							{
								"key": "Authorization",
								"value": "Basic b3BlbmNlbGwuYWRtaW46aFViNTJBTTNDZSEh"
							}
						],
						"body": {
							"mode": "raw",
							"raw": "{\r\n    \"code\":\"OF_{{template.code}}_{{request.label.0}}\",\r\n    \"name\":\"{{request.label.3}}\",\r\n    \"description\":\"{{request.label.4}}\",\r\n    \"longDescription\":\"{{request.label.5}}\",\r\n    \"disabled\":false,\r\n    \"lifeCycleStatus\": \"ACTIVE\",\r\n    \"bomCode\":null,\r\n    \"offerTemplateCategoryCode\": \"ADH\",\r\n    \"autoEndOfEngagement\": true,\r\n    \"renewalRule\": {\r\n        \"initialyActiveFor\": 12,\r\n        \"initialyActiveForUnit\": \"MONTH\",\r\n        \"autoRenew\": true,\r\n        \"daysNotifyRenewal\": null,\r\n        \"endOfTermAction\": \"TERMINATE\",\r\n        \"terminationReasonCode\": \"TR_OTHER_REFUND\",\r\n        \"renewFor\": 12,\r\n        \"renewForUnit\": \"MONTH\",\r\n        \"extendAgreementPeriodToSubscribedTillDate\": true\r\n    },\r\n    \"customFields\": { \"customField\": [\r\n    \t{\"code\": \"CF_OF_{{template.code}}_CALENDAR\", \"stringValue\": \"{{request.label.1}}\"},\r\n    \t{\"code\": \"CF_OF_{{template.code}}_PRICE\", \"doubleValue\": {{request.label.2}} },\r\n    \t{\"code\": \"CF_OF_{{template.code}}_LICENCE_ACTIVATION_CODE\", \"stringValue\": \"\"},\r\n    \t{\"code\": \"CF_OF_{{template.code}}_AGREEMENT\", \"longValue\": 12 },\r\n    \t{\"code\": \"CF_OF_{{template.code}}_PRORATA_TER\", \"stringValue\": \"yes\" },\r\n    \t{\"code\": \"CF_OF_SU_{{template.code}}_TRY_DURATION\", \"longValue\": 0 },\r\n    \t{\"code\": \"CF_OF_{{template.code}}_ANALYTIC_OFFER_TYPE\", \"stringValue\": \"ADH\" },\r\n    \t{\"code\": \"CF_OF_{{template.code}}_ANALYTIC_OFFER_PERIODICITY\", \"stringValue\": \"Annuelle\" },\r\n    \t{\"code\": \"CF_OF_{{template.code}}_ANALYTIC_REVENUE_TYPE\", \"stringValue\": \"X\" },\r\n    \t{\"code\": \"CF_OF_{{template.code}}_ANALYTIC_BUSINESS_SECTOR\", \"stringValue\": \"ADM\" },\r\n    \t{\"code\": \"CF_OF_{{template.code}}_TRY_LIST\", \"mapValue\": {\r\n\t\t\t\"PROMOTRY00\": { \"value\": \"0|Pas de Try & Buy\" },\r\n\t\t\t\"PROMOTRY1M\": { \"value\": \"30|Try & Buy 1 mois\" },\r\n\t\t\t\"PROMOTRY3M\": { \"value\": \"90|Try & Buy 3 mois\" },\r\n\t\t\t\"PROMOTRY6M\": { \"value\": \"180|Try & Buy 6 mois\" }\r\n    \t}},\r\n    \t{\"code\": \"CF_OF_{{template.code}}_DISCOUNT_LIST\", \"value\": [\r\n\t\t\t{ \"value\": \"PROMOABO1A\" },\r\n\t\t\t{ \"value\": \"PROMOADH10P\" },\r\n\t\t\t{ \"value\": \"PROMOADH30P\" },\r\n\t\t\t{ \"value\": \"PROMOADH50P\" },\r\n\t\t\t{ \"value\": \"PROMOADH5E\" },\r\n\t\t\t{ \"value\": \"PROMOADH10E\" },\r\n\t\t\t{ \"value\": \"PROMOADH20E\" },\r\n\t\t\t{ \"value\": \"REMABO100P\" },\r\n\t\t\t{ \"value\": \"REMABOLIBRE\" }\r\n    \t]}\r\n    ]},\r\n    \"offerServiceTemplate\": [\r\n\t\t{\"serviceTemplate\":{\"code\":\"SE_{{template.code}}_TRY\"},\"mandatory\":false,\"incompatibleServiceTemplate\":[]},\r\n\t\t{\"serviceTemplate\":{\"code\":\"SE_{{template.code}}_REC_MAIN\"},\"mandatory\":true,\"incompatibleServiceTemplate\":[]}\r\n\t],\r\n    \"offerProductTemplate\": null,\r\n\t\"imageBase64\": \"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\",\r\n\t\"imagePath\": \".png\"\r\n}"
						},
						"url": {
							"raw": "{{opencell.url}}/catalog/offerTemplate/createOrUpdate",
							"host": [
								"{{opencell.url}}"
							],
							"path": [
								"catalog",
								"offerTemplate",
								"createOrUpdate"
							]
						}
					},
					"response": []
				}
			]
		},
		{
			"name": "#502 - Corriger code motif de résiliation TR_RECTRACT",
			"item": [
				{
					"name": "RETRACT|Rétractation - Avec remboursement|false|true|false",
					"event": [
						{
							"listen": "test",
							"script": {
								"id": "cae36b52-0730-4c3b-879e-f18821e61f55",
								"exec": [
									"var jsonData = JSON.parse(responseBody);",
									"tests[\"is.success\"] = jsonData.status === \"SUCCESS\";"
								],
								"type": "text/javascript"
							}
						}
					],
					"request": {
						"auth": {
							"type": "basic",
							"basic": [
								{
									"key": "username",
									"value": "{{opencell.username}}",
									"type": "string"
								},
								{
									"key": "password",
									"value": "{{opencell.password}}",
									"type": "string"
								},
								{
									"key": "saveHelperData",
									"value": true,
									"type": "boolean"
								},
								{
									"key": "showPassword",
									"value": false,
									"type": "boolean"
								}
							]
						},
						"method": "POST",
						"header": [
							{
								"key": "Proxy-Authorization",
								"value": "{{proxy.auth}}"
							},
							{
								"key": "Content-Type",
								"value": "application/json"
							},
							{
								"key": "Authorization",
								"value": "Basic b3BlbmNlbGwuYWRtaW46b3BlbmNlbGwuYWRtaW4="
							}
						],
						"body": {
							"mode": "raw",
							"raw": "{\r\n  \"code\": \"TR_RECTRACT\",\r\n  \"updatedCode\": \"TR_{{request.label.0}}\",\r\n  \"description\": \"{{request.label.1}}\",\r\n  \"applyAgreement\": {{request.label.2}},\r\n  \"applyReimbursment\": {{request.label.3}},\r\n  \"applyTerminationCharges\": {{request.label.4}}\r\n}"
						},
						"url": {
							"raw": "{{opencell.url}}/terminationReason/createOrUpdate",
							"host": [
								"{{opencell.url}}"
							],
							"path": [
								"terminationReason",
								"createOrUpdate"
							]
						}
					},
					"response": []
				}
			]
		},
		{
			"name": "#509 - CAT - Motif de résiliation par offre",
			"item": [
				{
					"name": "FNAC_PLUS|CAL_YEARLY_PERIOD|49|Fnac+|Abonnement annuel - 30 jours d'essai puis 49€/an|- 5% de remise immédiate Livre / Papeterie / Sport / High-Tech / Kids / Bricolage / Jardinage\\n- Des promotions sur les Cd, DVD, Blu-ray\\n- Ventes privées jusqu'à 40% su",
					"event": [
						{
							"listen": "test",
							"script": {
								"id": "4d15ba87-3952-4687-a2e8-298a6dbc507c",
								"exec": [
									"var jsonData = JSON.parse(responseBody);",
									"tests[\"is.success\"] = jsonData.status === \"SUCCESS\";"
								],
								"type": "text/javascript"
							}
						}
					],
					"request": {
						"auth": {
							"type": "basic",
							"basic": [
								{
									"key": "username",
									"value": "{{opencell.username}}",
									"type": "string"
								},
								{
									"key": "password",
									"value": "{{opencell.password}}",
									"type": "string"
								},
								{
									"key": "showPassword",
									"value": false,
									"type": "boolean"
								}
							]
						},
						"method": "POST",
						"header": [
							{
								"key": "Proxy-Authorization",
								"value": "{{proxy.auth}}"
							},
							{
								"key": "Content-Type",
								"value": "application/json"
							},
							{
								"key": "Authorization",
								"value": "Basic b3BlbmNlbGwuYWRtaW46aFViNTJBTTNDZSEh"
							}
						],
						"body": {
							"mode": "raw",
							"raw": "{\r\n    \"code\":\"OF_{{template.code}}_{{request.label.0}}\",\r\n    \"name\":\"{{request.label.3}}\",\r\n    \"description\":\"{{request.label.4}}\",\r\n    \"longDescription\":\"{{request.label.5}}\",\r\n    \"disabled\":false,\r\n    \"lifeCycleStatus\": \"ACTIVE\",\r\n    \"bomCode\":null,\r\n    \"offerTemplateCategoryCode\": \"ADH\",\r\n    \"autoEndOfEngagement\": true,\r\n    \"renewalRule\": {\r\n        \"initialyActiveFor\": 12,\r\n        \"initialyActiveForUnit\": \"MONTH\",\r\n        \"autoRenew\": true,\r\n        \"daysNotifyRenewal\": null,\r\n        \"endOfTermAction\": \"TERMINATE\",\r\n        \"terminationReasonCode\": \"TR_OTHER_NO_REFUND\",\r\n        \"renewFor\": 12,\r\n        \"renewForUnit\": \"MONTH\",\r\n        \"extendAgreementPeriodToSubscribedTillDate\": true\r\n    },\r\n    \"customFields\": { \"customField\": [\r\n    \t{\"code\": \"CF_OF_{{template.code}}_CALENDAR\", \"stringValue\": \"{{request.label.1}}\"},\r\n    \t{\"code\": \"CF_OF_{{template.code}}_PRICE\", \"doubleValue\": {{request.label.2}} },\r\n    \t{\"code\": \"CF_OF_{{template.code}}_LICENCE_ACTIVATION_CODE\", \"stringValue\": \"\"},\r\n    \t{\"code\": \"CF_OF_{{template.code}}_AGREEMENT\", \"longValue\": 12 },\r\n    \t{\"code\": \"CF_OF_{{template.code}}_PRORATA_TER\", \"stringValue\": \"yes\" },\r\n    \t{\"code\": \"CF_OF_SU_{{template.code}}_TRY_DURATION\", \"longValue\": 0 },\r\n    \t{\"code\": \"CF_OF_{{template.code}}_ANALYTIC_OFFER_TYPE\", \"stringValue\": \"ADH\" },\r\n    \t{\"code\": \"CF_OF_{{template.code}}_ANALYTIC_OFFER_PERIODICITY\", \"stringValue\": \"Annuelle\" },\r\n    \t{\"code\": \"CF_OF_{{template.code}}_ANALYTIC_REVENUE_TYPE\", \"stringValue\": \"X\" },\r\n    \t{\"code\": \"CF_OF_{{template.code}}_ANALYTIC_BUSINESS_SECTOR\", \"stringValue\": \"ADM\" },\r\n    \t{\"code\": \"CF_OF_{{template.code}}_TRY_LIST\", \"mapValue\": {\r\n\t\t\t\"PROMOTRY00\": { \"value\": \"0|Pas de Try & Buy\" },\r\n\t\t\t\"PROMOTRY1M\": { \"value\": \"30|Try & Buy 1 mois\" },\r\n\t\t\t\"PROMOTRY3M\": { \"value\": \"90|Try & Buy 3 mois\" },\r\n\t\t\t\"PROMOTRY6M\": { \"value\": \"180|Try & Buy 6 mois\" }\r\n    \t}},\r\n    \t{\"code\": \"CF_OF_{{template.code}}_DISCOUNT_LIST\", \"value\": [\r\n\t\t\t{ \"value\": \"PROMOABO1A\" },\r\n\t\t\t{ \"value\": \"PROMOADH10P\" },\r\n\t\t\t{ \"value\": \"PROMOADH30P\" },\r\n\t\t\t{ \"value\": \"PROMOADH50P\" },\r\n\t\t\t{ \"value\": \"PROMOADH5E\" },\r\n\t\t\t{ \"value\": \"PROMOADH10E\" },\r\n\t\t\t{ \"value\": \"PROMOADH20E\" },\r\n\t\t\t{ \"value\": \"REMABO100P\" },\r\n\t\t\t{ \"value\": \"REMABOLIBRE\" }\r\n    \t]}\r\n    ]},\r\n    \"offerServiceTemplate\": [\r\n\t\t{\"serviceTemplate\":{\"code\":\"SE_{{template.code}}_TRY\"},\"mandatory\":false,\"incompatibleServiceTemplate\":[]},\r\n\t\t{\"serviceTemplate\":{\"code\":\"SE_{{template.code}}_REC_MAIN\"},\"mandatory\":true,\"incompatibleServiceTemplate\":[]}\r\n\t],\r\n    \"offerProductTemplate\": null,\r\n\t\"imageBase64\": \"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\",\r\n\t\"imagePath\": \".png\"\r\n}"
						},
						"url": {
							"raw": "{{opencell.url}}/catalog/offerTemplate/createOrUpdate",
							"host": [
								"{{opencell.url}}"
							],
							"path": [
								"catalog",
								"offerTemplate",
								"createOrUpdate"
							]
						}
					},
					"response": []
				},
				{
					"name": "FNAC_SERENITE_Y|CAL_YEARLY_PERIOD|89|Pack FNAC Sérénité|Abonnement annuel|Protection complète jusqu'à 5 appareils (PC, Mac, Smartphones, Tablettes) grâce à :\\n- Fnac Sécurité : la meilleure protection antivirus du marché\\n- Fnac Cloud : stockage illimité de vos données en France\\n- Fnac Mot de passe : sécurisation de tous vos mots de passe\\n- Assistance téléphonique Fnac 7j/7 pour l'installation et l'utilisation de votre Pack Sérénité",
					"event": [
						{
							"listen": "test",
							"script": {
								"id": "fe4ed26f-606d-4beb-80e3-b38ffdd4bcf9",
								"exec": [
									"var jsonData = JSON.parse(responseBody);",
									"tests[\"is.success\"] = jsonData.status === \"SUCCESS\";"
								],
								"type": "text/javascript"
							}
						}
					],
					"request": {
						"auth": {
							"type": "basic",
							"basic": [
								{
									"key": "username",
									"value": "{{opencell.username}}",
									"type": "string"
								},
								{
									"key": "password",
									"value": "{{opencell.password}}",
									"type": "string"
								},
								{
									"key": "showPassword",
									"value": false,
									"type": "boolean"
								}
							]
						},
						"method": "POST",
						"header": [
							{
								"key": "Proxy-Authorization",
								"value": "{{proxy.auth}}"
							},
							{
								"key": "Content-Type",
								"value": "application/json"
							},
							{
								"key": "Authorization",
								"value": "Basic b3BlbmNlbGwuYWRtaW46aFViNTJBTTNDZSEh"
							}
						],
						"body": {
							"mode": "raw",
							"raw": "{\r\n    \"code\":\"OF_{{template.code}}_{{request.label.0}}\",\r\n    \"name\":\"{{request.label.3}}\",\r\n    \"description\":\"{{request.label.4}}\",\r\n    \"longDescription\":\"{{request.label.5}}\",\r\n    \"disabled\":false,\r\n    \"lifeCycleStatus\": \"ACTIVE\",\r\n    \"bomCode\":null,\r\n    \"offerTemplateCategoryCode\": \"PMU\",\r\n    \"autoEndOfEngagement\": true,\r\n    \"renewalRule\": {\r\n        \"initialyActiveFor\": 12,\r\n        \"initialyActiveForUnit\": \"MONTH\",\r\n        \"autoRenew\": true,\r\n        \"daysNotifyRenewal\": null,\r\n        \"endOfTermAction\": \"TERMINATE\",\r\n        \"terminationReasonCode\": \"TR_OTHER_NO_REFUND\",\r\n        \"renewFor\": 12,\r\n        \"renewForUnit\": \"MONTH\",\r\n        \"extendAgreementPeriodToSubscribedTillDate\": false\r\n    },\r\n    \"customFields\": { \"customField\": [\r\n    \t{\"code\": \"CF_OF_{{template.code}}_CALENDAR\", \"stringValue\": \"{{request.label.1}}\"},\r\n    \t{\"code\": \"CF_OF_{{template.code}}_PRICE\", \"doubleValue\": {{request.label.2}}},\r\n    \t{\"code\": \"CF_OF_{{template.code}}_LICENCE_ACTIVATION_CODE\", \"stringValue\": \"6003\"},\r\n    \t{\"code\": \"CF_OF_{{template.code}}_AGREEMENT\", \"longValue\": 12 },\r\n    \t{\"code\": \"CF_OF_{{template.code}}_PRORATA_TER\", \"stringValue\": \"yes\" },\r\n    \t{\"code\": \"CF_OF_SU_{{template.code}}_TRY_DURATION\", \"longValue\": 0 },\r\n    \t{\"code\": \"CF_OF_{{template.code}}_ANALYTIC_OFFER_TYPE\", \"stringValue\": \"PMU\" },\r\n    \t{\"code\": \"CF_OF_{{template.code}}_ANALYTIC_OFFER_PERIODICITY\", \"stringValue\": \"Annuelle\" },\r\n    \t{\"code\": \"CF_OF_{{template.code}}_ANALYTIC_REVENUE_TYPE\", \"stringValue\": \"CA\" },\r\n    \t{\"code\": \"CF_OF_{{template.code}}_ANALYTIC_BUSINESS_SECTOR\", \"stringValue\": \"MIC\" },\r\n    \t{\"code\": \"CF_OF_{{template.code}}_DISCOUNT_LIST\", \"value\": [\r\n\t\t\t{ \"value\": \"PROMO1M_SA\" },\r\n\t\t\t{ \"value\": \"PROMO2M_SA\" },\r\n\t\t\t{ \"value\": \"PROMO3M_SA\" },\r\n\t\t\t{ \"value\": \"PROMO6M_SA\" },\r\n\t\t\t{ \"value\": \"PROMO12M_SA\" },\r\n\t\t\t{ \"value\": \"PROMO1MADH_SA\" },\r\n\t\t\t{ \"value\": \"PROMO2MADH_SA\" },\r\n\t\t\t{ \"value\": \"PROMO3MADH_SA\" },\r\n\t\t\t{ \"value\": \"PROMO6MADH_SA\" },\r\n\t\t\t{ \"value\": \"PROMO12MADH_SA\" },\r\n\t\t\t{ \"value\": \"PROMOADH10E_SA\" },\r\n\t\t\t{ \"value\": \"REMABO100P_SA\" },\r\n\t\t\t{ \"value\": \"REMABOLIBRE\" }\r\n    \t]}\r\n    ]},\r\n    \"offerServiceTemplate\": [\r\n\t\t{\"serviceTemplate\":{\"code\":\"SE_{{template.code}}_REC_MAIN\"},\"mandatory\":true,\"incompatibleServiceTemplate\":[]},\r\n\t\t{\"serviceTemplate\":{\"code\":\"SE_{{template.code}}_LICENCE\"},\"mandatory\":true,\"incompatibleServiceTemplate\":[]},\r\n\t\t{\"serviceTemplate\":{\"code\":\"SE_{{template.code}}_TRY\"},\"mandatory\":false,\"incompatibleServiceTemplate\":[]}\r\n\t],\r\n    \"offerProductTemplate\": null,\r\n\t\"imageBase64\": \"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\",\r\n\t\"imagePath\": \".png\"\r\n}"
						},
						"url": {
							"raw": "{{opencell.url}}/catalog/offerTemplate/createOrUpdate",
							"host": [
								"{{opencell.url}}"
							],
							"path": [
								"catalog",
								"offerTemplate",
								"createOrUpdate"
							]
						}
					},
					"response": []
				},
				{
					"name": "FNAC_SERENITE_M|CAL_MONTHLY_1ST|7.9|Pack FNAC Sérénité|Abonnement mensuel|Protection complète jusqu'à 5 appareils (PC, Mac, Smartphones, Tablettes) grâce à :\\n- Fnac Sécurité : la meilleure protection antivirus du marché\\n- Fnac Cloud : stockage illimité de vos données en France\\n- Fnac Mot de passe : sécurisation de tous vos mots de passe\\n- Assistance téléphonique Fnac 7j/7 pour l'installation et l'utilisation de votre Pack Sérénité",
					"event": [
						{
							"listen": "test",
							"script": {
								"id": "d9876a66-2975-4b8d-bf9b-6199f2005eda",
								"exec": [
									"var jsonData = JSON.parse(responseBody);",
									"tests[\"is.success\"] = jsonData.status === \"SUCCESS\";"
								],
								"type": "text/javascript"
							}
						}
					],
					"request": {
						"auth": {
							"type": "basic",
							"basic": [
								{
									"key": "username",
									"value": "{{opencell.username}}",
									"type": "string"
								},
								{
									"key": "password",
									"value": "{{opencell.password}}",
									"type": "string"
								},
								{
									"key": "showPassword",
									"value": false,
									"type": "boolean"
								}
							]
						},
						"method": "POST",
						"header": [
							{
								"key": "Proxy-Authorization",
								"value": "{{proxy.auth}}"
							},
							{
								"key": "Content-Type",
								"value": "application/json"
							}
						],
						"body": {
							"mode": "raw",
							"raw": "{\r\n    \"code\":\"OF_{{template.code}}_{{request.label.0}}\",\r\n    \"name\":\"{{request.label.3}}\",\r\n    \"description\":\"{{request.label.4}}\",\r\n    \"longDescription\":\"{{request.label.5}}\",\r\n    \"disabled\":false,\r\n    \"lifeCycleStatus\": \"ACTIVE\",\r\n    \"bomCode\":null,\r\n    \"offerTemplateCategoryCode\": \"PMU\",\r\n    \"autoEndOfEngagement\": false,\r\n    \"renewalRule\": {\r\n        \"initialyActiveFor\": 1,\r\n        \"initialyActiveForUnit\": \"MONTH\",\r\n        \"autoRenew\": true,\r\n        \"daysNotifyRenewal\": null,\r\n        \"endOfTermAction\": \"TERMINATE\",\r\n        \"terminationReasonCode\": \"TR_OTHER_NO_REFUND\",\r\n        \"renewFor\": 1,\r\n        \"renewForUnit\": \"MONTH\",\r\n        \"extendAgreementPeriodToSubscribedTillDate\": false\r\n    },\r\n    \"customFields\": { \"customField\": [\r\n    \t{\"code\": \"CF_OF_{{template.code}}_CALENDAR\", \"stringValue\": \"{{request.label.1}}\"},\r\n    \t{\"code\": \"CF_OF_{{template.code}}_PRICE\", \"doubleValue\": {{request.label.2}}},\r\n    \t{\"code\": \"CF_OF_{{template.code}}_LICENCE_ACTIVATION_CODE\", \"stringValue\": \"6002\"},\r\n    \t{\"code\": \"CF_OF_{{template.code}}_AGREEMENT\", \"longValue\": 0 },\r\n    \t{\"code\": \"CF_OF_{{template.code}}_PRORATA_TER\", \"stringValue\": \"no\" },\r\n    \t{\"code\": \"CF_OF_SU_{{template.code}}_TRY_DURATION\", \"longValue\": 0 },\r\n    \t{\"code\": \"CF_OF_{{template.code}}_ANALYTIC_OFFER_TYPE\", \"stringValue\": \"PMU\" },\r\n    \t{\"code\": \"CF_OF_{{template.code}}_ANALYTIC_OFFER_PERIODICITY\", \"stringValue\": \"Mensuelle\" },\r\n    \t{\"code\": \"CF_OF_{{template.code}}_ANALYTIC_REVENUE_TYPE\", \"stringValue\": \"CA\" },\r\n    \t{\"code\": \"CF_OF_{{template.code}}_ANALYTIC_BUSINESS_SECTOR\", \"stringValue\": \"MIC\" },\r\n    \t{\"code\": \"CF_OF_{{template.code}}_DISCOUNT_LIST\", \"value\": [\r\n\t\t\t{ \"value\": \"PROMO1M_SM\" },\r\n\t\t\t{ \"value\": \"PROMO2M_SM\" },\r\n\t\t\t{ \"value\": \"PROMO3M_SM\" },\r\n\t\t\t{ \"value\": \"PROMO6M_SM\" },\r\n\t\t\t{ \"value\": \"PROMO12M_SM\" },\r\n\t\t\t{ \"value\": \"PROMO1MADH_SM\" },\r\n\t\t\t{ \"value\": \"PROMO2MADH_SM\" },\r\n\t\t\t{ \"value\": \"PROMO3MADH_SM\" },\r\n\t\t\t{ \"value\": \"PROMO6MADH_SM\" },\r\n\t\t\t{ \"value\": \"PROMO12MADH_SM\" },\r\n\t\t\t{ \"value\": \"PROMOADH1E_SM\" },\r\n\t\t\t{ \"value\": \"REMABO50P_SM\" },\r\n\t\t\t{ \"value\": \"REMABO100P_SM\" },\r\n\t\t\t{ \"value\": \"REMABOLIBRE\" }\r\n    \t]}\r\n    ]},\r\n    \"offerServiceTemplate\": [\r\n\t\t{\"serviceTemplate\":{\"code\":\"SE_{{template.code}}_REC_MAIN\"},\"mandatory\":true,\"incompatibleServiceTemplate\":[]},\r\n\t\t{\"serviceTemplate\":{\"code\":\"SE_{{template.code}}_LICENCE\"},\"mandatory\":true,\"incompatibleServiceTemplate\":[]},\r\n\t\t{\"serviceTemplate\":{\"code\":\"SE_{{template.code}}_TRY\"},\"mandatory\":false,\"incompatibleServiceTemplate\":[]}\r\n\t],\r\n    \"offerProductTemplate\": null,\r\n\t\"imageBase64\": \"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\",\r\n\t\"imagePath\": \".png\"\r\n}"
						},
						"url": {
							"raw": "{{opencell.url}}/catalog/offerTemplate/createOrUpdate",
							"host": [
								"{{opencell.url}}"
							],
							"path": [
								"catalog",
								"offerTemplate",
								"createOrUpdate"
							]
						}
					},
					"response": []
				}
			]
		},
		{
			"name": "#447 - CAT + Compta : Paramétrage \"Type Remise\"",
			"item": [
				{
					"name": "Discount plans",
					"item": [
						{
							"name": "PROMOABO1A",
							"item": [
								{
									"name": "DP|PROMOABO1A|12|10|Remise 12 mois d'abonnement offerts",
									"request": {
										"auth": {
											"type": "basic",
											"basic": [
												{
													"key": "username",
													"value": "{{opencell.username}}",
													"type": "string"
												},
												{
													"key": "password",
													"value": "{{opencell.password}}",
													"type": "string"
												},
												{
													"key": "saveHelperData",
													"value": true,
													"type": "boolean"
												},
												{
													"key": "showPassword",
													"value": false,
													"type": "boolean"
												}
											]
										},
										"method": "POST",
										"header": [
											{
												"key": "Content-Type",
												"value": "application/json"
											},
											{
												"key": "Authorization",
												"value": "Basic b3BlbmNlbGwuYWRtaW46b3BlbmNlbGwuYWRtaW4="
											}
										],
										"body": {
											"mode": "raw",
											"raw": "{\n    \"code\": \"{{request.label.1}}\",\n    \"description\": \"{{request.label.4}}\",\n    \"durationUnit\": \"MONTH\",\n    \"defaultDuration\": \"{{request.label.2}}\",\n    \"customFields\": {\n        \"customField\": [\n            {\n                \"code\": \"CF_{{request.label.0}}_{{template.code}}_DISCOUNT_CATEGORY\",\n                \"stringValue\": \"{{request.label.3}}\"\n            }\n        ]\n    }\n}"
										},
										"url": {
											"raw": "{{opencell.url}}/catalog/discountPlan/createOrUpdate",
											"host": [
												"{{opencell.url}}"
											],
											"path": [
												"catalog",
												"discountPlan",
												"createOrUpdate"
											]
										}
									},
									"response": []
								},
								{
									"name": "DPI|PROMOABO1A|PERCENTAGE|100",
									"request": {
										"auth": {
											"type": "basic",
											"basic": [
												{
													"key": "username",
													"value": "{{opencell.username}}",
													"type": "string"
												},
												{
													"key": "password",
													"value": "{{opencell.password}}",
													"type": "string"
												},
												{
													"key": "saveHelperData",
													"value": true,
													"type": "boolean"
												},
												{
													"key": "showPassword",
													"value": false,
													"type": "boolean"
												}
											]
										},
										"method": "POST",
										"header": [
											{
												"key": "Content-Type",
												"value": "application/json"
											},
											{
												"key": "Authorization",
												"value": "Basic b3BlbmNlbGwuYWRtaW46b3BlbmNlbGwuYWRtaW4="
											}
										],
										"body": {
											"mode": "raw",
											"raw": "{\r\n    \"code\": \"{{request.label.1}}\",\r\n    \"discountPlanCode\": \"{{request.label.1}}\",\r\n    \"invoiceCategoryCode\": \"ICAT_{{template.code}}_REC\",\r\n    \"invoiceSubCategoryCode\": null,\r\n    \"expressionEl\": null,\r\n    \"discountPlanItemType\": \"{{request.label.2}}\",\r\n    \"discountValue\": {{request.label.3}},\r\n    \"discountValueEL\": null,\r\n    \"disabled\": false,\r\n    \"accountingCode\": null\r\n}\r\n"
										},
										"url": {
											"raw": "{{opencell.url}}/catalog/discountPlanItem/createOrUpdate",
											"host": [
												"{{opencell.url}}"
											],
											"path": [
												"catalog",
												"discountPlanItem",
												"createOrUpdate"
											]
										}
									},
									"response": []
								}
							],
							"_postman_isSubFolder": true
						},
						{
							"name": "PROMOADH10P",
							"item": [
								{
									"name": "DP|PROMOADH10P|null|11|Remise adhérent : -10% sur le montant de l'abonnement",
									"request": {
										"auth": {
											"type": "basic",
											"basic": [
												{
													"key": "username",
													"value": "{{opencell.username}}",
													"type": "string"
												},
												{
													"key": "password",
													"value": "{{opencell.password}}",
													"type": "string"
												},
												{
													"key": "saveHelperData",
													"value": true,
													"type": "boolean"
												},
												{
													"key": "showPassword",
													"value": false,
													"type": "boolean"
												}
											]
										},
										"method": "POST",
										"header": [
											{
												"key": "Content-Type",
												"value": "application/json"
											},
											{
												"key": "Authorization",
												"value": "Basic b3BlbmNlbGwuYWRtaW46b3BlbmNlbGwuYWRtaW4="
											}
										],
										"body": {
											"mode": "raw",
											"raw": "{\n    \"code\": \"{{request.label.1}}\",\n    \"description\": \"{{request.label.4}}\",\n    \"durationUnit\": \"MONTH\",\n    \"defaultDuration\": \"{{request.label.2}}\",\n    \"customFields\": {\n        \"customField\": [\n            {\n                \"code\": \"CF_{{request.label.0}}_{{template.code}}_DISCOUNT_CATEGORY\",\n                \"stringValue\": \"{{request.label.3}}\"\n            }\n        ]\n    }\n}"
										},
										"url": {
											"raw": "{{opencell.url}}/catalog/discountPlan/createOrUpdate",
											"host": [
												"{{opencell.url}}"
											],
											"path": [
												"catalog",
												"discountPlan",
												"createOrUpdate"
											]
										}
									},
									"response": []
								},
								{
									"name": "DPI|PROMOADH10P|PERCENTAGE|10",
									"request": {
										"auth": {
											"type": "basic",
											"basic": [
												{
													"key": "username",
													"value": "{{opencell.username}}",
													"type": "string"
												},
												{
													"key": "password",
													"value": "{{opencell.password}}",
													"type": "string"
												},
												{
													"key": "saveHelperData",
													"value": true,
													"type": "boolean"
												},
												{
													"key": "showPassword",
													"value": false,
													"type": "boolean"
												}
											]
										},
										"method": "POST",
										"header": [
											{
												"key": "Content-Type",
												"value": "application/json"
											},
											{
												"key": "Authorization",
												"value": "Basic b3BlbmNlbGwuYWRtaW46b3BlbmNlbGwuYWRtaW4="
											}
										],
										"body": {
											"mode": "raw",
											"raw": "{\r\n    \"code\": \"{{request.label.1}}\",\r\n    \"discountPlanCode\": \"{{request.label.1}}\",\r\n    \"invoiceCategoryCode\": \"ICAT_{{template.code}}_REC\",\r\n    \"invoiceSubCategoryCode\": null,\r\n    \"expressionEl\": null,\r\n    \"discountPlanItemType\": \"{{request.label.2}}\",\r\n    \"discountValue\": {{request.label.3}},\r\n    \"discountValueEL\": null,\r\n    \"disabled\": false,\r\n    \"accountingCode\": null\r\n}\r\n"
										},
										"url": {
											"raw": "{{opencell.url}}/catalog/discountPlanItem/createOrUpdate",
											"host": [
												"{{opencell.url}}"
											],
											"path": [
												"catalog",
												"discountPlanItem",
												"createOrUpdate"
											]
										}
									},
									"response": []
								}
							],
							"_postman_isSubFolder": true
						},
						{
							"name": "PROMOADH30P",
							"item": [
								{
									"name": "DP|PROMOADH30P|null|11|Remise adhérent : -30% sur le montant de l'abonnement",
									"request": {
										"auth": {
											"type": "basic",
											"basic": [
												{
													"key": "username",
													"value": "{{opencell.username}}",
													"type": "string"
												},
												{
													"key": "password",
													"value": "{{opencell.password}}",
													"type": "string"
												},
												{
													"key": "saveHelperData",
													"value": true,
													"type": "boolean"
												},
												{
													"key": "showPassword",
													"value": false,
													"type": "boolean"
												}
											]
										},
										"method": "POST",
										"header": [
											{
												"key": "Content-Type",
												"value": "application/json"
											},
											{
												"key": "Authorization",
												"value": "Basic b3BlbmNlbGwuYWRtaW46b3BlbmNlbGwuYWRtaW4="
											}
										],
										"body": {
											"mode": "raw",
											"raw": "{\n    \"code\": \"{{request.label.1}}\",\n    \"description\": \"{{request.label.4}}\",\n    \"durationUnit\": \"MONTH\",\n    \"defaultDuration\": \"{{request.label.2}}\",\n    \"customFields\": {\n        \"customField\": [\n            {\n                \"code\": \"CF_{{request.label.0}}_{{template.code}}_DISCOUNT_CATEGORY\",\n                \"stringValue\": \"{{request.label.3}}\"\n            }\n        ]\n    }\n}"
										},
										"url": {
											"raw": "{{opencell.url}}/catalog/discountPlan/createOrUpdate",
											"host": [
												"{{opencell.url}}"
											],
											"path": [
												"catalog",
												"discountPlan",
												"createOrUpdate"
											]
										}
									},
									"response": []
								},
								{
									"name": "DPI|PROMOADH30P|PERCENTAGE|30",
									"request": {
										"auth": {
											"type": "basic",
											"basic": [
												{
													"key": "username",
													"value": "{{opencell.username}}",
													"type": "string"
												},
												{
													"key": "password",
													"value": "{{opencell.password}}",
													"type": "string"
												},
												{
													"key": "saveHelperData",
													"value": true,
													"type": "boolean"
												},
												{
													"key": "showPassword",
													"value": false,
													"type": "boolean"
												}
											]
										},
										"method": "POST",
										"header": [
											{
												"key": "Content-Type",
												"value": "application/json"
											},
											{
												"key": "Authorization",
												"value": "Basic b3BlbmNlbGwuYWRtaW46b3BlbmNlbGwuYWRtaW4="
											}
										],
										"body": {
											"mode": "raw",
											"raw": "{\r\n    \"code\": \"{{request.label.1}}\",\r\n    \"discountPlanCode\": \"{{request.label.1}}\",\r\n    \"invoiceCategoryCode\": \"ICAT_{{template.code}}_REC\",\r\n    \"invoiceSubCategoryCode\": null,\r\n    \"expressionEl\": null,\r\n    \"discountPlanItemType\": \"{{request.label.2}}\",\r\n    \"discountValue\": {{request.label.3}},\r\n    \"discountValueEL\": null,\r\n    \"disabled\": false,\r\n    \"accountingCode\": null\r\n}\r\n"
										},
										"url": {
											"raw": "{{opencell.url}}/catalog/discountPlanItem/createOrUpdate",
											"host": [
												"{{opencell.url}}"
											],
											"path": [
												"catalog",
												"discountPlanItem",
												"createOrUpdate"
											]
										}
									},
									"response": []
								}
							],
							"_postman_isSubFolder": true
						},
						{
							"name": "PROMOADH50P",
							"item": [
								{
									"name": "DP|PROMOADH50P|null|11|Remise adhérent : -50% sur le montant de l'abonnement",
									"request": {
										"auth": {
											"type": "basic",
											"basic": [
												{
													"key": "username",
													"value": "{{opencell.username}}",
													"type": "string"
												},
												{
													"key": "password",
													"value": "{{opencell.password}}",
													"type": "string"
												},
												{
													"key": "saveHelperData",
													"value": true,
													"type": "boolean"
												},
												{
													"key": "showPassword",
													"value": false,
													"type": "boolean"
												}
											]
										},
										"method": "POST",
										"header": [
											{
												"key": "Content-Type",
												"value": "application/json"
											},
											{
												"key": "Authorization",
												"value": "Basic b3BlbmNlbGwuYWRtaW46b3BlbmNlbGwuYWRtaW4="
											}
										],
										"body": {
											"mode": "raw",
											"raw": "{\n    \"code\": \"{{request.label.1}}\",\n    \"description\": \"{{request.label.4}}\",\n    \"durationUnit\": \"MONTH\",\n    \"defaultDuration\": \"{{request.label.2}}\",\n    \"customFields\": {\n        \"customField\": [\n            {\n                \"code\": \"CF_{{request.label.0}}_{{template.code}}_DISCOUNT_CATEGORY\",\n                \"stringValue\": \"{{request.label.3}}\"\n            }\n        ]\n    }\n}"
										},
										"url": {
											"raw": "{{opencell.url}}/catalog/discountPlan/createOrUpdate",
											"host": [
												"{{opencell.url}}"
											],
											"path": [
												"catalog",
												"discountPlan",
												"createOrUpdate"
											]
										}
									},
									"response": []
								},
								{
									"name": "DPI|PROMOADH50P|PERCENTAGE|50",
									"request": {
										"auth": {
											"type": "basic",
											"basic": [
												{
													"key": "username",
													"value": "{{opencell.username}}",
													"type": "string"
												},
												{
													"key": "password",
													"value": "{{opencell.password}}",
													"type": "string"
												},
												{
													"key": "saveHelperData",
													"value": true,
													"type": "boolean"
												},
												{
													"key": "showPassword",
													"value": false,
													"type": "boolean"
												}
											]
										},
										"method": "POST",
										"header": [
											{
												"key": "Content-Type",
												"value": "application/json"
											},
											{
												"key": "Authorization",
												"value": "Basic b3BlbmNlbGwuYWRtaW46b3BlbmNlbGwuYWRtaW4="
											}
										],
										"body": {
											"mode": "raw",
											"raw": "{\r\n    \"code\": \"{{request.label.1}}\",\r\n    \"discountPlanCode\": \"{{request.label.1}}\",\r\n    \"invoiceCategoryCode\": \"ICAT_{{template.code}}_REC\",\r\n    \"invoiceSubCategoryCode\": null,\r\n    \"expressionEl\": null,\r\n    \"discountPlanItemType\": \"{{request.label.2}}\",\r\n    \"discountValue\": {{request.label.3}},\r\n    \"discountValueEL\": null,\r\n    \"disabled\": false,\r\n    \"accountingCode\": null\r\n}\r\n"
										},
										"url": {
											"raw": "{{opencell.url}}/catalog/discountPlanItem/createOrUpdate",
											"host": [
												"{{opencell.url}}"
											],
											"path": [
												"catalog",
												"discountPlanItem",
												"createOrUpdate"
											]
										}
									},
									"response": []
								}
							],
							"_postman_isSubFolder": true
						},
						{
							"name": "PROMOADH5E",
							"item": [
								{
									"name": "DP|PROMOADH5E|null|11|Remise adhérent : -5€ sur le montant de l'abonnement",
									"request": {
										"auth": {
											"type": "basic",
											"basic": [
												{
													"key": "username",
													"value": "{{opencell.username}}",
													"type": "string"
												},
												{
													"key": "password",
													"value": "{{opencell.password}}",
													"type": "string"
												},
												{
													"key": "saveHelperData",
													"value": true,
													"type": "boolean"
												},
												{
													"key": "showPassword",
													"value": false,
													"type": "boolean"
												}
											]
										},
										"method": "POST",
										"header": [
											{
												"key": "Content-Type",
												"value": "application/json"
											},
											{
												"key": "Authorization",
												"value": "Basic b3BlbmNlbGwuYWRtaW46b3BlbmNlbGwuYWRtaW4="
											}
										],
										"body": {
											"mode": "raw",
											"raw": "{\n    \"code\": \"{{request.label.1}}\",\n    \"description\": \"{{request.label.4}}\",\n    \"durationUnit\": \"MONTH\",\n    \"defaultDuration\": \"{{request.label.2}}\",\n    \"customFields\": {\n        \"customField\": [\n            {\n                \"code\": \"CF_{{request.label.0}}_{{template.code}}_DISCOUNT_CATEGORY\",\n                \"stringValue\": \"{{request.label.3}}\"\n            }\n        ]\n    }\n}"
										},
										"url": {
											"raw": "{{opencell.url}}/catalog/discountPlan/createOrUpdate",
											"host": [
												"{{opencell.url}}"
											],
											"path": [
												"catalog",
												"discountPlan",
												"createOrUpdate"
											]
										}
									},
									"response": []
								},
								{
									"name": "DPI|PROMOADH5E|FIXED|5",
									"request": {
										"auth": {
											"type": "basic",
											"basic": [
												{
													"key": "username",
													"value": "{{opencell.username}}",
													"type": "string"
												},
												{
													"key": "password",
													"value": "{{opencell.password}}",
													"type": "string"
												},
												{
													"key": "saveHelperData",
													"value": true,
													"type": "boolean"
												},
												{
													"key": "showPassword",
													"value": false,
													"type": "boolean"
												}
											]
										},
										"method": "POST",
										"header": [
											{
												"key": "Content-Type",
												"value": "application/json"
											},
											{
												"key": "Authorization",
												"value": "Basic b3BlbmNlbGwuYWRtaW46b3BlbmNlbGwuYWRtaW4="
											}
										],
										"body": {
											"mode": "raw",
											"raw": "{\r\n    \"code\": \"{{request.label.1}}\",\r\n    \"discountPlanCode\": \"{{request.label.1}}\",\r\n    \"invoiceCategoryCode\": \"ICAT_{{template.code}}_REC\",\r\n    \"invoiceSubCategoryCode\": null,\r\n    \"expressionEl\": null,\r\n    \"discountPlanItemType\": \"{{request.label.2}}\",\r\n    \"discountValue\": {{request.label.3}},\r\n    \"discountValueEL\": null,\r\n    \"disabled\": false,\r\n    \"accountingCode\": null\r\n}\r\n"
										},
										"url": {
											"raw": "{{opencell.url}}/catalog/discountPlanItem/createOrUpdate",
											"host": [
												"{{opencell.url}}"
											],
											"path": [
												"catalog",
												"discountPlanItem",
												"createOrUpdate"
											]
										}
									},
									"response": []
								}
							],
							"_postman_isSubFolder": true
						},
						{
							"name": "PROMOADH10E",
							"item": [
								{
									"name": "DP|PROMOADH10E|null|11|Remise adhérent : -10€ sur le montant de l'abonnement",
									"request": {
										"auth": {
											"type": "basic",
											"basic": [
												{
													"key": "username",
													"value": "{{opencell.username}}",
													"type": "string"
												},
												{
													"key": "password",
													"value": "{{opencell.password}}",
													"type": "string"
												},
												{
													"key": "saveHelperData",
													"value": true,
													"type": "boolean"
												},
												{
													"key": "showPassword",
													"value": false,
													"type": "boolean"
												}
											]
										},
										"method": "POST",
										"header": [
											{
												"key": "Content-Type",
												"value": "application/json"
											},
											{
												"key": "Authorization",
												"value": "Basic b3BlbmNlbGwuYWRtaW46b3BlbmNlbGwuYWRtaW4="
											}
										],
										"body": {
											"mode": "raw",
											"raw": "{\n    \"code\": \"{{request.label.1}}\",\n    \"description\": \"{{request.label.4}}\",\n    \"durationUnit\": \"MONTH\",\n    \"defaultDuration\": \"{{request.label.2}}\",\n    \"customFields\": {\n        \"customField\": [\n            {\n                \"code\": \"CF_{{request.label.0}}_{{template.code}}_DISCOUNT_CATEGORY\",\n                \"stringValue\": \"{{request.label.3}}\"\n            }\n        ]\n    }\n}"
										},
										"url": {
											"raw": "{{opencell.url}}/catalog/discountPlan/createOrUpdate",
											"host": [
												"{{opencell.url}}"
											],
											"path": [
												"catalog",
												"discountPlan",
												"createOrUpdate"
											]
										}
									},
									"response": []
								},
								{
									"name": "DPI|PROMOADH10E|FIXED|10",
									"request": {
										"auth": {
											"type": "basic",
											"basic": [
												{
													"key": "username",
													"value": "{{opencell.username}}",
													"type": "string"
												},
												{
													"key": "password",
													"value": "{{opencell.password}}",
													"type": "string"
												},
												{
													"key": "saveHelperData",
													"value": true,
													"type": "boolean"
												},
												{
													"key": "showPassword",
													"value": false,
													"type": "boolean"
												}
											]
										},
										"method": "POST",
										"header": [
											{
												"key": "Content-Type",
												"value": "application/json"
											},
											{
												"key": "Authorization",
												"value": "Basic b3BlbmNlbGwuYWRtaW46b3BlbmNlbGwuYWRtaW4="
											}
										],
										"body": {
											"mode": "raw",
											"raw": "{\r\n    \"code\": \"{{request.label.1}}\",\r\n    \"discountPlanCode\": \"{{request.label.1}}\",\r\n    \"invoiceCategoryCode\": \"ICAT_{{template.code}}_REC\",\r\n    \"invoiceSubCategoryCode\": null,\r\n    \"expressionEl\": null,\r\n    \"discountPlanItemType\": \"{{request.label.2}}\",\r\n    \"discountValue\": {{request.label.3}},\r\n    \"discountValueEL\": null,\r\n    \"disabled\": false,\r\n    \"accountingCode\": null\r\n}\r\n"
										},
										"url": {
											"raw": "{{opencell.url}}/catalog/discountPlanItem/createOrUpdate",
											"host": [
												"{{opencell.url}}"
											],
											"path": [
												"catalog",
												"discountPlanItem",
												"createOrUpdate"
											]
										}
									},
									"response": []
								}
							],
							"_postman_isSubFolder": true
						},
						{
							"name": "PROMOADH20E",
							"item": [
								{
									"name": "DP|PROMOADH20E|null|11|Remise adhérent : -20€ sur le montant de l'abonnement",
									"request": {
										"auth": {
											"type": "basic",
											"basic": [
												{
													"key": "username",
													"value": "{{opencell.username}}",
													"type": "string"
												},
												{
													"key": "password",
													"value": "{{opencell.password}}",
													"type": "string"
												},
												{
													"key": "saveHelperData",
													"value": true,
													"type": "boolean"
												},
												{
													"key": "showPassword",
													"value": false,
													"type": "boolean"
												}
											]
										},
										"method": "POST",
										"header": [
											{
												"key": "Content-Type",
												"value": "application/json"
											},
											{
												"key": "Authorization",
												"value": "Basic b3BlbmNlbGwuYWRtaW46b3BlbmNlbGwuYWRtaW4="
											}
										],
										"body": {
											"mode": "raw",
											"raw": "{\n    \"code\": \"{{request.label.1}}\",\n    \"description\": \"{{request.label.4}}\",\n    \"durationUnit\": \"MONTH\",\n    \"defaultDuration\": \"{{request.label.2}}\",\n    \"customFields\": {\n        \"customField\": [\n            {\n                \"code\": \"CF_{{request.label.0}}_{{template.code}}_DISCOUNT_CATEGORY\",\n                \"stringValue\": \"{{request.label.3}}\"\n            }\n        ]\n    }\n}"
										},
										"url": {
											"raw": "{{opencell.url}}/catalog/discountPlan/createOrUpdate",
											"host": [
												"{{opencell.url}}"
											],
											"path": [
												"catalog",
												"discountPlan",
												"createOrUpdate"
											]
										}
									},
									"response": []
								},
								{
									"name": "DPI|PROMOADH20E|FIXED|20",
									"request": {
										"auth": {
											"type": "basic",
											"basic": [
												{
													"key": "username",
													"value": "{{opencell.username}}",
													"type": "string"
												},
												{
													"key": "password",
													"value": "{{opencell.password}}",
													"type": "string"
												},
												{
													"key": "saveHelperData",
													"value": true,
													"type": "boolean"
												},
												{
													"key": "showPassword",
													"value": false,
													"type": "boolean"
												}
											]
										},
										"method": "POST",
										"header": [
											{
												"key": "Content-Type",
												"value": "application/json"
											},
											{
												"key": "Authorization",
												"value": "Basic b3BlbmNlbGwuYWRtaW46b3BlbmNlbGwuYWRtaW4="
											}
										],
										"body": {
											"mode": "raw",
											"raw": "{\r\n    \"code\": \"{{request.label.1}}\",\r\n    \"discountPlanCode\": \"{{request.label.1}}\",\r\n    \"invoiceCategoryCode\": \"ICAT_{{template.code}}_REC\",\r\n    \"invoiceSubCategoryCode\": null,\r\n    \"expressionEl\": null,\r\n    \"discountPlanItemType\": \"{{request.label.2}}\",\r\n    \"discountValue\": {{request.label.3}},\r\n    \"discountValueEL\": null,\r\n    \"disabled\": false,\r\n    \"accountingCode\": null\r\n}\r\n"
										},
										"url": {
											"raw": "{{opencell.url}}/catalog/discountPlanItem/createOrUpdate",
											"host": [
												"{{opencell.url}}"
											],
											"path": [
												"catalog",
												"discountPlanItem",
												"createOrUpdate"
											]
										}
									},
									"response": []
								}
							],
							"_postman_isSubFolder": true
						},
						{
							"name": "PROMOADH1E_SM",
							"item": [
								{
									"name": "DP|PROMOADH1E_SM|null|11|Remise adhérent : -1€ sur le montant de l'abonnement",
									"request": {
										"auth": {
											"type": "basic",
											"basic": [
												{
													"key": "username",
													"value": "{{opencell.username}}",
													"type": "string"
												},
												{
													"key": "password",
													"value": "{{opencell.password}}",
													"type": "string"
												},
												{
													"key": "saveHelperData",
													"value": true,
													"type": "boolean"
												},
												{
													"key": "showPassword",
													"value": false,
													"type": "boolean"
												}
											]
										},
										"method": "POST",
										"header": [
											{
												"key": "Content-Type",
												"value": "application/json"
											},
											{
												"key": "Authorization",
												"value": "Basic b3BlbmNlbGwuYWRtaW46b3BlbmNlbGwuYWRtaW4="
											}
										],
										"body": {
											"mode": "raw",
											"raw": "{\n    \"code\": \"{{request.label.1}}\",\n    \"description\": \"{{request.label.4}}\",\n    \"durationUnit\": \"MONTH\",\n    \"defaultDuration\": \"{{request.label.2}}\",\n    \"customFields\": {\n        \"customField\": [\n            {\n                \"code\": \"CF_{{request.label.0}}_{{template.code}}_DISCOUNT_CATEGORY\",\n                \"stringValue\": \"{{request.label.3}}\"\n            }\n        ]\n    }\n}"
										},
										"url": {
											"raw": "{{opencell.url}}/catalog/discountPlan/createOrUpdate",
											"host": [
												"{{opencell.url}}"
											],
											"path": [
												"catalog",
												"discountPlan",
												"createOrUpdate"
											]
										}
									},
									"response": []
								},
								{
									"name": "DPI|PROMOADH1E_SM|FIXED|1",
									"request": {
										"auth": {
											"type": "basic",
											"basic": [
												{
													"key": "username",
													"value": "{{opencell.username}}",
													"type": "string"
												},
												{
													"key": "password",
													"value": "{{opencell.password}}",
													"type": "string"
												},
												{
													"key": "saveHelperData",
													"value": true,
													"type": "boolean"
												},
												{
													"key": "showPassword",
													"value": false,
													"type": "boolean"
												}
											]
										},
										"method": "POST",
										"header": [
											{
												"key": "Content-Type",
												"value": "application/json"
											},
											{
												"key": "Authorization",
												"value": "Basic b3BlbmNlbGwuYWRtaW46b3BlbmNlbGwuYWRtaW4="
											}
										],
										"body": {
											"mode": "raw",
											"raw": "{\r\n    \"code\": \"{{request.label.1}}\",\r\n    \"discountPlanCode\": \"{{request.label.1}}\",\r\n    \"invoiceCategoryCode\": \"ICAT_{{template.code}}_REC\",\r\n    \"invoiceSubCategoryCode\": null,\r\n    \"expressionEl\": null,\r\n    \"discountPlanItemType\": \"{{request.label.2}}\",\r\n    \"discountValue\": {{request.label.3}},\r\n    \"discountValueEL\": null,\r\n    \"disabled\": false,\r\n    \"accountingCode\": null\r\n}\r\n"
										},
										"url": {
											"raw": "{{opencell.url}}/catalog/discountPlanItem/createOrUpdate",
											"host": [
												"{{opencell.url}}"
											],
											"path": [
												"catalog",
												"discountPlanItem",
												"createOrUpdate"
											]
										}
									},
									"response": []
								}
							],
							"_postman_isSubFolder": true
						},
						{
							"name": "PROMO1M_SM",
							"item": [
								{
									"name": "DP|PROMO1M_SM|1|10|Remise 1 mois d'abonnement offert",
									"request": {
										"auth": {
											"type": "basic",
											"basic": [
												{
													"key": "username",
													"value": "{{opencell.username}}",
													"type": "string"
												},
												{
													"key": "password",
													"value": "{{opencell.password}}",
													"type": "string"
												},
												{
													"key": "saveHelperData",
													"value": true,
													"type": "boolean"
												},
												{
													"key": "showPassword",
													"value": false,
													"type": "boolean"
												}
											]
										},
										"method": "POST",
										"header": [
											{
												"key": "Content-Type",
												"value": "application/json"
											},
											{
												"key": "Authorization",
												"value": "Basic b3BlbmNlbGwuYWRtaW46b3BlbmNlbGwuYWRtaW4="
											}
										],
										"body": {
											"mode": "raw",
											"raw": "{\n    \"code\": \"{{request.label.1}}\",\n    \"description\": \"{{request.label.4}}\",\n    \"durationUnit\": \"MONTH\",\n    \"defaultDuration\": \"{{request.label.2}}\",\n    \"customFields\": {\n        \"customField\": [\n            {\n                \"code\": \"CF_{{request.label.0}}_{{template.code}}_DISCOUNT_CATEGORY\",\n                \"stringValue\": \"{{request.label.3}}\"\n            }\n        ]\n    }\n}"
										},
										"url": {
											"raw": "{{opencell.url}}/catalog/discountPlan/createOrUpdate",
											"host": [
												"{{opencell.url}}"
											],
											"path": [
												"catalog",
												"discountPlan",
												"createOrUpdate"
											]
										}
									},
									"response": []
								},
								{
									"name": "DPI|PROMO1M_SM|FIXED|7.9",
									"request": {
										"auth": {
											"type": "basic",
											"basic": [
												{
													"key": "username",
													"value": "{{opencell.username}}",
													"type": "string"
												},
												{
													"key": "password",
													"value": "{{opencell.password}}",
													"type": "string"
												},
												{
													"key": "saveHelperData",
													"value": true,
													"type": "boolean"
												},
												{
													"key": "showPassword",
													"value": false,
													"type": "boolean"
												}
											]
										},
										"method": "POST",
										"header": [
											{
												"key": "Content-Type",
												"value": "application/json"
											},
											{
												"key": "Authorization",
												"value": "Basic b3BlbmNlbGwuYWRtaW46b3BlbmNlbGwuYWRtaW4="
											}
										],
										"body": {
											"mode": "raw",
											"raw": "{\r\n    \"code\": \"{{request.label.1}}\",\r\n    \"discountPlanCode\": \"{{request.label.1}}\",\r\n    \"invoiceCategoryCode\": \"ICAT_{{template.code}}_REC\",\r\n    \"invoiceSubCategoryCode\": null,\r\n    \"expressionEl\": null,\r\n    \"discountPlanItemType\": \"{{request.label.2}}\",\r\n    \"discountValue\": {{request.label.3}},\r\n    \"discountValueEL\": null,\r\n    \"disabled\": false,\r\n    \"accountingCode\": null\r\n}\r\n"
										},
										"url": {
											"raw": "{{opencell.url}}/catalog/discountPlanItem/createOrUpdate",
											"host": [
												"{{opencell.url}}"
											],
											"path": [
												"catalog",
												"discountPlanItem",
												"createOrUpdate"
											]
										}
									},
									"response": []
								}
							],
							"_postman_isSubFolder": true
						},
						{
							"name": "PROMO1MADH_SM",
							"item": [
								{
									"name": "DP|PROMO1MADH_SM|1|11|Remise 1 mois d'abonnement offert",
									"request": {
										"auth": {
											"type": "basic",
											"basic": [
												{
													"key": "username",
													"value": "{{opencell.username}}",
													"type": "string"
												},
												{
													"key": "password",
													"value": "{{opencell.password}}",
													"type": "string"
												},
												{
													"key": "saveHelperData",
													"value": true,
													"type": "boolean"
												},
												{
													"key": "showPassword",
													"value": false,
													"type": "boolean"
												}
											]
										},
										"method": "POST",
										"header": [
											{
												"key": "Content-Type",
												"value": "application/json"
											},
											{
												"key": "Authorization",
												"value": "Basic b3BlbmNlbGwuYWRtaW46b3BlbmNlbGwuYWRtaW4="
											}
										],
										"body": {
											"mode": "raw",
											"raw": "{\n    \"code\": \"{{request.label.1}}\",\n    \"description\": \"{{request.label.4}}\",\n    \"durationUnit\": \"MONTH\",\n    \"defaultDuration\": \"{{request.label.2}}\",\n    \"customFields\": {\n        \"customField\": [\n            {\n                \"code\": \"CF_{{request.label.0}}_{{template.code}}_DISCOUNT_CATEGORY\",\n                \"stringValue\": \"{{request.label.3}}\"\n            }\n        ]\n    }\n}"
										},
										"url": {
											"raw": "{{opencell.url}}/catalog/discountPlan/createOrUpdate",
											"host": [
												"{{opencell.url}}"
											],
											"path": [
												"catalog",
												"discountPlan",
												"createOrUpdate"
											]
										}
									},
									"response": []
								},
								{
									"name": "DPI|PROMO1MADH_SM|FIXED|6.9",
									"request": {
										"auth": {
											"type": "basic",
											"basic": [
												{
													"key": "username",
													"value": "{{opencell.username}}",
													"type": "string"
												},
												{
													"key": "password",
													"value": "{{opencell.password}}",
													"type": "string"
												},
												{
													"key": "saveHelperData",
													"value": true,
													"type": "boolean"
												},
												{
													"key": "showPassword",
													"value": false,
													"type": "boolean"
												}
											]
										},
										"method": "POST",
										"header": [
											{
												"key": "Content-Type",
												"value": "application/json"
											},
											{
												"key": "Authorization",
												"value": "Basic b3BlbmNlbGwuYWRtaW46b3BlbmNlbGwuYWRtaW4="
											}
										],
										"body": {
											"mode": "raw",
											"raw": "{\r\n    \"code\": \"{{request.label.1}}\",\r\n    \"discountPlanCode\": \"{{request.label.1}}\",\r\n    \"invoiceCategoryCode\": \"ICAT_{{template.code}}_REC\",\r\n    \"invoiceSubCategoryCode\": null,\r\n    \"expressionEl\": null,\r\n    \"discountPlanItemType\": \"{{request.label.2}}\",\r\n    \"discountValue\": {{request.label.3}},\r\n    \"discountValueEL\": null,\r\n    \"disabled\": false,\r\n    \"accountingCode\": null\r\n}\r\n"
										},
										"url": {
											"raw": "{{opencell.url}}/catalog/discountPlanItem/createOrUpdate",
											"host": [
												"{{opencell.url}}"
											],
											"path": [
												"catalog",
												"discountPlanItem",
												"createOrUpdate"
											]
										}
									},
									"response": []
								}
							],
							"_postman_isSubFolder": true
						},
						{
							"name": "PROMO2M_SM",
							"item": [
								{
									"name": "DP|PROMO2M_SM|2|10|Remise 2 mois d'abonnement offert",
									"request": {
										"auth": {
											"type": "basic",
											"basic": [
												{
													"key": "username",
													"value": "{{opencell.username}}",
													"type": "string"
												},
												{
													"key": "password",
													"value": "{{opencell.password}}",
													"type": "string"
												},
												{
													"key": "saveHelperData",
													"value": true,
													"type": "boolean"
												},
												{
													"key": "showPassword",
													"value": false,
													"type": "boolean"
												}
											]
										},
										"method": "POST",
										"header": [
											{
												"key": "Content-Type",
												"value": "application/json"
											},
											{
												"key": "Authorization",
												"value": "Basic b3BlbmNlbGwuYWRtaW46b3BlbmNlbGwuYWRtaW4="
											}
										],
										"body": {
											"mode": "raw",
											"raw": "{\n    \"code\": \"{{request.label.1}}\",\n    \"description\": \"{{request.label.4}}\",\n    \"durationUnit\": \"MONTH\",\n    \"defaultDuration\": \"{{request.label.2}}\",\n    \"customFields\": {\n        \"customField\": [\n            {\n                \"code\": \"CF_{{request.label.0}}_{{template.code}}_DISCOUNT_CATEGORY\",\n                \"stringValue\": \"{{request.label.3}}\"\n            }\n        ]\n    }\n}"
										},
										"url": {
											"raw": "{{opencell.url}}/catalog/discountPlan/createOrUpdate",
											"host": [
												"{{opencell.url}}"
											],
											"path": [
												"catalog",
												"discountPlan",
												"createOrUpdate"
											]
										}
									},
									"response": []
								},
								{
									"name": "DPI|PROMO2M_SM|FIXED|7.9",
									"request": {
										"auth": {
											"type": "basic",
											"basic": [
												{
													"key": "username",
													"value": "{{opencell.username}}",
													"type": "string"
												},
												{
													"key": "password",
													"value": "{{opencell.password}}",
													"type": "string"
												},
												{
													"key": "saveHelperData",
													"value": true,
													"type": "boolean"
												},
												{
													"key": "showPassword",
													"value": false,
													"type": "boolean"
												}
											]
										},
										"method": "POST",
										"header": [
											{
												"key": "Content-Type",
												"value": "application/json"
											},
											{
												"key": "Authorization",
												"value": "Basic b3BlbmNlbGwuYWRtaW46b3BlbmNlbGwuYWRtaW4="
											}
										],
										"body": {
											"mode": "raw",
											"raw": "{\r\n    \"code\": \"{{request.label.1}}\",\r\n    \"discountPlanCode\": \"{{request.label.1}}\",\r\n    \"invoiceCategoryCode\": \"ICAT_{{template.code}}_REC\",\r\n    \"invoiceSubCategoryCode\": null,\r\n    \"expressionEl\": null,\r\n    \"discountPlanItemType\": \"{{request.label.2}}\",\r\n    \"discountValue\": {{request.label.3}},\r\n    \"discountValueEL\": null,\r\n    \"disabled\": false,\r\n    \"accountingCode\": null\r\n}\r\n"
										},
										"url": {
											"raw": "{{opencell.url}}/catalog/discountPlanItem/createOrUpdate",
											"host": [
												"{{opencell.url}}"
											],
											"path": [
												"catalog",
												"discountPlanItem",
												"createOrUpdate"
											]
										}
									},
									"response": []
								}
							],
							"_postman_isSubFolder": true
						},
						{
							"name": "PROMO2MADH_SM",
							"item": [
								{
									"name": "DP|PROMO2MADH_SM|2|10|Remise 2 mois d'abonnement offert",
									"request": {
										"auth": {
											"type": "basic",
											"basic": [
												{
													"key": "username",
													"value": "{{opencell.username}}",
													"type": "string"
												},
												{
													"key": "password",
													"value": "{{opencell.password}}",
													"type": "string"
												},
												{
													"key": "saveHelperData",
													"value": true,
													"type": "boolean"
												},
												{
													"key": "showPassword",
													"value": false,
													"type": "boolean"
												}
											]
										},
										"method": "POST",
										"header": [
											{
												"key": "Content-Type",
												"value": "application/json"
											},
											{
												"key": "Authorization",
												"value": "Basic b3BlbmNlbGwuYWRtaW46b3BlbmNlbGwuYWRtaW4="
											}
										],
										"body": {
											"mode": "raw",
											"raw": "{\n    \"code\": \"{{request.label.1}}\",\n    \"description\": \"{{request.label.4}}\",\n    \"durationUnit\": \"MONTH\",\n    \"defaultDuration\": \"{{request.label.2}}\",\n    \"customFields\": {\n        \"customField\": [\n            {\n                \"code\": \"CF_{{request.label.0}}_{{template.code}}_DISCOUNT_CATEGORY\",\n                \"stringValue\": \"{{request.label.3}}\"\n            }\n        ]\n    }\n}"
										},
										"url": {
											"raw": "{{opencell.url}}/catalog/discountPlan/createOrUpdate",
											"host": [
												"{{opencell.url}}"
											],
											"path": [
												"catalog",
												"discountPlan",
												"createOrUpdate"
											]
										}
									},
									"response": []
								},
								{
									"name": "DPI|PROMO2MADH_SM|FIXED|6.9",
									"request": {
										"auth": {
											"type": "basic",
											"basic": [
												{
													"key": "username",
													"value": "{{opencell.username}}",
													"type": "string"
												},
												{
													"key": "password",
													"value": "{{opencell.password}}",
													"type": "string"
												},
												{
													"key": "saveHelperData",
													"value": true,
													"type": "boolean"
												},
												{
													"key": "showPassword",
													"value": false,
													"type": "boolean"
												}
											]
										},
										"method": "POST",
										"header": [
											{
												"key": "Content-Type",
												"value": "application/json"
											},
											{
												"key": "Authorization",
												"value": "Basic b3BlbmNlbGwuYWRtaW46b3BlbmNlbGwuYWRtaW4="
											}
										],
										"body": {
											"mode": "raw",
											"raw": "{\r\n    \"code\": \"{{request.label.1}}\",\r\n    \"discountPlanCode\": \"{{request.label.1}}\",\r\n    \"invoiceCategoryCode\": \"ICAT_{{template.code}}_REC\",\r\n    \"invoiceSubCategoryCode\": null,\r\n    \"expressionEl\": null,\r\n    \"discountPlanItemType\": \"{{request.label.2}}\",\r\n    \"discountValue\": {{request.label.3}},\r\n    \"discountValueEL\": null,\r\n    \"disabled\": false,\r\n    \"accountingCode\": null\r\n}\r\n"
										},
										"url": {
											"raw": "{{opencell.url}}/catalog/discountPlanItem/createOrUpdate",
											"host": [
												"{{opencell.url}}"
											],
											"path": [
												"catalog",
												"discountPlanItem",
												"createOrUpdate"
											]
										}
									},
									"response": []
								}
							],
							"_postman_isSubFolder": true
						},
						{
							"name": "PROMO3M_SM",
							"item": [
								{
									"name": "DP|PROMO3M_SM|3|10|Remise 3 mois d'abonnement offert",
									"request": {
										"auth": {
											"type": "basic",
											"basic": [
												{
													"key": "username",
													"value": "{{opencell.username}}",
													"type": "string"
												},
												{
													"key": "password",
													"value": "{{opencell.password}}",
													"type": "string"
												},
												{
													"key": "saveHelperData",
													"value": true,
													"type": "boolean"
												},
												{
													"key": "showPassword",
													"value": false,
													"type": "boolean"
												}
											]
										},
										"method": "POST",
										"header": [
											{
												"key": "Content-Type",
												"value": "application/json"
											},
											{
												"key": "Authorization",
												"value": "Basic b3BlbmNlbGwuYWRtaW46b3BlbmNlbGwuYWRtaW4="
											}
										],
										"body": {
											"mode": "raw",
											"raw": "{\n    \"code\": \"{{request.label.1}}\",\n    \"description\": \"{{request.label.4}}\",\n    \"durationUnit\": \"MONTH\",\n    \"defaultDuration\": \"{{request.label.2}}\",\n    \"customFields\": {\n        \"customField\": [\n            {\n                \"code\": \"CF_{{request.label.0}}_{{template.code}}_DISCOUNT_CATEGORY\",\n                \"stringValue\": \"{{request.label.3}}\"\n            }\n        ]\n    }\n}"
										},
										"url": {
											"raw": "{{opencell.url}}/catalog/discountPlan/createOrUpdate",
											"host": [
												"{{opencell.url}}"
											],
											"path": [
												"catalog",
												"discountPlan",
												"createOrUpdate"
											]
										}
									},
									"response": []
								},
								{
									"name": "DPI|PROMO3M_SM|FIXED|7.9",
									"request": {
										"auth": {
											"type": "basic",
											"basic": [
												{
													"key": "username",
													"value": "{{opencell.username}}",
													"type": "string"
												},
												{
													"key": "password",
													"value": "{{opencell.password}}",
													"type": "string"
												},
												{
													"key": "saveHelperData",
													"value": true,
													"type": "boolean"
												},
												{
													"key": "showPassword",
													"value": false,
													"type": "boolean"
												}
											]
										},
										"method": "POST",
										"header": [
											{
												"key": "Content-Type",
												"value": "application/json"
											},
											{
												"key": "Authorization",
												"value": "Basic b3BlbmNlbGwuYWRtaW46b3BlbmNlbGwuYWRtaW4="
											}
										],
										"body": {
											"mode": "raw",
											"raw": "{\r\n    \"code\": \"{{request.label.1}}\",\r\n    \"discountPlanCode\": \"{{request.label.1}}\",\r\n    \"invoiceCategoryCode\": \"ICAT_{{template.code}}_REC\",\r\n    \"invoiceSubCategoryCode\": null,\r\n    \"expressionEl\": null,\r\n    \"discountPlanItemType\": \"{{request.label.2}}\",\r\n    \"discountValue\": {{request.label.3}},\r\n    \"discountValueEL\": null,\r\n    \"disabled\": false,\r\n    \"accountingCode\": null\r\n}\r\n"
										},
										"url": {
											"raw": "{{opencell.url}}/catalog/discountPlanItem/createOrUpdate",
											"host": [
												"{{opencell.url}}"
											],
											"path": [
												"catalog",
												"discountPlanItem",
												"createOrUpdate"
											]
										}
									},
									"response": []
								}
							],
							"_postman_isSubFolder": true
						},
						{
							"name": "PROMO3MADH_SM",
							"item": [
								{
									"name": "DP|PROMO3MADH_SM|3|10|Remise 3 mois d'abonnement offert",
									"request": {
										"auth": {
											"type": "basic",
											"basic": [
												{
													"key": "username",
													"value": "{{opencell.username}}",
													"type": "string"
												},
												{
													"key": "password",
													"value": "{{opencell.password}}",
													"type": "string"
												},
												{
													"key": "saveHelperData",
													"value": true,
													"type": "boolean"
												},
												{
													"key": "showPassword",
													"value": false,
													"type": "boolean"
												}
											]
										},
										"method": "POST",
										"header": [
											{
												"key": "Content-Type",
												"value": "application/json"
											},
											{
												"key": "Authorization",
												"value": "Basic b3BlbmNlbGwuYWRtaW46b3BlbmNlbGwuYWRtaW4="
											}
										],
										"body": {
											"mode": "raw",
											"raw": "{\n    \"code\": \"{{request.label.1}}\",\n    \"description\": \"{{request.label.4}}\",\n    \"durationUnit\": \"MONTH\",\n    \"defaultDuration\": \"{{request.label.2}}\",\n    \"customFields\": {\n        \"customField\": [\n            {\n                \"code\": \"CF_{{request.label.0}}_{{template.code}}_DISCOUNT_CATEGORY\",\n                \"stringValue\": \"{{request.label.3}}\"\n            }\n        ]\n    }\n}"
										},
										"url": {
											"raw": "{{opencell.url}}/catalog/discountPlan/createOrUpdate",
											"host": [
												"{{opencell.url}}"
											],
											"path": [
												"catalog",
												"discountPlan",
												"createOrUpdate"
											]
										}
									},
									"response": []
								},
								{
									"name": "DPI|PROMO3MADH_SM|FIXED|6.9",
									"request": {
										"auth": {
											"type": "basic",
											"basic": [
												{
													"key": "username",
													"value": "{{opencell.username}}",
													"type": "string"
												},
												{
													"key": "password",
													"value": "{{opencell.password}}",
													"type": "string"
												},
												{
													"key": "saveHelperData",
													"value": true,
													"type": "boolean"
												},
												{
													"key": "showPassword",
													"value": false,
													"type": "boolean"
												}
											]
										},
										"method": "POST",
										"header": [
											{
												"key": "Content-Type",
												"value": "application/json"
											},
											{
												"key": "Authorization",
												"value": "Basic b3BlbmNlbGwuYWRtaW46b3BlbmNlbGwuYWRtaW4="
											}
										],
										"body": {
											"mode": "raw",
											"raw": "{\r\n    \"code\": \"{{request.label.1}}\",\r\n    \"discountPlanCode\": \"{{request.label.1}}\",\r\n    \"invoiceCategoryCode\": \"ICAT_{{template.code}}_REC\",\r\n    \"invoiceSubCategoryCode\": null,\r\n    \"expressionEl\": null,\r\n    \"discountPlanItemType\": \"{{request.label.2}}\",\r\n    \"discountValue\": {{request.label.3}},\r\n    \"discountValueEL\": null,\r\n    \"disabled\": false,\r\n    \"accountingCode\": null\r\n}\r\n"
										},
										"url": {
											"raw": "{{opencell.url}}/catalog/discountPlanItem/createOrUpdate",
											"host": [
												"{{opencell.url}}"
											],
											"path": [
												"catalog",
												"discountPlanItem",
												"createOrUpdate"
											]
										}
									},
									"response": []
								}
							],
							"_postman_isSubFolder": true
						},
						{
							"name": "PROMO6M_SM",
							"item": [
								{
									"name": "DP|PROMO6M_SM|6|10|Remise 6 mois d'abonnement offert",
									"request": {
										"auth": {
											"type": "basic",
											"basic": [
												{
													"key": "username",
													"value": "{{opencell.username}}",
													"type": "string"
												},
												{
													"key": "password",
													"value": "{{opencell.password}}",
													"type": "string"
												},
												{
													"key": "saveHelperData",
													"value": true,
													"type": "boolean"
												},
												{
													"key": "showPassword",
													"value": false,
													"type": "boolean"
												}
											]
										},
										"method": "POST",
										"header": [
											{
												"key": "Content-Type",
												"value": "application/json"
											},
											{
												"key": "Authorization",
												"value": "Basic b3BlbmNlbGwuYWRtaW46b3BlbmNlbGwuYWRtaW4="
											}
										],
										"body": {
											"mode": "raw",
											"raw": "{\n    \"code\": \"{{request.label.1}}\",\n    \"description\": \"{{request.label.4}}\",\n    \"durationUnit\": \"MONTH\",\n    \"defaultDuration\": \"{{request.label.2}}\",\n    \"customFields\": {\n        \"customField\": [\n            {\n                \"code\": \"CF_{{request.label.0}}_{{template.code}}_DISCOUNT_CATEGORY\",\n                \"stringValue\": \"{{request.label.3}}\"\n            }\n        ]\n    }\n}"
										},
										"url": {
											"raw": "{{opencell.url}}/catalog/discountPlan/createOrUpdate",
											"host": [
												"{{opencell.url}}"
											],
											"path": [
												"catalog",
												"discountPlan",
												"createOrUpdate"
											]
										}
									},
									"response": []
								},
								{
									"name": "DPI|PROMO6M_SM|FIXED|7.9",
									"request": {
										"auth": {
											"type": "basic",
											"basic": [
												{
													"key": "username",
													"value": "{{opencell.username}}",
													"type": "string"
												},
												{
													"key": "password",
													"value": "{{opencell.password}}",
													"type": "string"
												},
												{
													"key": "saveHelperData",
													"value": true,
													"type": "boolean"
												},
												{
													"key": "showPassword",
													"value": false,
													"type": "boolean"
												}
											]
										},
										"method": "POST",
										"header": [
											{
												"key": "Content-Type",
												"value": "application/json"
											},
											{
												"key": "Authorization",
												"value": "Basic b3BlbmNlbGwuYWRtaW46b3BlbmNlbGwuYWRtaW4="
											}
										],
										"body": {
											"mode": "raw",
											"raw": "{\r\n    \"code\": \"{{request.label.1}}\",\r\n    \"discountPlanCode\": \"{{request.label.1}}\",\r\n    \"invoiceCategoryCode\": \"ICAT_{{template.code}}_REC\",\r\n    \"invoiceSubCategoryCode\": null,\r\n    \"expressionEl\": null,\r\n    \"discountPlanItemType\": \"{{request.label.2}}\",\r\n    \"discountValue\": {{request.label.3}},\r\n    \"discountValueEL\": null,\r\n    \"disabled\": false,\r\n    \"accountingCode\": null\r\n}\r\n"
										},
										"url": {
											"raw": "{{opencell.url}}/catalog/discountPlanItem/createOrUpdate",
											"host": [
												"{{opencell.url}}"
											],
											"path": [
												"catalog",
												"discountPlanItem",
												"createOrUpdate"
											]
										}
									},
									"response": []
								}
							],
							"_postman_isSubFolder": true
						},
						{
							"name": "PROMO6MADH_SM",
							"item": [
								{
									"name": "DP|PROMO6MADH_SM|6|10|Remise 6 mois d'abonnement offert",
									"request": {
										"auth": {
											"type": "basic",
											"basic": [
												{
													"key": "username",
													"value": "{{opencell.username}}",
													"type": "string"
												},
												{
													"key": "password",
													"value": "{{opencell.password}}",
													"type": "string"
												},
												{
													"key": "saveHelperData",
													"value": true,
													"type": "boolean"
												},
												{
													"key": "showPassword",
													"value": false,
													"type": "boolean"
												}
											]
										},
										"method": "POST",
										"header": [
											{
												"key": "Content-Type",
												"value": "application/json"
											},
											{
												"key": "Authorization",
												"value": "Basic b3BlbmNlbGwuYWRtaW46b3BlbmNlbGwuYWRtaW4="
											}
										],
										"body": {
											"mode": "raw",
											"raw": "{\n    \"code\": \"{{request.label.1}}\",\n    \"description\": \"{{request.label.4}}\",\n    \"durationUnit\": \"MONTH\",\n    \"defaultDuration\": \"{{request.label.2}}\",\n    \"customFields\": {\n        \"customField\": [\n            {\n                \"code\": \"CF_{{request.label.0}}_{{template.code}}_DISCOUNT_CATEGORY\",\n                \"stringValue\": \"{{request.label.3}}\"\n            }\n        ]\n    }\n}"
										},
										"url": {
											"raw": "{{opencell.url}}/catalog/discountPlan/createOrUpdate",
											"host": [
												"{{opencell.url}}"
											],
											"path": [
												"catalog",
												"discountPlan",
												"createOrUpdate"
											]
										}
									},
									"response": []
								},
								{
									"name": "DPI|PROMO6MADH_SM|FIXED|6.9",
									"request": {
										"auth": {
											"type": "basic",
											"basic": [
												{
													"key": "username",
													"value": "{{opencell.username}}",
													"type": "string"
												},
												{
													"key": "password",
													"value": "{{opencell.password}}",
													"type": "string"
												},
												{
													"key": "saveHelperData",
													"value": true,
													"type": "boolean"
												},
												{
													"key": "showPassword",
													"value": false,
													"type": "boolean"
												}
											]
										},
										"method": "POST",
										"header": [
											{
												"key": "Content-Type",
												"value": "application/json"
											},
											{
												"key": "Authorization",
												"value": "Basic b3BlbmNlbGwuYWRtaW46b3BlbmNlbGwuYWRtaW4="
											}
										],
										"body": {
											"mode": "raw",
											"raw": "{\r\n    \"code\": \"{{request.label.1}}\",\r\n    \"discountPlanCode\": \"{{request.label.1}}\",\r\n    \"invoiceCategoryCode\": \"ICAT_{{template.code}}_REC\",\r\n    \"invoiceSubCategoryCode\": null,\r\n    \"expressionEl\": null,\r\n    \"discountPlanItemType\": \"{{request.label.2}}\",\r\n    \"discountValue\": {{request.label.3}},\r\n    \"discountValueEL\": null,\r\n    \"disabled\": false,\r\n    \"accountingCode\": null\r\n}\r\n"
										},
										"url": {
											"raw": "{{opencell.url}}/catalog/discountPlanItem/createOrUpdate",
											"host": [
												"{{opencell.url}}"
											],
											"path": [
												"catalog",
												"discountPlanItem",
												"createOrUpdate"
											]
										}
									},
									"response": []
								}
							],
							"_postman_isSubFolder": true
						},
						{
							"name": "PROMO12M_SM",
							"item": [
								{
									"name": "DP|PROMO12M_SM|12|10|Remise 12 mois d'abonnement offert",
									"request": {
										"auth": {
											"type": "basic",
											"basic": [
												{
													"key": "username",
													"value": "{{opencell.username}}",
													"type": "string"
												},
												{
													"key": "password",
													"value": "{{opencell.password}}",
													"type": "string"
												},
												{
													"key": "saveHelperData",
													"value": true,
													"type": "boolean"
												},
												{
													"key": "showPassword",
													"value": false,
													"type": "boolean"
												}
											]
										},
										"method": "POST",
										"header": [
											{
												"key": "Content-Type",
												"value": "application/json"
											},
											{
												"key": "Authorization",
												"value": "Basic b3BlbmNlbGwuYWRtaW46b3BlbmNlbGwuYWRtaW4="
											}
										],
										"body": {
											"mode": "raw",
											"raw": "{\n    \"code\": \"{{request.label.1}}\",\n    \"description\": \"{{request.label.4}}\",\n    \"durationUnit\": \"MONTH\",\n    \"defaultDuration\": \"{{request.label.2}}\",\n    \"customFields\": {\n        \"customField\": [\n            {\n                \"code\": \"CF_{{request.label.0}}_{{template.code}}_DISCOUNT_CATEGORY\",\n                \"stringValue\": \"{{request.label.3}}\"\n            }\n        ]\n    }\n}"
										},
										"url": {
											"raw": "{{opencell.url}}/catalog/discountPlan/createOrUpdate",
											"host": [
												"{{opencell.url}}"
											],
											"path": [
												"catalog",
												"discountPlan",
												"createOrUpdate"
											]
										}
									},
									"response": []
								},
								{
									"name": "DPI|PROMO12M_SM|FIXED|7.9",
									"request": {
										"auth": {
											"type": "basic",
											"basic": [
												{
													"key": "username",
													"value": "{{opencell.username}}",
													"type": "string"
												},
												{
													"key": "password",
													"value": "{{opencell.password}}",
													"type": "string"
												},
												{
													"key": "saveHelperData",
													"value": true,
													"type": "boolean"
												},
												{
													"key": "showPassword",
													"value": false,
													"type": "boolean"
												}
											]
										},
										"method": "POST",
										"header": [
											{
												"key": "Content-Type",
												"value": "application/json"
											},
											{
												"key": "Authorization",
												"value": "Basic b3BlbmNlbGwuYWRtaW46b3BlbmNlbGwuYWRtaW4="
											}
										],
										"body": {
											"mode": "raw",
											"raw": "{\r\n    \"code\": \"{{request.label.1}}\",\r\n    \"discountPlanCode\": \"{{request.label.1}}\",\r\n    \"invoiceCategoryCode\": \"ICAT_{{template.code}}_REC\",\r\n    \"invoiceSubCategoryCode\": null,\r\n    \"expressionEl\": null,\r\n    \"discountPlanItemType\": \"{{request.label.2}}\",\r\n    \"discountValue\": {{request.label.3}},\r\n    \"discountValueEL\": null,\r\n    \"disabled\": false,\r\n    \"accountingCode\": null\r\n}\r\n"
										},
										"url": {
											"raw": "{{opencell.url}}/catalog/discountPlanItem/createOrUpdate",
											"host": [
												"{{opencell.url}}"
											],
											"path": [
												"catalog",
												"discountPlanItem",
												"createOrUpdate"
											]
										}
									},
									"response": []
								}
							],
							"_postman_isSubFolder": true
						},
						{
							"name": "PROMO12MADH_SM",
							"item": [
								{
									"name": "DP|PROMO12MADH_SM|12|10|Remise 12 mois d'abonnement offert",
									"request": {
										"auth": {
											"type": "basic",
											"basic": [
												{
													"key": "username",
													"value": "{{opencell.username}}",
													"type": "string"
												},
												{
													"key": "password",
													"value": "{{opencell.password}}",
													"type": "string"
												},
												{
													"key": "saveHelperData",
													"value": true,
													"type": "boolean"
												},
												{
													"key": "showPassword",
													"value": false,
													"type": "boolean"
												}
											]
										},
										"method": "POST",
										"header": [
											{
												"key": "Content-Type",
												"value": "application/json"
											},
											{
												"key": "Authorization",
												"value": "Basic b3BlbmNlbGwuYWRtaW46b3BlbmNlbGwuYWRtaW4="
											}
										],
										"body": {
											"mode": "raw",
											"raw": "{\n    \"code\": \"{{request.label.1}}\",\n    \"description\": \"{{request.label.4}}\",\n    \"durationUnit\": \"MONTH\",\n    \"defaultDuration\": \"{{request.label.2}}\",\n    \"customFields\": {\n        \"customField\": [\n            {\n                \"code\": \"CF_{{request.label.0}}_{{template.code}}_DISCOUNT_CATEGORY\",\n                \"stringValue\": \"{{request.label.3}}\"\n            }\n        ]\n    }\n}"
										},
										"url": {
											"raw": "{{opencell.url}}/catalog/discountPlan/createOrUpdate",
											"host": [
												"{{opencell.url}}"
											],
											"path": [
												"catalog",
												"discountPlan",
												"createOrUpdate"
											]
										}
									},
									"response": []
								},
								{
									"name": "DPI|PROMO12MADH_SM|FIXED|6.9",
									"request": {
										"auth": {
											"type": "basic",
											"basic": [
												{
													"key": "username",
													"value": "{{opencell.username}}",
													"type": "string"
												},
												{
													"key": "password",
													"value": "{{opencell.password}}",
													"type": "string"
												},
												{
													"key": "saveHelperData",
													"value": true,
													"type": "boolean"
												},
												{
													"key": "showPassword",
													"value": false,
													"type": "boolean"
												}
											]
										},
										"method": "POST",
										"header": [
											{
												"key": "Content-Type",
												"value": "application/json"
											},
											{
												"key": "Authorization",
												"value": "Basic b3BlbmNlbGwuYWRtaW46b3BlbmNlbGwuYWRtaW4="
											}
										],
										"body": {
											"mode": "raw",
											"raw": "{\r\n    \"code\": \"{{request.label.1}}\",\r\n    \"discountPlanCode\": \"{{request.label.1}}\",\r\n    \"invoiceCategoryCode\": \"ICAT_{{template.code}}_REC\",\r\n    \"invoiceSubCategoryCode\": null,\r\n    \"expressionEl\": null,\r\n    \"discountPlanItemType\": \"{{request.label.2}}\",\r\n    \"discountValue\": {{request.label.3}},\r\n    \"discountValueEL\": null,\r\n    \"disabled\": false,\r\n    \"accountingCode\": null\r\n}\r\n"
										},
										"url": {
											"raw": "{{opencell.url}}/catalog/discountPlanItem/createOrUpdate",
											"host": [
												"{{opencell.url}}"
											],
											"path": [
												"catalog",
												"discountPlanItem",
												"createOrUpdate"
											]
										}
									},
									"response": []
								}
							],
							"_postman_isSubFolder": true
						},
						{
							"name": "PROMOADH10E_SA",
							"item": [
								{
									"name": "DP|PROMOADH10E_SA|null|11|Remise adhérent : -10€ sur le montant de l'abonnement",
									"request": {
										"auth": {
											"type": "basic",
											"basic": [
												{
													"key": "username",
													"value": "{{opencell.username}}",
													"type": "string"
												},
												{
													"key": "password",
													"value": "{{opencell.password}}",
													"type": "string"
												},
												{
													"key": "saveHelperData",
													"value": true,
													"type": "boolean"
												},
												{
													"key": "showPassword",
													"value": false,
													"type": "boolean"
												}
											]
										},
										"method": "POST",
										"header": [
											{
												"key": "Content-Type",
												"value": "application/json"
											},
											{
												"key": "Authorization",
												"value": "Basic b3BlbmNlbGwuYWRtaW46b3BlbmNlbGwuYWRtaW4="
											}
										],
										"body": {
											"mode": "raw",
											"raw": "{\n    \"code\": \"{{request.label.1}}\",\n    \"description\": \"{{request.label.4}}\",\n    \"durationUnit\": \"MONTH\",\n    \"defaultDuration\": \"{{request.label.2}}\",\n    \"customFields\": {\n        \"customField\": [\n            {\n                \"code\": \"CF_{{request.label.0}}_{{template.code}}_DISCOUNT_CATEGORY\",\n                \"stringValue\": \"{{request.label.3}}\"\n            }\n        ]\n    }\n}"
										},
										"url": {
											"raw": "{{opencell.url}}/catalog/discountPlan/createOrUpdate",
											"host": [
												"{{opencell.url}}"
											],
											"path": [
												"catalog",
												"discountPlan",
												"createOrUpdate"
											]
										}
									},
									"response": []
								},
								{
									"name": "DPI|PROMOADH10E_SA|FIXED|10",
									"request": {
										"auth": {
											"type": "basic",
											"basic": [
												{
													"key": "username",
													"value": "{{opencell.username}}",
													"type": "string"
												},
												{
													"key": "password",
													"value": "{{opencell.password}}",
													"type": "string"
												},
												{
													"key": "saveHelperData",
													"value": true,
													"type": "boolean"
												},
												{
													"key": "showPassword",
													"value": false,
													"type": "boolean"
												}
											]
										},
										"method": "POST",
										"header": [
											{
												"key": "Content-Type",
												"value": "application/json"
											},
											{
												"key": "Authorization",
												"value": "Basic b3BlbmNlbGwuYWRtaW46b3BlbmNlbGwuYWRtaW4="
											}
										],
										"body": {
											"mode": "raw",
											"raw": "{\r\n    \"code\": \"{{request.label.1}}\",\r\n    \"discountPlanCode\": \"{{request.label.1}}\",\r\n    \"invoiceCategoryCode\": \"ICAT_{{template.code}}_REC\",\r\n    \"invoiceSubCategoryCode\": null,\r\n    \"expressionEl\": null,\r\n    \"discountPlanItemType\": \"{{request.label.2}}\",\r\n    \"discountValue\": {{request.label.3}},\r\n    \"discountValueEL\": null,\r\n    \"disabled\": false,\r\n    \"accountingCode\": null\r\n}\r\n"
										},
										"url": {
											"raw": "{{opencell.url}}/catalog/discountPlanItem/createOrUpdate",
											"host": [
												"{{opencell.url}}"
											],
											"path": [
												"catalog",
												"discountPlanItem",
												"createOrUpdate"
											]
										}
									},
									"response": []
								}
							],
							"_postman_isSubFolder": true
						},
						{
							"name": "PROMO1M_SA",
							"item": [
								{
									"name": "DP|PROMO1M_SA|12|10|Remise 1 mois d'abonnement offert",
									"request": {
										"auth": {
											"type": "basic",
											"basic": [
												{
													"key": "username",
													"value": "{{opencell.username}}",
													"type": "string"
												},
												{
													"key": "password",
													"value": "{{opencell.password}}",
													"type": "string"
												},
												{
													"key": "saveHelperData",
													"value": true,
													"type": "boolean"
												},
												{
													"key": "showPassword",
													"value": false,
													"type": "boolean"
												}
											]
										},
										"method": "POST",
										"header": [
											{
												"key": "Content-Type",
												"value": "application/json"
											},
											{
												"key": "Authorization",
												"value": "Basic b3BlbmNlbGwuYWRtaW46b3BlbmNlbGwuYWRtaW4="
											}
										],
										"body": {
											"mode": "raw",
											"raw": "{\n    \"code\": \"{{request.label.1}}\",\n    \"description\": \"{{request.label.4}}\",\n    \"durationUnit\": \"MONTH\",\n    \"defaultDuration\": \"{{request.label.2}}\",\n    \"customFields\": {\n        \"customField\": [\n            {\n                \"code\": \"CF_{{request.label.0}}_{{template.code}}_DISCOUNT_CATEGORY\",\n                \"stringValue\": \"{{request.label.3}}\"\n            }\n        ]\n    }\n}"
										},
										"url": {
											"raw": "{{opencell.url}}/catalog/discountPlan/createOrUpdate",
											"host": [
												"{{opencell.url}}"
											],
											"path": [
												"catalog",
												"discountPlan",
												"createOrUpdate"
											]
										}
									},
									"response": []
								},
								{
									"name": "DPI|PROMO1M_SA|PERCENTAGE|1",
									"request": {
										"auth": {
											"type": "basic",
											"basic": [
												{
													"key": "username",
													"value": "{{opencell.username}}",
													"type": "string"
												},
												{
													"key": "password",
													"value": "{{opencell.password}}",
													"type": "string"
												},
												{
													"key": "saveHelperData",
													"value": true,
													"type": "boolean"
												},
												{
													"key": "showPassword",
													"value": false,
													"type": "boolean"
												}
											]
										},
										"method": "POST",
										"header": [
											{
												"key": "Content-Type",
												"value": "application/json"
											},
											{
												"key": "Authorization",
												"value": "Basic b3BlbmNlbGwuYWRtaW46b3BlbmNlbGwuYWRtaW4="
											}
										],
										"body": {
											"mode": "raw",
											"raw": "{\r\n    \"code\": \"{{request.label.1}}\",\r\n    \"discountPlanCode\": \"{{request.label.1}}\",\r\n    \"invoiceCategoryCode\": \"ICAT_{{template.code}}_REC\",\r\n    \"invoiceSubCategoryCode\": null,\r\n    \"expressionEl\": null,\r\n    \"discountPlanItemType\": \"{{request.label.2}}\",\r\n    \"discountValue\": 0,\r\n    \"discountValueEL\": \"#{ 100 * {{request.label.3}} / 12 }\",\r\n    \"disabled\": false,\r\n    \"accountingCode\": null\r\n}\r\n"
										},
										"url": {
											"raw": "{{opencell.url}}/catalog/discountPlanItem/createOrUpdate",
											"host": [
												"{{opencell.url}}"
											],
											"path": [
												"catalog",
												"discountPlanItem",
												"createOrUpdate"
											]
										}
									},
									"response": []
								}
							],
							"_postman_isSubFolder": true
						},
						{
							"name": "PROMO1MADH_SA",
							"item": [
								{
									"name": "DP|PROMO1MADH_SA|12|10|Remise 1 mois d'abonnement offert",
									"request": {
										"auth": {
											"type": "basic",
											"basic": [
												{
													"key": "username",
													"value": "{{opencell.username}}",
													"type": "string"
												},
												{
													"key": "password",
													"value": "{{opencell.password}}",
													"type": "string"
												},
												{
													"key": "saveHelperData",
													"value": true,
													"type": "boolean"
												},
												{
													"key": "showPassword",
													"value": false,
													"type": "boolean"
												}
											]
										},
										"method": "POST",
										"header": [
											{
												"key": "Content-Type",
												"value": "application/json"
											},
											{
												"key": "Authorization",
												"value": "Basic b3BlbmNlbGwuYWRtaW46b3BlbmNlbGwuYWRtaW4="
											}
										],
										"body": {
											"mode": "raw",
											"raw": "{\n    \"code\": \"{{request.label.1}}\",\n    \"description\": \"{{request.label.4}}\",\n    \"durationUnit\": \"MONTH\",\n    \"defaultDuration\": \"{{request.label.2}}\",\n    \"customFields\": {\n        \"customField\": [\n            {\n                \"code\": \"CF_{{request.label.0}}_{{template.code}}_DISCOUNT_CATEGORY\",\n                \"stringValue\": \"{{request.label.3}}\"\n            }\n        ]\n    }\n}"
										},
										"url": {
											"raw": "{{opencell.url}}/catalog/discountPlan/createOrUpdate",
											"host": [
												"{{opencell.url}}"
											],
											"path": [
												"catalog",
												"discountPlan",
												"createOrUpdate"
											]
										}
									},
									"response": []
								},
								{
									"name": "DPI|PROMO1MADH_SA|FIXED|6.58",
									"request": {
										"auth": {
											"type": "basic",
											"basic": [
												{
													"key": "username",
													"value": "{{opencell.username}}",
													"type": "string"
												},
												{
													"key": "password",
													"value": "{{opencell.password}}",
													"type": "string"
												},
												{
													"key": "saveHelperData",
													"value": true,
													"type": "boolean"
												},
												{
													"key": "showPassword",
													"value": false,
													"type": "boolean"
												}
											]
										},
										"method": "POST",
										"header": [
											{
												"key": "Content-Type",
												"value": "application/json"
											},
											{
												"key": "Authorization",
												"value": "Basic b3BlbmNlbGwuYWRtaW46b3BlbmNlbGwuYWRtaW4="
											}
										],
										"body": {
											"mode": "raw",
											"raw": "{\r\n    \"code\": \"{{request.label.1}}\",\r\n    \"discountPlanCode\": \"{{request.label.1}}\",\r\n    \"invoiceCategoryCode\": \"ICAT_{{template.code}}_REC\",\r\n    \"invoiceSubCategoryCode\": null,\r\n    \"expressionEl\": null,\r\n    \"discountPlanItemType\": \"{{request.label.2}}\",\r\n    \"discountValue\": {{request.label.3}},\r\n    \"discountValueEL\": null,\r\n    \"disabled\": false,\r\n    \"accountingCode\": null\r\n}\r\n"
										},
										"url": {
											"raw": "{{opencell.url}}/catalog/discountPlanItem/createOrUpdate",
											"host": [
												"{{opencell.url}}"
											],
											"path": [
												"catalog",
												"discountPlanItem",
												"createOrUpdate"
											]
										}
									},
									"response": []
								}
							],
							"_postman_isSubFolder": true
						},
						{
							"name": "PROMO2M_SA",
							"item": [
								{
									"name": "DP|PROMO2M_SA|12|10|Remise 2 mois d'abonnement offert",
									"request": {
										"auth": {
											"type": "basic",
											"basic": [
												{
													"key": "username",
													"value": "{{opencell.username}}",
													"type": "string"
												},
												{
													"key": "password",
													"value": "{{opencell.password}}",
													"type": "string"
												},
												{
													"key": "saveHelperData",
													"value": true,
													"type": "boolean"
												},
												{
													"key": "showPassword",
													"value": false,
													"type": "boolean"
												}
											]
										},
										"method": "POST",
										"header": [
											{
												"key": "Content-Type",
												"value": "application/json"
											},
											{
												"key": "Authorization",
												"value": "Basic b3BlbmNlbGwuYWRtaW46b3BlbmNlbGwuYWRtaW4="
											}
										],
										"body": {
											"mode": "raw",
											"raw": "{\n    \"code\": \"{{request.label.1}}\",\n    \"description\": \"{{request.label.4}}\",\n    \"durationUnit\": \"MONTH\",\n    \"defaultDuration\": \"{{request.label.2}}\",\n    \"customFields\": {\n        \"customField\": [\n            {\n                \"code\": \"CF_{{request.label.0}}_{{template.code}}_DISCOUNT_CATEGORY\",\n                \"stringValue\": \"{{request.label.3}}\"\n            }\n        ]\n    }\n}"
										},
										"url": {
											"raw": "{{opencell.url}}/catalog/discountPlan/createOrUpdate",
											"host": [
												"{{opencell.url}}"
											],
											"path": [
												"catalog",
												"discountPlan",
												"createOrUpdate"
											]
										}
									},
									"response": []
								},
								{
									"name": "DPI|PROMO2M_SA|PERCENTAGE|2",
									"request": {
										"auth": {
											"type": "basic",
											"basic": [
												{
													"key": "username",
													"value": "{{opencell.username}}",
													"type": "string"
												},
												{
													"key": "password",
													"value": "{{opencell.password}}",
													"type": "string"
												},
												{
													"key": "saveHelperData",
													"value": true,
													"type": "boolean"
												},
												{
													"key": "showPassword",
													"value": false,
													"type": "boolean"
												}
											]
										},
										"method": "POST",
										"header": [
											{
												"key": "Content-Type",
												"value": "application/json"
											},
											{
												"key": "Authorization",
												"value": "Basic b3BlbmNlbGwuYWRtaW46b3BlbmNlbGwuYWRtaW4="
											}
										],
										"body": {
											"mode": "raw",
											"raw": "{\r\n    \"code\": \"{{request.label.1}}\",\r\n    \"discountPlanCode\": \"{{request.label.1}}\",\r\n    \"invoiceCategoryCode\": \"ICAT_{{template.code}}_REC\",\r\n    \"invoiceSubCategoryCode\": null,\r\n    \"expressionEl\": null,\r\n    \"discountPlanItemType\": \"{{request.label.2}}\",\r\n    \"discountValue\": 0,\r\n    \"discountValueEL\": \"#{ 100 * {{request.label.3}} / 12 }\",\r\n    \"disabled\": false,\r\n    \"accountingCode\": null\r\n}\r\n"
										},
										"url": {
											"raw": "{{opencell.url}}/catalog/discountPlanItem/createOrUpdate",
											"host": [
												"{{opencell.url}}"
											],
											"path": [
												"catalog",
												"discountPlanItem",
												"createOrUpdate"
											]
										}
									},
									"response": []
								}
							],
							"_postman_isSubFolder": true
						},
						{
							"name": "PROMO2MADH_SA",
							"item": [
								{
									"name": "DP|PROMO2MADH_SA|12|10|Remise 2 mois d'abonnement offert",
									"request": {
										"auth": {
											"type": "basic",
											"basic": [
												{
													"key": "username",
													"value": "{{opencell.username}}",
													"type": "string"
												},
												{
													"key": "password",
													"value": "{{opencell.password}}",
													"type": "string"
												},
												{
													"key": "saveHelperData",
													"value": true,
													"type": "boolean"
												},
												{
													"key": "showPassword",
													"value": false,
													"type": "boolean"
												}
											]
										},
										"method": "POST",
										"header": [
											{
												"key": "Content-Type",
												"value": "application/json"
											},
											{
												"key": "Authorization",
												"value": "Basic b3BlbmNlbGwuYWRtaW46b3BlbmNlbGwuYWRtaW4="
											}
										],
										"body": {
											"mode": "raw",
											"raw": "{\n    \"code\": \"{{request.label.1}}\",\n    \"description\": \"{{request.label.4}}\",\n    \"durationUnit\": \"MONTH\",\n    \"defaultDuration\": \"{{request.label.2}}\",\n    \"customFields\": {\n        \"customField\": [\n            {\n                \"code\": \"CF_{{request.label.0}}_{{template.code}}_DISCOUNT_CATEGORY\",\n                \"stringValue\": \"{{request.label.3}}\"\n            }\n        ]\n    }\n}"
										},
										"url": {
											"raw": "{{opencell.url}}/catalog/discountPlan/createOrUpdate",
											"host": [
												"{{opencell.url}}"
											],
											"path": [
												"catalog",
												"discountPlan",
												"createOrUpdate"
											]
										}
									},
									"response": []
								},
								{
									"name": "DPI|PROMO2MADH_SA|FIXED|13.17",
									"request": {
										"auth": {
											"type": "basic",
											"basic": [
												{
													"key": "username",
													"value": "{{opencell.username}}",
													"type": "string"
												},
												{
													"key": "password",
													"value": "{{opencell.password}}",
													"type": "string"
												},
												{
													"key": "saveHelperData",
													"value": true,
													"type": "boolean"
												},
												{
													"key": "showPassword",
													"value": false,
													"type": "boolean"
												}
											]
										},
										"method": "POST",
										"header": [
											{
												"key": "Content-Type",
												"value": "application/json"
											},
											{
												"key": "Authorization",
												"value": "Basic b3BlbmNlbGwuYWRtaW46b3BlbmNlbGwuYWRtaW4="
											}
										],
										"body": {
											"mode": "raw",
											"raw": "{\r\n    \"code\": \"{{request.label.1}}\",\r\n    \"discountPlanCode\": \"{{request.label.1}}\",\r\n    \"invoiceCategoryCode\": \"ICAT_{{template.code}}_REC\",\r\n    \"invoiceSubCategoryCode\": null,\r\n    \"expressionEl\": null,\r\n    \"discountPlanItemType\": \"{{request.label.2}}\",\r\n    \"discountValue\": {{request.label.3}},\r\n    \"discountValueEL\": null,\r\n    \"disabled\": false,\r\n    \"accountingCode\": null\r\n}\r\n"
										},
										"url": {
											"raw": "{{opencell.url}}/catalog/discountPlanItem/createOrUpdate",
											"host": [
												"{{opencell.url}}"
											],
											"path": [
												"catalog",
												"discountPlanItem",
												"createOrUpdate"
											]
										}
									},
									"response": []
								}
							],
							"_postman_isSubFolder": true
						},
						{
							"name": "PROMO3M_SA",
							"item": [
								{
									"name": "DP|PROMO3M_SA|12|10|Remise 3 mois d'abonnement offert",
									"request": {
										"auth": {
											"type": "basic",
											"basic": [
												{
													"key": "username",
													"value": "{{opencell.username}}",
													"type": "string"
												},
												{
													"key": "password",
													"value": "{{opencell.password}}",
													"type": "string"
												},
												{
													"key": "saveHelperData",
													"value": true,
													"type": "boolean"
												},
												{
													"key": "showPassword",
													"value": false,
													"type": "boolean"
												}
											]
										},
										"method": "POST",
										"header": [
											{
												"key": "Content-Type",
												"value": "application/json"
											},
											{
												"key": "Authorization",
												"value": "Basic b3BlbmNlbGwuYWRtaW46b3BlbmNlbGwuYWRtaW4="
											}
										],
										"body": {
											"mode": "raw",
											"raw": "{\n    \"code\": \"{{request.label.1}}\",\n    \"description\": \"{{request.label.4}}\",\n    \"durationUnit\": \"MONTH\",\n    \"defaultDuration\": \"{{request.label.2}}\",\n    \"customFields\": {\n        \"customField\": [\n            {\n                \"code\": \"CF_{{request.label.0}}_{{template.code}}_DISCOUNT_CATEGORY\",\n                \"stringValue\": \"{{request.label.3}}\"\n            }\n        ]\n    }\n}"
										},
										"url": {
											"raw": "{{opencell.url}}/catalog/discountPlan/createOrUpdate",
											"host": [
												"{{opencell.url}}"
											],
											"path": [
												"catalog",
												"discountPlan",
												"createOrUpdate"
											]
										}
									},
									"response": []
								},
								{
									"name": "DPI|PROMO3M_SA|PERCENTAGE|3",
									"request": {
										"auth": {
											"type": "basic",
											"basic": [
												{
													"key": "username",
													"value": "{{opencell.username}}",
													"type": "string"
												},
												{
													"key": "password",
													"value": "{{opencell.password}}",
													"type": "string"
												},
												{
													"key": "saveHelperData",
													"value": true,
													"type": "boolean"
												},
												{
													"key": "showPassword",
													"value": false,
													"type": "boolean"
												}
											]
										},
										"method": "POST",
										"header": [
											{
												"key": "Content-Type",
												"value": "application/json"
											},
											{
												"key": "Authorization",
												"value": "Basic b3BlbmNlbGwuYWRtaW46b3BlbmNlbGwuYWRtaW4="
											}
										],
										"body": {
											"mode": "raw",
											"raw": "{\r\n    \"code\": \"{{request.label.1}}\",\r\n    \"discountPlanCode\": \"{{request.label.1}}\",\r\n    \"invoiceCategoryCode\": \"ICAT_{{template.code}}_REC\",\r\n    \"invoiceSubCategoryCode\": null,\r\n    \"expressionEl\": null,\r\n    \"discountPlanItemType\": \"{{request.label.2}}\",\r\n    \"discountValue\": 0,\r\n    \"discountValueEL\": \"#{ 100 * {{request.label.3}} / 12 }\",\r\n    \"disabled\": false,\r\n    \"accountingCode\": null\r\n}\r\n"
										},
										"url": {
											"raw": "{{opencell.url}}/catalog/discountPlanItem/createOrUpdate",
											"host": [
												"{{opencell.url}}"
											],
											"path": [
												"catalog",
												"discountPlanItem",
												"createOrUpdate"
											]
										}
									},
									"response": []
								}
							],
							"_postman_isSubFolder": true
						},
						{
							"name": "PROMO3MADH_SA",
							"item": [
								{
									"name": "DP|PROMO3MADH_SA|12|10|Remise 3 mois d'abonnement offert",
									"request": {
										"auth": {
											"type": "basic",
											"basic": [
												{
													"key": "username",
													"value": "{{opencell.username}}",
													"type": "string"
												},
												{
													"key": "password",
													"value": "{{opencell.password}}",
													"type": "string"
												},
												{
													"key": "saveHelperData",
													"value": true,
													"type": "boolean"
												},
												{
													"key": "showPassword",
													"value": false,
													"type": "boolean"
												}
											]
										},
										"method": "POST",
										"header": [
											{
												"key": "Content-Type",
												"value": "application/json"
											},
											{
												"key": "Authorization",
												"value": "Basic b3BlbmNlbGwuYWRtaW46b3BlbmNlbGwuYWRtaW4="
											}
										],
										"body": {
											"mode": "raw",
											"raw": "{\n    \"code\": \"{{request.label.1}}\",\n    \"description\": \"{{request.label.4}}\",\n    \"durationUnit\": \"MONTH\",\n    \"defaultDuration\": \"{{request.label.2}}\",\n    \"customFields\": {\n        \"customField\": [\n            {\n                \"code\": \"CF_{{request.label.0}}_{{template.code}}_DISCOUNT_CATEGORY\",\n                \"stringValue\": \"{{request.label.3}}\"\n            }\n        ]\n    }\n}"
										},
										"url": {
											"raw": "{{opencell.url}}/catalog/discountPlan/createOrUpdate",
											"host": [
												"{{opencell.url}}"
											],
											"path": [
												"catalog",
												"discountPlan",
												"createOrUpdate"
											]
										}
									},
									"response": []
								},
								{
									"name": "DPI|PROMO3MADH_SA|FIXED|19.75",
									"request": {
										"auth": {
											"type": "basic",
											"basic": [
												{
													"key": "username",
													"value": "{{opencell.username}}",
													"type": "string"
												},
												{
													"key": "password",
													"value": "{{opencell.password}}",
													"type": "string"
												},
												{
													"key": "saveHelperData",
													"value": true,
													"type": "boolean"
												},
												{
													"key": "showPassword",
													"value": false,
													"type": "boolean"
												}
											]
										},
										"method": "POST",
										"header": [
											{
												"key": "Content-Type",
												"value": "application/json"
											},
											{
												"key": "Authorization",
												"value": "Basic b3BlbmNlbGwuYWRtaW46b3BlbmNlbGwuYWRtaW4="
											}
										],
										"body": {
											"mode": "raw",
											"raw": "{\r\n    \"code\": \"{{request.label.1}}\",\r\n    \"discountPlanCode\": \"{{request.label.1}}\",\r\n    \"invoiceCategoryCode\": \"ICAT_{{template.code}}_REC\",\r\n    \"invoiceSubCategoryCode\": null,\r\n    \"expressionEl\": null,\r\n    \"discountPlanItemType\": \"{{request.label.2}}\",\r\n    \"discountValue\": {{request.label.3}},\r\n    \"discountValueEL\": null,\r\n    \"disabled\": false,\r\n    \"accountingCode\": null\r\n}\r\n"
										},
										"url": {
											"raw": "{{opencell.url}}/catalog/discountPlanItem/createOrUpdate",
											"host": [
												"{{opencell.url}}"
											],
											"path": [
												"catalog",
												"discountPlanItem",
												"createOrUpdate"
											]
										}
									},
									"response": []
								}
							],
							"_postman_isSubFolder": true
						},
						{
							"name": "PROMO6M_SA",
							"item": [
								{
									"name": "DP|PROMO6M_SA|12|10|Remise 6 mois d'abonnement offert",
									"request": {
										"auth": {
											"type": "basic",
											"basic": [
												{
													"key": "username",
													"value": "{{opencell.username}}",
													"type": "string"
												},
												{
													"key": "password",
													"value": "{{opencell.password}}",
													"type": "string"
												},
												{
													"key": "saveHelperData",
													"value": true,
													"type": "boolean"
												},
												{
													"key": "showPassword",
													"value": false,
													"type": "boolean"
												}
											]
										},
										"method": "POST",
										"header": [
											{
												"key": "Content-Type",
												"value": "application/json"
											},
											{
												"key": "Authorization",
												"value": "Basic b3BlbmNlbGwuYWRtaW46b3BlbmNlbGwuYWRtaW4="
											}
										],
										"body": {
											"mode": "raw",
											"raw": "{\n    \"code\": \"{{request.label.1}}\",\n    \"description\": \"{{request.label.4}}\",\n    \"durationUnit\": \"MONTH\",\n    \"defaultDuration\": \"{{request.label.2}}\",\n    \"customFields\": {\n        \"customField\": [\n            {\n                \"code\": \"CF_{{request.label.0}}_{{template.code}}_DISCOUNT_CATEGORY\",\n                \"stringValue\": \"{{request.label.3}}\"\n            }\n        ]\n    }\n}"
										},
										"url": {
											"raw": "{{opencell.url}}/catalog/discountPlan/createOrUpdate",
											"host": [
												"{{opencell.url}}"
											],
											"path": [
												"catalog",
												"discountPlan",
												"createOrUpdate"
											]
										}
									},
									"response": []
								},
								{
									"name": "DPI|PROMO6M_SA|PERCENTAGE|6",
									"request": {
										"auth": {
											"type": "basic",
											"basic": [
												{
													"key": "username",
													"value": "{{opencell.username}}",
													"type": "string"
												},
												{
													"key": "password",
													"value": "{{opencell.password}}",
													"type": "string"
												},
												{
													"key": "saveHelperData",
													"value": true,
													"type": "boolean"
												},
												{
													"key": "showPassword",
													"value": false,
													"type": "boolean"
												}
											]
										},
										"method": "POST",
										"header": [
											{
												"key": "Content-Type",
												"value": "application/json"
											},
											{
												"key": "Authorization",
												"value": "Basic b3BlbmNlbGwuYWRtaW46b3BlbmNlbGwuYWRtaW4="
											}
										],
										"body": {
											"mode": "raw",
											"raw": "{\r\n    \"code\": \"{{request.label.1}}\",\r\n    \"discountPlanCode\": \"{{request.label.1}}\",\r\n    \"invoiceCategoryCode\": \"ICAT_{{template.code}}_REC\",\r\n    \"invoiceSubCategoryCode\": null,\r\n    \"expressionEl\": null,\r\n    \"discountPlanItemType\": \"{{request.label.2}}\",\r\n    \"discountValue\": 0,\r\n    \"discountValueEL\": \"#{ 100 * {{request.label.3}} / 12 }\",\r\n    \"disabled\": false,\r\n    \"accountingCode\": null\r\n}\r\n"
										},
										"url": {
											"raw": "{{opencell.url}}/catalog/discountPlanItem/createOrUpdate",
											"host": [
												"{{opencell.url}}"
											],
											"path": [
												"catalog",
												"discountPlanItem",
												"createOrUpdate"
											]
										}
									},
									"response": []
								}
							],
							"_postman_isSubFolder": true
						},
						{
							"name": "PROMO6MADH_SA",
							"item": [
								{
									"name": "DP|PROMO6MADH_SA|12|10|Remise 6 mois d'abonnement offert",
									"request": {
										"auth": {
											"type": "basic",
											"basic": [
												{
													"key": "username",
													"value": "{{opencell.username}}",
													"type": "string"
												},
												{
													"key": "password",
													"value": "{{opencell.password}}",
													"type": "string"
												},
												{
													"key": "saveHelperData",
													"value": true,
													"type": "boolean"
												},
												{
													"key": "showPassword",
													"value": false,
													"type": "boolean"
												}
											]
										},
										"method": "POST",
										"header": [
											{
												"key": "Content-Type",
												"value": "application/json"
											},
											{
												"key": "Authorization",
												"value": "Basic b3BlbmNlbGwuYWRtaW46b3BlbmNlbGwuYWRtaW4="
											}
										],
										"body": {
											"mode": "raw",
											"raw": "{\n    \"code\": \"{{request.label.1}}\",\n    \"description\": \"{{request.label.4}}\",\n    \"durationUnit\": \"MONTH\",\n    \"defaultDuration\": \"{{request.label.2}}\",\n    \"customFields\": {\n        \"customField\": [\n            {\n                \"code\": \"CF_{{request.label.0}}_{{template.code}}_DISCOUNT_CATEGORY\",\n                \"stringValue\": \"{{request.label.3}}\"\n            }\n        ]\n    }\n}"
										},
										"url": {
											"raw": "{{opencell.url}}/catalog/discountPlan/createOrUpdate",
											"host": [
												"{{opencell.url}}"
											],
											"path": [
												"catalog",
												"discountPlan",
												"createOrUpdate"
											]
										}
									},
									"response": []
								},
								{
									"name": "DPI|PROMO6MADH_SA|FIXED|39.5",
									"request": {
										"auth": {
											"type": "basic",
											"basic": [
												{
													"key": "username",
													"value": "{{opencell.username}}",
													"type": "string"
												},
												{
													"key": "password",
													"value": "{{opencell.password}}",
													"type": "string"
												},
												{
													"key": "saveHelperData",
													"value": true,
													"type": "boolean"
												},
												{
													"key": "showPassword",
													"value": false,
													"type": "boolean"
												}
											]
										},
										"method": "POST",
										"header": [
											{
												"key": "Content-Type",
												"value": "application/json"
											},
											{
												"key": "Authorization",
												"value": "Basic b3BlbmNlbGwuYWRtaW46b3BlbmNlbGwuYWRtaW4="
											}
										],
										"body": {
											"mode": "raw",
											"raw": "{\r\n    \"code\": \"{{request.label.1}}\",\r\n    \"discountPlanCode\": \"{{request.label.1}}\",\r\n    \"invoiceCategoryCode\": \"ICAT_{{template.code}}_REC\",\r\n    \"invoiceSubCategoryCode\": null,\r\n    \"expressionEl\": null,\r\n    \"discountPlanItemType\": \"{{request.label.2}}\",\r\n    \"discountValue\": {{request.label.3}},\r\n    \"discountValueEL\": null,\r\n    \"disabled\": false,\r\n    \"accountingCode\": null\r\n}\r\n"
										},
										"url": {
											"raw": "{{opencell.url}}/catalog/discountPlanItem/createOrUpdate",
											"host": [
												"{{opencell.url}}"
											],
											"path": [
												"catalog",
												"discountPlanItem",
												"createOrUpdate"
											]
										}
									},
									"response": []
								}
							],
							"_postman_isSubFolder": true
						},
						{
							"name": "PROMO12M_SA",
							"item": [
								{
									"name": "DP|PROMO12M_SA|12|10|Remise 12 mois d'abonnement offert",
									"request": {
										"auth": {
											"type": "basic",
											"basic": [
												{
													"key": "username",
													"value": "{{opencell.username}}",
													"type": "string"
												},
												{
													"key": "password",
													"value": "{{opencell.password}}",
													"type": "string"
												},
												{
													"key": "saveHelperData",
													"value": true,
													"type": "boolean"
												},
												{
													"key": "showPassword",
													"value": false,
													"type": "boolean"
												}
											]
										},
										"method": "POST",
										"header": [
											{
												"key": "Content-Type",
												"value": "application/json"
											},
											{
												"key": "Authorization",
												"value": "Basic b3BlbmNlbGwuYWRtaW46b3BlbmNlbGwuYWRtaW4="
											}
										],
										"body": {
											"mode": "raw",
											"raw": "{\n    \"code\": \"{{request.label.1}}\",\n    \"description\": \"{{request.label.4}}\",\n    \"durationUnit\": \"MONTH\",\n    \"defaultDuration\": \"{{request.label.2}}\",\n    \"customFields\": {\n        \"customField\": [\n            {\n                \"code\": \"CF_{{request.label.0}}_{{template.code}}_DISCOUNT_CATEGORY\",\n                \"stringValue\": \"{{request.label.3}}\"\n            }\n        ]\n    }\n}"
										},
										"url": {
											"raw": "{{opencell.url}}/catalog/discountPlan/createOrUpdate",
											"host": [
												"{{opencell.url}}"
											],
											"path": [
												"catalog",
												"discountPlan",
												"createOrUpdate"
											]
										}
									},
									"response": []
								},
								{
									"name": "DPI|PROMO12M_SA|PERCENTAGE|12",
									"request": {
										"auth": {
											"type": "basic",
											"basic": [
												{
													"key": "username",
													"value": "{{opencell.username}}",
													"type": "string"
												},
												{
													"key": "password",
													"value": "{{opencell.password}}",
													"type": "string"
												},
												{
													"key": "saveHelperData",
													"value": true,
													"type": "boolean"
												},
												{
													"key": "showPassword",
													"value": false,
													"type": "boolean"
												}
											]
										},
										"method": "POST",
										"header": [
											{
												"key": "Content-Type",
												"value": "application/json"
											},
											{
												"key": "Authorization",
												"value": "Basic b3BlbmNlbGwuYWRtaW46b3BlbmNlbGwuYWRtaW4="
											}
										],
										"body": {
											"mode": "raw",
											"raw": "{\r\n    \"code\": \"{{request.label.1}}\",\r\n    \"discountPlanCode\": \"{{request.label.1}}\",\r\n    \"invoiceCategoryCode\": \"ICAT_{{template.code}}_REC\",\r\n    \"invoiceSubCategoryCode\": null,\r\n    \"expressionEl\": null,\r\n    \"discountPlanItemType\": \"{{request.label.2}}\",\r\n    \"discountValue\": 0,\r\n    \"discountValueEL\": \"#{ 100 * {{request.label.3}} / 12 }\",\r\n    \"disabled\": false,\r\n    \"accountingCode\": null\r\n}\r\n"
										},
										"url": {
											"raw": "{{opencell.url}}/catalog/discountPlanItem/createOrUpdate",
											"host": [
												"{{opencell.url}}"
											],
											"path": [
												"catalog",
												"discountPlanItem",
												"createOrUpdate"
											]
										}
									},
									"response": []
								}
							],
							"_postman_isSubFolder": true
						},
						{
							"name": "PROMO12MADH_SA",
							"item": [
								{
									"name": "DP|PROMO12MADH_SA|12|10|Remise 12 mois d'abonnement offert",
									"request": {
										"auth": {
											"type": "basic",
											"basic": [
												{
													"key": "username",
													"value": "{{opencell.username}}",
													"type": "string"
												},
												{
													"key": "password",
													"value": "{{opencell.password}}",
													"type": "string"
												},
												{
													"key": "saveHelperData",
													"value": true,
													"type": "boolean"
												},
												{
													"key": "showPassword",
													"value": false,
													"type": "boolean"
												}
											]
										},
										"method": "POST",
										"header": [
											{
												"key": "Content-Type",
												"value": "application/json"
											},
											{
												"key": "Authorization",
												"value": "Basic b3BlbmNlbGwuYWRtaW46b3BlbmNlbGwuYWRtaW4="
											}
										],
										"body": {
											"mode": "raw",
											"raw": "{\n    \"code\": \"{{request.label.1}}\",\n    \"description\": \"{{request.label.4}}\",\n    \"durationUnit\": \"MONTH\",\n    \"defaultDuration\": \"{{request.label.2}}\",\n    \"customFields\": {\n        \"customField\": [\n            {\n                \"code\": \"CF_{{request.label.0}}_{{template.code}}_DISCOUNT_CATEGORY\",\n                \"stringValue\": \"{{request.label.3}}\"\n            }\n        ]\n    }\n}"
										},
										"url": {
											"raw": "{{opencell.url}}/catalog/discountPlan/createOrUpdate",
											"host": [
												"{{opencell.url}}"
											],
											"path": [
												"catalog",
												"discountPlan",
												"createOrUpdate"
											]
										}
									},
									"response": []
								},
								{
									"name": "DPI|PROMO12MADH_SA|FIXED|79",
									"request": {
										"auth": {
											"type": "basic",
											"basic": [
												{
													"key": "username",
													"value": "{{opencell.username}}",
													"type": "string"
												},
												{
													"key": "password",
													"value": "{{opencell.password}}",
													"type": "string"
												},
												{
													"key": "saveHelperData",
													"value": true,
													"type": "boolean"
												},
												{
													"key": "showPassword",
													"value": false,
													"type": "boolean"
												}
											]
										},
										"method": "POST",
										"header": [
											{
												"key": "Content-Type",
												"value": "application/json"
											},
											{
												"key": "Authorization",
												"value": "Basic b3BlbmNlbGwuYWRtaW46b3BlbmNlbGwuYWRtaW4="
											}
										],
										"body": {
											"mode": "raw",
											"raw": "{\r\n    \"code\": \"{{request.label.1}}\",\r\n    \"discountPlanCode\": \"{{request.label.1}}\",\r\n    \"invoiceCategoryCode\": \"ICAT_{{template.code}}_REC\",\r\n    \"invoiceSubCategoryCode\": null,\r\n    \"expressionEl\": null,\r\n    \"discountPlanItemType\": \"{{request.label.2}}\",\r\n    \"discountValue\": {{request.label.3}},\r\n    \"discountValueEL\": null,\r\n    \"disabled\": false,\r\n    \"accountingCode\": null\r\n}\r\n"
										},
										"url": {
											"raw": "{{opencell.url}}/catalog/discountPlanItem/createOrUpdate",
											"host": [
												"{{opencell.url}}"
											],
											"path": [
												"catalog",
												"discountPlanItem",
												"createOrUpdate"
											]
										}
									},
									"response": []
								}
							],
							"_postman_isSubFolder": true
						}
					],
					"event": [
						{
							"listen": "prerequest",
							"script": {
								"id": "72512eba-9d1d-41e6-beb4-92c3ea379ac3",
								"type": "text/javascript",
								"exec": [
									""
								]
							}
						},
						{
							"listen": "test",
							"script": {
								"id": "e4abdf0f-c5a0-45fd-b2ec-fdb0c6a96691",
								"type": "text/javascript",
								"exec": [
									"var jsonData = JSON.parse(responseBody);",
									"tests[\"is.success\"] = jsonData.status === \"SUCCESS\";"
								]
							}
						}
					],
					"_postman_isSubFolder": true
				}
			]
		},
		{
			"name": "#525 : F+ Renouvellement KO",
			"item": [
				{
					"name": "FNAC_PLUS|CAL_YEARLY_PERIOD|49|Fnac+|Abonnement annuel - 30 jours d'essai puis 49€/an|- 5% de remise immédiate Livre / Papeterie / Sport / High-Tech / Kids / Bricolage / Jardinage\\n- Des promotions sur les Cd, DVD, Blu-ray\\n- Ventes privées jusqu'à 40% su",
					"event": [
						{
							"listen": "test",
							"script": {
								"id": "4d15ba87-3952-4687-a2e8-298a6dbc507c",
								"exec": [
									"var jsonData = JSON.parse(responseBody);",
									"tests[\"is.success\"] = jsonData.status === \"SUCCESS\";"
								],
								"type": "text/javascript"
							}
						}
					],
					"request": {
						"auth": {
							"type": "basic",
							"basic": [
								{
									"key": "username",
									"value": "{{opencell.username}}",
									"type": "string"
								},
								{
									"key": "password",
									"value": "{{opencell.password}}",
									"type": "string"
								},
								{
									"key": "showPassword",
									"value": false,
									"type": "boolean"
								}
							]
						},
						"method": "POST",
						"header": [
							{
								"key": "Proxy-Authorization",
								"value": "{{proxy.auth}}"
							},
							{
								"key": "Content-Type",
								"value": "application/json"
							},
							{
								"key": "Authorization",
								"value": "Basic b3BlbmNlbGwuYWRtaW46aFViNTJBTTNDZSEh"
							}
						],
						"body": {
							"mode": "raw",
							"raw": "{\r\n    \"code\":\"OF_FD_FNAC_PLUS\",\r\n    \"name\":\"Fnac+\",\r\n    \"description\":\"Abonnement annuel - 30 jours d'essai puis 49€/an\",\r\n    \"longDescription\":\"- 5% de remise imm\\u00E9diate Livre / Papeterie / Sport / High-Tech / Kids / Bricolage / Jardinage\\r\\n- Des promotions sur les Cd, DVD, Blu-ray\\r\\n- Ventes priv\\u00E9es jusqu'\\u00E0 40% sur une s\\u00E9lection de produits\\r\\n- 10\\u20AC offerts tous les 100\\u20AC d'achat en ch\\u00E8que cadeau lors des week-ends adh\\u00E9rents\\r\\n- Abonnement 3 mois DEEZER PREMIUM +\\r\\n- Plus de 18 000 spectacles par an \\u00E0 tarif r\\u00E9duit \\r\\n- 5% de remise imm\\u00E9diate sur les travaux photo\\r\\n- Livraison gratuite et illimit\\u00E9e en 1 jour\\r\\n- Livraison gratuite en 2H Chrono\\r\\n- Livraison gratuite en Relais colis\\r\\n- Livraison gratuite chez Darty\\r\\n- Livraison gratuite sur rendez-vous\\r\\n- Livraison et installation gratuite de votre TV\\r\\n- Caisse prioritaire en magasin\",\r\n    \"disabled\":false,\r\n    \"lifeCycleStatus\": \"ACTIVE\",\r\n    \"bomCode\":null,\r\n    \"offerTemplateCategoryCode\": \"ADH\",\r\n    \"autoEndOfEngagement\": true,\r\n    \"renewalRule\": {\r\n        \"initialyActiveFor\": 12,\r\n        \"initialyActiveForUnit\": \"MONTH\",\r\n        \"autoRenew\": true,\r\n        \"daysNotifyRenewal\": 0,\r\n        \"endOfTermAction\": \"TERMINATE\",\r\n        \"terminationReasonCode\": \"TR_OTHER_NO_REFUND\",\r\n        \"renewFor\": 12,\r\n        \"renewForUnit\": \"MONTH\",\r\n        \"extendAgreementPeriodToSubscribedTillDate\": true\r\n    } ,\r\n    \"offerServiceTemplate\": [\r\n\t\t{\"serviceTemplate\":{\"code\":\"SE_{{template.code}}_TRY\"},\"mandatory\":false,\"incompatibleServiceTemplate\":[]},\r\n\t\t{\"serviceTemplate\":{\"code\":\"SE_{{template.code}}_REC_MAIN\"},\"mandatory\":true,\"incompatibleServiceTemplate\":[]}\r\n\t],\r\n    \"offerProductTemplate\": null\r\n\t\r\n}"
						},
						"url": {
							"raw": "{{opencell.url}}/catalog/offerTemplate/createOrUpdate",
							"host": [
								"{{opencell.url}}"
							],
							"path": [
								"catalog",
								"offerTemplate",
								"createOrUpdate"
							]
						}
					},
					"response": []
				}
			]
		},
		{
			"name": "#539 : Bullk operations  Remises",
			"item": [
				{
					"name": "Create BullkDiscountScript",
					"event": [
						{
							"listen": "test",
							"script": {
								"id": "ec19d5ea-12fa-4350-9db4-da427f7ffcc5",
								"exec": [
									"var jsonData = JSON.parse(responseBody);",
									"tests[\"is.success\"] = jsonData.actionStatus.status === \"SUCCESS\";"
								],
								"type": "text/javascript"
							}
						}
					],
					"request": {
						"auth": {
							"type": "basic",
							"basic": [
								{
									"key": "username",
									"value": "{{opencell.username}}",
									"type": "string"
								},
								{
									"key": "password",
									"value": "{{opencell.password}}",
									"type": "string"
								}
							]
						},
						"method": "POST",
						"header": [
							{
								"key": "Content-Type",
								"value": "application/json"
							}
						],
						"body": {
							"mode": "raw",
							"raw": "{\n    \"code\": \"org.meveo.service.script.BullkDiscountScript\",\n    \"description\": \"BullkDiscountScript\",\n    \"type\": \"JAVA\",\n    \"script\": \"package org.meveo.service.script;\\r\\n\\r\\nimport static org.apache.commons.lang3.StringUtils.isEmpty;\\r\\nimport static org.apache.commons.lang3.StringUtils.isNotEmpty;\\r\\n\\r\\nimport java.io.BufferedWriter;\\r\\nimport java.io.File;\\r\\nimport java.io.FileWriter;\\r\\nimport java.math.BigDecimal;\\r\\nimport java.util.Collection;\\r\\nimport java.util.Collections;\\r\\nimport java.util.Date;\\r\\nimport java.util.List;\\r\\nimport java.util.Map;\\r\\n\\r\\nimport org.apache.commons.collections4.MapUtils;\\r\\nimport org.apache.commons.lang3.BooleanUtils;\\r\\nimport org.meveo.admin.exception.BusinessException;\\r\\nimport org.meveo.model.billing.BillingAccount;\\r\\nimport org.meveo.model.billing.Subscription;\\r\\nimport org.meveo.model.billing.SubscriptionStatusEnum;\\r\\nimport org.meveo.model.catalog.DiscountPlan;\\r\\nimport org.meveo.model.catalog.OneShotChargeTemplate;\\r\\nimport org.meveo.model.shared.DateUtils;\\r\\nimport org.meveo.service.billing.impl.BillingAccountService;\\r\\nimport org.meveo.service.billing.impl.OneShotChargeInstanceService;\\r\\nimport org.meveo.service.billing.impl.SubscriptionService;\\r\\nimport org.meveo.service.catalog.impl.DiscountPlanService;\\r\\nimport org.meveo.service.catalog.impl.OneShotChargeTemplateService;\\r\\nimport org.meveo.service.crm.impl.CustomFieldInstanceService;\\r\\n\\r\\n/**\\r\\n * A script to apply a bulk discounts / promotions.\\r\\n * \\r\\n * @author Said Ramli\\r\\n */\\r\\npublic class BullkDiscountScript extends Script {\\r\\n\\r\\n    private static final String RES_DATE_FORMAT = \\\"dd/MM/yyyy\\\";\\r\\n    private static final String CF_OF_FD_DISCOUNT_LIST = \\\"CF_OF_FD_DISCOUNT_LIST\\\";\\r\\n    private final SubscriptionService subscriptionService = (SubscriptionService) getServiceInterface(SubscriptionService.class.getSimpleName());\\r\\n    private final DiscountPlanService discountPlanService = (DiscountPlanService) getServiceInterface(DiscountPlanService.class.getSimpleName());\\r\\n    private CustomFieldInstanceService customFieldInstanceService = (CustomFieldInstanceService) getServiceInterface(CustomFieldInstanceService.class.getSimpleName());\\r\\n    private BillingAccountService billingAccountService = (BillingAccountService) getServiceInterface(BillingAccountService.class.getSimpleName());\\r\\n    private OneShotChargeTemplateService chargeTemplateService = (OneShotChargeTemplateService) getServiceInterface(OneShotChargeTemplateService.class.getSimpleName());\\r\\n    private OneShotChargeInstanceService oneShotChargeInstanceService = (OneShotChargeInstanceService) getServiceInterface(OneShotChargeInstanceService.class.getSimpleName());\\r\\n    public static final String UTF8_BOM = \\\"\\\\uFEFF\\\";\\r\\n\\r\\n    private final String CSV_SEP = \\\";\\\";\\r\\n    private String filePath = null;\\r\\n\\r\\n    @SuppressWarnings(\\\"unchecked\\\")\\r\\n    @Override\\r\\n    public void execute(Map<String, Object> methodContext) throws BusinessException {\\r\\n\\r\\n        log.debug(\\\" >>> BullkDiscountScript -> execute {} \\\", methodContext.entrySet());\\r\\n\\r\\n        try (FileWriter fileWriter = new FileWriter(filePath, true); BufferedWriter bufferedWriter = new BufferedWriter(fileWriter);) {\\r\\n            String toDay = DateUtils.formatDateWithPattern(new Date(), RES_DATE_FORMAT);\\r\\n\\r\\n            Map<String, String> record = (Map<String, String>) methodContext.get(\\\"RECORD\\\");\\r\\n            if (MapUtils.isEmpty(record)) {\\r\\n                throw new BusinessException(String.format(\\\"Parameter RECORD is missing\\\"));\\r\\n            }\\r\\n            String numContract = record.get(\\\"numContract\\\");\\r\\n            String startDate = record.get(\\\"startDate\\\");\\r\\n            String promoCode = record.get(\\\"promoCode\\\");\\r\\n            String remiseCode = record.get(\\\"remiseCode\\\");\\r\\n            String remiseFreeCode = record.get(\\\"remiseFreeCode\\\");\\r\\n            String sAmountToApply = record.get(\\\"amountToApply\\\");\\r\\n            String libelleFacture = record.get(\\\"libelleFacture\\\");\\r\\n\\r\\n            log.debug(\\\" >>> BullkDiscountScript -> record :[{}, {}, {}, {}, {}, {}, {}]\\\", numContract, remiseCode, remiseFreeCode, promoCode, startDate, sAmountToApply,\\r\\n                libelleFacture);\\r\\n\\r\\n            StringBuffer msgBuffer = new StringBuffer();\\r\\n            if (isEmpty(numContract)) {\\r\\n                msgBuffer.append(\\\"num\\u00E9ro de contrat manquant.\\\");\\r\\n            }\\r\\n            Subscription s = subscriptionService.findByCode(numContract);\\r\\n            if (s == null) {\\r\\n                msgBuffer.append(\\\"Contrat inconnu.\\\");\\r\\n            }\\r\\n            Date discountStartDate = DateUtils.parseDateWithPattern(startDate, RES_DATE_FORMAT);\\r\\n            if (discountStartDate == null) {\\r\\n                msgBuffer.append(\\\"Date manquante ou format invalid (JJ/MM/AAAA attendu).\\\");\\r\\n            }\\r\\n            if (isEmpty(remiseCode) && isEmpty(remiseFreeCode) && isEmpty(promoCode)) {\\r\\n                msgBuffer.append(\\\"Code promo ou remise ou remise montant libre : manquant.\\\");\\r\\n            } else {\\r\\n                int nbrCodes = 0;\\r\\n                if (isNotEmpty(remiseCode)) {\\r\\n                    nbrCodes++;\\r\\n                }\\r\\n                if (isNotEmpty(remiseFreeCode)) {\\r\\n                    nbrCodes++;\\r\\n                }\\r\\n                if (isNotEmpty(promoCode)) {\\r\\n                    nbrCodes++;\\r\\n                }\\r\\n                if (nbrCodes > 1) {\\r\\n                    msgBuffer.append(\\\"Un seul code est autoris\\u00E9 (code promo code remise ou code remise montant libre).\\\");\\r\\n                }\\r\\n            }\\r\\n\\r\\n            StringBuffer line = new StringBuffer().append(numContract).append(CSV_SEP).append(startDate).append(CSV_SEP).append(promoCode).append(CSV_SEP).append(remiseCode)\\r\\n                .append(CSV_SEP).append(remiseFreeCode).append(CSV_SEP).append(libelleFacture).append(CSV_SEP).append(sAmountToApply).append(CSV_SEP);\\r\\n\\r\\n            String validationMsg = msgBuffer.toString();\\r\\n\\r\\n            if (!isEmpty(validationMsg)) {\\r\\n                line.append(\\\"KO\\\").append(CSV_SEP).append(toDay).append(CSV_SEP).append(validationMsg);\\r\\n            } else {\\r\\n                List<String> listAllowedPromoAndRemiseCodes = (List<String>) customFieldInstanceService.getCFValue(s.getOffer(), CF_OF_FD_DISCOUNT_LIST);\\r\\n\\r\\n                if (!isEmpty(promoCode)) {\\r\\n                    DiscountPlan dp = discountPlanService.findByCode(promoCode);\\r\\n                    if (dp == null) {\\r\\n                        line.append(\\\"KO\\\").append(CSV_SEP).append(toDay).append(CSV_SEP).append(\\\"Code promo inconnu.\\\");\\r\\n                    } else {\\r\\n                        log.debug(\\\" DiscountPlan found = {} \\\", dp);\\r\\n\\r\\n                        if (s.getStatus() == SubscriptionStatusEnum.RESILIATED || s.getStatus() == SubscriptionStatusEnum.CANCELED) {\\r\\n                            line.append(\\\"KO\\\").append(CSV_SEP).append(toDay).append(CSV_SEP).append(\\\"Contrat d\\u00E9j\\u00E0 r\\u00E9sili\\u00E9 ou annul\\u00E9e\\\");\\r\\n                        } else {\\r\\n                            if (this.isPromoOrRemiseCodeNotAllowed(promoCode, listAllowedPromoAndRemiseCodes)) {\\r\\n                                line.append(\\\"KO\\\").append(CSV_SEP).append(toDay).append(CSV_SEP).append(\\\"Code promo non autoris\\u00E9 pour l\\u2019offre du contrat.\\\");\\r\\n                            } else {\\r\\n                                instantiateDiscountPlan(toDay, s, line, dp, discountStartDate);\\r\\n                            }\\r\\n                        }\\r\\n                    }\\r\\n                } else { // in this case , remiseCode or remiseFreeCode should be not empty :\\r\\n\\r\\n                    if (!isEmpty(remiseCode)) { // remise pontuelle\\r\\n                        OneShotChargeTemplate remise = chargeTemplateService.findByCode(remiseCode);\\r\\n                        log.debug(\\\" remiseCode = {} \\\", remise);\\r\\n                        if (remise == null) {\\r\\n                            line.append(\\\"KO\\\").append(CSV_SEP).append(toDay).append(CSV_SEP).append(\\\"Code remise inconnu.\\\");\\r\\n                        } else {\\r\\n\\r\\n                            if (this.isPromoOrRemiseCodeNotAllowed(remiseCode, listAllowedPromoAndRemiseCodes)) {\\r\\n                                line.append(\\\"KO\\\").append(CSV_SEP).append(toDay).append(CSV_SEP).append(\\\"Code remise non autoris\\u00E9 pour l\\u2019offre du contrat.\\\");\\r\\n                            } else {\\r\\n\\r\\n                                if (BooleanUtils.isTrue(remise.getAmountEditable())) { // remonte erreur si montant modifiable\\r\\n                                    line.append(\\\"KO\\\").append(CSV_SEP).append(toDay).append(CSV_SEP).append(\\\"Code remise correspond \\u00E0 un montant modifiable !\\\");\\r\\n                                } else {\\r\\n                                    validationMsg = msgBuffer.toString();\\r\\n                                    if (isNotEmpty(validationMsg)) {\\r\\n                                        line.append(\\\"KO\\\").append(CSV_SEP).append(toDay).append(CSV_SEP).append(validationMsg);\\r\\n                                    } else {\\r\\n                                        this.applyOneShotCharge(toDay, null, s, discountStartDate, line, remise, null);\\r\\n                                    }\\r\\n                                }\\r\\n                            }\\r\\n                        }\\r\\n                    } else { // remise montant libre\\r\\n\\r\\n                        OneShotChargeTemplate remise = chargeTemplateService.findByCode(remiseFreeCode);\\r\\n                        log.debug(\\\" remiseFreeCode = {} \\\", remise);\\r\\n                        if (remise == null) {\\r\\n                            line.append(\\\"KO\\\").append(CSV_SEP).append(toDay).append(CSV_SEP).append(\\\"Code remise inconnu.\\\");\\r\\n                        } else {\\r\\n                            if (this.isPromoOrRemiseCodeNotAllowed(remiseFreeCode, listAllowedPromoAndRemiseCodes)) {\\r\\n                                line.append(\\\"KO\\\").append(CSV_SEP).append(toDay).append(CSV_SEP).append(\\\"Code remise non autoris\\u00E9 pour l\\u2019offre du contrat.\\\");\\r\\n                            } else {\\r\\n\\r\\n                                if (!BooleanUtils.isTrue(remise.getAmountEditable())) { // remonte erreur si montant non modifiable\\r\\n                                    line.append(\\\"KO\\\").append(CSV_SEP).append(toDay).append(CSV_SEP).append(\\\"Code remise correspond \\u00E0 un montant non modifiable !\\\");\\r\\n                                } else {\\r\\n                                    BigDecimal amountToApply = null;\\r\\n                                    if (isEmpty(libelleFacture)) {\\r\\n                                        msgBuffer.append(\\\"Libell\\u00E9 facture manquant.\\\");\\r\\n                                    }\\r\\n                                    if (isEmpty(sAmountToApply)) {\\r\\n                                        msgBuffer.append(\\\"Montant remise manquant.\\\");\\r\\n                                    } else {\\r\\n                                        amountToApply = toBigDecimal(sAmountToApply);\\r\\n                                        if (amountToApply == null) {\\r\\n                                            msgBuffer.append(\\\"Montant format invalid.\\\");\\r\\n                                        }\\r\\n                                    }\\r\\n                                    validationMsg = msgBuffer.toString();\\r\\n                                    if (isNotEmpty(validationMsg)) {\\r\\n                                        line.append(\\\"KO\\\").append(CSV_SEP).append(toDay).append(CSV_SEP).append(validationMsg);\\r\\n                                    } else {\\r\\n                                        applyOneShotCharge(toDay, libelleFacture, s, discountStartDate, line, remise, amountToApply);\\r\\n                                    }\\r\\n                                }\\r\\n                            }\\r\\n                        }\\r\\n\\r\\n                    }\\r\\n                }\\r\\n            }\\r\\n            bufferedWriter.write(UTF8_BOM);\\r\\n            bufferedWriter.write(line.toString());\\r\\n            bufferedWriter.newLine();\\r\\n        } catch (Exception e) {\\r\\n            log.error(e.getMessage(), e);\\r\\n        }\\r\\n    }\\r\\n\\r\\n    private void instantiateDiscountPlan(String toDay, Subscription s, StringBuffer line, DiscountPlan dp, Date startDate) {\\r\\n        try {\\r\\n            BillingAccount ba = s.getUserAccount().getBillingAccount();\\r\\n            billingAccountService.instantiateDiscountPlan(ba, dp, null, startDate);\\r\\n            line.append(\\\"OK\\\").append(CSV_SEP).append(toDay);\\r\\n        } catch (Exception e) {\\r\\n            line.append(\\\"KO\\\").append(CSV_SEP).append(toDay).append(CSV_SEP).append(\\\"Erreur d'application du code promo : \\\").append(e.getMessage());\\r\\n        }\\r\\n    }\\r\\n\\r\\n    private void applyOneShotCharge(String toDay, String libelleFacture, Subscription s, Date discountStartDate, StringBuffer line, OneShotChargeTemplate remise,\\r\\n            BigDecimal amountToApply) {\\r\\n        try {\\r\\n            if (amountToApply != null) {\\r\\n                this.oneShotChargeInstanceService.oneShotChargeApplication(s, remise, null, discountStartDate, null, amountToApply, null, null, null, null, libelleFacture, null,\\r\\n                    true);\\r\\n            } else {\\r\\n                this.oneShotChargeInstanceService.oneShotChargeApplication(s, remise, null, discountStartDate, null, null, null, null, null, libelleFacture, null, true);\\r\\n            }\\r\\n            line.append(\\\"OK\\\").append(CSV_SEP).append(toDay);\\r\\n        } catch (Exception e) {\\r\\n            line.append(\\\"KO\\\").append(CSV_SEP).append(toDay).append(CSV_SEP).append(\\\"Erreur d'application du code remise : \\\").append(e.getMessage());\\r\\n        }\\r\\n    }\\r\\n\\r\\n    private BigDecimal toBigDecimal(String sAmountToApply) {\\r\\n        try {\\r\\n            return new BigDecimal(sAmountToApply);\\r\\n        } catch (Exception e) {\\r\\n            log.error(e.getMessage(), e);\\r\\n            return null;\\r\\n        }\\r\\n    }\\r\\n\\r\\n    private boolean isPromoOrRemiseCodeNotAllowed(String dpCode, List<String> listAllowedCodes) {\\r\\n        try {\\r\\n            if (safe(listAllowedCodes).contains(dpCode)) {\\r\\n                return false;\\r\\n            }\\r\\n            return true;\\r\\n        } catch (Exception e) {\\r\\n            log.error(e.getMessage(), e);\\r\\n            return true;\\r\\n        }\\r\\n    }\\r\\n\\r\\n    @Override\\r\\n    public void init(Map<String, Object> methodContext) throws BusinessException {\\r\\n        try {\\r\\n            log.debug(\\\" >>> Start BullkDiscountScript -> init {} \\\", methodContext.entrySet());\\r\\n            final String originFilename = this.getContextParamAsString(methodContext, \\\"origin_filename\\\", true);\\r\\n            final String outputDir = this.getContextParamAsString(methodContext, \\\"outputDir\\\", true);\\r\\n            this.filePath = outputDir.concat(File.separator).concat(\\\"results_\\\" + originFilename);\\r\\n            log.debug(\\\" >>> End BullkDiscountScript -> init -> this.filePath {} \\\", filePath);\\r\\n        } catch (Exception e) {\\r\\n            throw new BusinessException(e.getMessage(), e);\\r\\n        }\\r\\n    }\\r\\n\\r\\n    @SuppressWarnings(\\\"unchecked\\\")\\r\\n    public static <T> Collection<T> safe(Collection<T> collection) {\\r\\n        return collection == null ? Collections.EMPTY_LIST : collection;\\r\\n    }\\r\\n\\r\\n    private String getContextParamAsString(Map<String, Object> methodContext, String key, boolean mandatory) throws BusinessException {\\r\\n        String value = (String) methodContext.get(key);\\r\\n        if (mandatory && isEmpty(value)) {\\r\\n            throw new BusinessException(String.format(\\\"Missing context param : %s\\\", key));\\r\\n        }\\r\\n        return value;\\r\\n    }\\r\\n}\",\n    \"executionRoles\": [],\n    \"sourcingRoles\": []\n}"
						},
						"url": {
							"raw": "{{opencell.url}}/scriptInstance/createOrUpdate",
							"host": [
								"{{opencell.url}}"
							],
							"path": [
								"scriptInstance",
								"createOrUpdate"
							]
						}
					},
					"response": []
				},
				{
					"name": "Create BullkDiscountScript_JOB",
					"event": [
						{
							"listen": "test",
							"script": {
								"id": "c32a251b-792f-4045-acf0-c78afb89525a",
								"exec": [
									"var jsonData = JSON.parse(responseBody);",
									"tests[\"is.success\"] = jsonData.status === \"SUCCESS\";"
								],
								"type": "text/javascript"
							}
						}
					],
					"request": {
						"auth": {
							"type": "basic",
							"basic": [
								{
									"key": "username",
									"value": "{{opencell.username}}",
									"type": "string"
								},
								{
									"key": "password",
									"value": "{{opencell.password}}",
									"type": "string"
								}
							]
						},
						"method": "POST",
						"header": [
							{
								"key": "Content-Type",
								"value": "application/json"
							},
							{
								"key": "Proxy-Authorization",
								"type": "text",
								"value": "{{proxy.auth}}"
							}
						],
						"body": {
							"mode": "raw",
							"raw": "{\r\n    \"code\": \"BullkDiscountScript_JOB\",\r\n    \"description\": \"BullkDiscountScript_JOB\",\r\n    \"jobCategory\": \"MEDIATION\",\r\n    \"jobTemplate\": \"FlatFileProcessingJob\" , \r\n    \"customFields\" : {\r\n    \t\"customField\": [ \r\n    \t\t{ \"code\":\"FlatFileProcessingJob_inputDir\", \"stringValue\":\"/batch/remises\"},\r\n    \t\t{ \"code\":\"FlatFileProcessingJob_fileNameExtension\", \"stringValue\":\"csv\"},\r\n    \t\t{ \"code\":\"FlatFileProcessingJob_mappingConf\", \r\n    \t\t\r\n    \t\t  \"stringValue\":\"<beanio xmlns=\\\"http://www.beanio.org/2012/03\\\" \\r\\n  xmlns:xsi=\\\"http://www.w3.org/2001/XMLSchema-instance\\\"\\r\\n  xsi:schemaLocation=\\\"http://www.beanio.org/2012/03 http://www.beanio.org/2012/03/mapping.xsd\\\">\\r\\n  <stream name=\\\"RECORD\\\" format=\\\"csv\\\" strict=\\\"true\\\">\\r\\n    <parser>\\r\\n      <property name=\\\"delimiter\\\" value=\\\";\\\" />\\r\\n    </parser>     \\r\\n    <record name=\\\"contract\\\"  minOccurs=\\\"1\\\" maxOccurs=\\\"unbounded\\\" class=\\\"map\\\">  \\r\\n       <field name=\\\"numContract\\\" minOccurs=\\\"0\\\" position=\\\"0\\\" />\\r\\n       <field name=\\\"startDate\\\" minOccurs=\\\"0\\\" position=\\\"1\\\"/>\\r\\n       <field name=\\\"promoCode\\\" minOccurs=\\\"0\\\" position=\\\"2\\\"/>\\r\\n       <field name=\\\"remiseCode\\\" minOccurs=\\\"0\\\" position=\\\"3\\\"/>\\r\\n       <field name=\\\"remiseFreeCode\\\" minOccurs=\\\"0\\\" position=\\\"4\\\"/>\\r\\n       <field name=\\\"libelleFacture\\\" minOccurs=\\\"0\\\" position=\\\"5\\\"/>\\r\\n       <field name=\\\"amountToApply\\\" minOccurs=\\\"0\\\" position=\\\"6\\\"/>\\r\\n    </record> \\r\\n  </stream>\\r\\n</beanio>\"\r\n    \t\t},\r\n    \t\t{ \"code\":\"FlatFileProcessingJob_scriptsFlow\", \"stringValue\":\"org.meveo.service.script.BullkDiscountScript\"},\r\n    \t\t{ \"code\":\"FlatFileProcessingJob_recordVariableName\", \"stringValue\":\"RECORD\"},\r\n    \t\t{ \"code\":\"FlatFileProcessingJob_errorAction\", \"stringValue\":\"CONTINUE\"} \r\n    \t\t\r\n    \t] \r\n    }\r\n}"
						},
						"url": {
							"raw": "{{opencell.url}}/jobInstance/createOrUpdate",
							"host": [
								"{{opencell.url}}"
							],
							"path": [
								"jobInstance",
								"createOrUpdate"
							]
						},
						"description": "This JOB is parsing a flat file containing contracts references , to change massively their retry value."
					},
					"response": []
				}
			]
		},
		{
			"name": "#528 #532: WS Souscription - Paramétrage des codes offres applicables",
			"item": [
				{
					"name": "Create  CF_FD_WS_OF_CODES",
					"event": [
						{
							"listen": "test",
							"script": {
								"id": "09f3cb29-78ac-40ec-a838-272c01b229ca",
								"exec": [
									"var jsonData = JSON.parse(responseBody);",
									"tests[\"is.success\"] = jsonData.status === \"SUCCESS\";"
								],
								"type": "text/javascript"
							}
						}
					],
					"request": {
						"auth": {
							"type": "basic",
							"basic": [
								{
									"key": "username",
									"value": "{{opencell.username}}",
									"type": "string"
								},
								{
									"key": "password",
									"value": "{{opencell.password}}",
									"type": "string"
								}
							]
						},
						"method": "POST",
						"header": [
							{
								"key": "Content-Type",
								"value": "application/json"
							},
							{
								"key": "Proxy-Authorization",
								"type": "text",
								"value": "{{proxy.auth}}"
							}
						],
						"body": {
							"mode": "raw",
							"raw": "{\n    \"code\": \"CF_FD_WS_OF_ALLOWED_CODES\",\n    \"description\": \"Codes offres applicables\",\n    \"fieldType\": \"STRING\",\n    \"appliesTo\": \"PROVIDER\",\n    \"storageType\": \"LIST\",\n    \"valueRequired\": false,\n    \"guiPosition\" : \"tab:WS Souscription:3;fieldGroup:WS URLs:3;field:2\", \n    \"versionable\": false,\n    \"triggerEndPeriodEvent\": false,\n    \"allowEdit\": true,\n    \"hideOnNew\": false,\n    \"cacheValue\": false\n}\n\n"
						},
						"url": {
							"raw": "{{opencell.url}}/customFieldTemplate/createOrUpdate",
							"host": [
								"{{opencell.url}}"
							],
							"path": [
								"customFieldTemplate",
								"createOrUpdate"
							]
						},
						"description": "https://www.freeformatter.com/java-dotnet-escape.html#ad-output"
					},
					"response": []
				},
				{
					"name": "Adding list CF_FD_WS_OF_CODES values",
					"event": [
						{
							"listen": "test",
							"script": {
								"id": "5d98e7ef-ffc8-4a4e-9a52-025e34058c05",
								"exec": [
									"var jsonData = JSON.parse(responseBody);",
									"tests[\"is.success\"] = jsonData.status === \"SUCCESS\";"
								],
								"type": "text/javascript"
							}
						}
					],
					"request": {
						"auth": {
							"type": "basic",
							"basic": [
								{
									"key": "username",
									"value": "{{opencell.username}}",
									"type": "string"
								},
								{
									"key": "password",
									"value": "{{opencell.password}}",
									"type": "string"
								},
								{
									"key": "showPassword",
									"value": false,
									"type": "boolean"
								}
							]
						},
						"method": "POST",
						"header": [
							{
								"key": "Proxy-Authorization",
								"value": "{{proxy.auth}}"
							},
							{
								"key": "Content-Type",
								"value": "application/json"
							}
						],
						"body": {
							"mode": "raw",
							"raw": "{\n  \"code\": \"{{provider.code}}\",\n    \"customFields\": { \n\t   \"customField\": [\n\t    \t{\n\t          \"code\": \"CF_FD_WS_OF_ALLOWED_CODES\", \n\t          \"value\" : [\n\t          \t    { \"value\":  \"OF_FD_FNAC_PLUS\" } \n\t           ] \n\t         }\n\t     ]\n     }\n}"
						},
						"url": {
							"raw": "{{opencell.url}}/provider/createOrUpdate",
							"host": [
								"{{opencell.url}}"
							],
							"path": [
								"provider",
								"createOrUpdate"
							]
						}
					},
					"response": []
				},
				{
					"name": "Creat SubsResiliationAndEndOfTermNotifScript Patch",
					"event": [
						{
							"listen": "test",
							"script": {
								"id": "4b51b1bd-d7f0-4632-b601-490b832e7987",
								"exec": [
									"var jsonData = JSON.parse(responseBody);",
									"tests[\"is.success\"] = jsonData.actionStatus.status === \"SUCCESS\";"
								],
								"type": "text/javascript"
							}
						},
						{
							"listen": "prerequest",
							"script": {
								"id": "0f267d8f-f8bf-4132-a799-6eca17dd71f1",
								"exec": [
									"const escapeJava = (data) =>  {",
									"  ",
									"  data = data.replace(/\\\\/g, '\\\\\\\\');",
									"  data = data.replace(/(\\n)/g, '\\\\n');",
									"  data = data.replace(/(\\t)/g, '\\\\t');",
									"  data = data.replace(/(\\r)/g, '\\\\r');",
									"  data = data.replace(/\"/g, '\\\\\"');",
									"  ",
									" // console.log('escapeJava -> data : ', data);",
									"  return data;",
									"}",
									"",
									"let script = `package org.meveo.service.script;",
									"",
									"import static org.meveo.model.shared.DateUtils.addDaysToDate;",
									"import static org.meveo.model.shared.DateUtils.formatDateWithPattern;",
									"import static org.meveo.model.shared.DateUtils.truncateTime;",
									"",
									"import java.math.BigDecimal;",
									"import java.util.Collection;",
									"import java.util.Collections;",
									"import java.util.Date;",
									"import java.util.List;",
									"import java.util.Map;",
									"",
									"import javax.ws.rs.client.Entity;",
									"import javax.ws.rs.core.Form;",
									"import javax.ws.rs.core.HttpHeaders;",
									"import javax.ws.rs.core.Response;",
									"import javax.ws.rs.core.Response.Status;",
									"",
									"import org.apache.commons.lang3.StringUtils;",
									"import org.jboss.resteasy.client.jaxrs.ResteasyClient;",
									"import org.jboss.resteasy.client.jaxrs.ResteasyClientBuilder;",
									"import org.jboss.resteasy.client.jaxrs.ResteasyWebTarget;",
									"import org.meveo.admin.exception.BusinessException;",
									"import org.meveo.commons.utils.ResteasyClientProxyBuilder;",
									"import org.meveo.event.FieldAudit;",
									"import org.meveo.model.ICustomFieldEntity;",
									"import org.meveo.model.billing.Subscription;",
									"import org.meveo.model.billing.SubscriptionStatusEnum;",
									"import org.meveo.model.crm.Provider;",
									"import org.meveo.service.crm.impl.CustomFieldInstanceService;",
									"import org.meveo.service.crm.impl.ProviderService;",
									"",
									"import com.fasterxml.jackson.annotation.JsonCreator;",
									"import com.fasterxml.jackson.annotation.JsonIgnoreProperties;",
									"import com.fasterxml.jackson.annotation.JsonInclude;",
									"import com.fasterxml.jackson.annotation.JsonInclude.Include;",
									"import com.fasterxml.jackson.annotation.JsonProperty;",
									"",
									"/**",
									" * A script firing WS Subscription for an immediate termination or new end of term.",
									" * Updated by #532 + #528",
									" * @author Said Ramli",
									" */",
									"public class SubsResiliationAndEndOfTermNotifScript extends Script {",
									"",
									"    private static final String CF_FD_WS_TOKEN_AUTH_HEADER = \"CF_FD_WS_TOKEN_AUTH_HEADER\";",
									"    private static final String CF_FD_WS_TOKEN_GRANTTYPE = \"CF_FD_WS_TOKEN_GRANTTYPE\";",
									"    private static final String CF_FD_WS_TOKEN_SCOPE = \"CF_FD_WS_TOKEN_SCOPE\";",
									"    private static final String CF_FD_WS_TOKEN_URL = \"CF_FD_WS_TOKEN_URL\";",
									"    private static final String CF_FD_WS_TOKEN_VALUE = \"CF_FD_WS_TOKEN_VALUE\";",
									"",
									"    private static final String CF_FD_WS_INTERRUPT_CONTRACT_URL = \"CF_FD_WS_INTERRUPT_CONTRACT_URL\";",
									"    private static final String CF_FD_WS_UPDATE_END_DATE_URL = \"CF_FD_WS_UPDATE_END_DATE_URL\";",
									"    private static final String CF_OF_SU_FD_TRY_DURATION = \"CF_OF_SU_FD_TRY_DURATION\";",
									"    private static final String CF_FD_WS_OF_ALLOWED_CODES = \"CF_FD_WS_OF_ALLOWED_CODES\";",
									"    private static final String NEW_END_DATE_PATTERN = \"yyyy-MM-dd HH:mm:ss\";",
									"",
									"    private ProviderService providerService = (ProviderService) getServiceInterface(ProviderService.class.getSimpleName());",
									"    private CustomFieldInstanceService customFieldInstanceService = (CustomFieldInstanceService) getServiceInterface(CustomFieldInstanceService.class.getSimpleName());",
									"",
									"    private Provider appProvider = providerService.getProvider();",
									"",
									"    @Override",
									"    public void execute(Map<String, Object> methodContext) throws BusinessException {",
									"",
									"        try {",
									"            if (appProvider == null) {",
									"                throw new BusinessException(\" Error : appProvider cannot be found \");",
									"            }",
									"            log.debug(\" >>> methodContext {} \", methodContext.entrySet());",
									"",
									"            Object entityOrEvent = methodContext.get(\"entityOrEvent\");",
									"            if (entityOrEvent == null) {",
									"                throw new BusinessException(\" Subscription entityOrEvent cannot be null \");",
									"            }",
									"",
									"            Subscription s = null;",
									"            if (entityOrEvent instanceof FieldAudit) {",
									"                s = (Subscription) ((FieldAudit) methodContext.get(\"entityOrEvent\")).getEntity();",
									"            } else {",
									"                s = (Subscription) methodContext.get(\"entityOrEvent\");",
									"            }",
									"            ",
									"            this.checkIfOffreIsAllowed(s.getOffer().getCode());",
									"            ",
									"            String idCustomer = s.getUserAccount().getBillingAccount().getCustomerAccount().getCustomer().getCode();",
									"            String contractNumber = s.getCode();",
									"            log.debug(\" customId = {} , contractNumber = {} \", idCustomer, contractNumber);",
									"",
									"            Date subscribedTillDate = truncateMandatoryDate(s.getSubscribedTillDate(), \"subscribedTillDate\");",
									"            Date subscriptionDate = truncateMandatoryDate(s.getSubscriptionDate(), \"subscriptionDate\");",
									"            Long tryDuration = (Long) this.fetchCFConfigValue(s, CF_OF_SU_FD_TRY_DURATION, false);",
									"",
									"            if (tryDuration == null) {",
									"                tryDuration = BigDecimal.ZERO.longValue();",
									"            }",
									"",
									"            Date subscriptionDateWithTryDuration = addDaysToDate(subscriptionDate, tryDuration.intValue());",
									"            log.debug(\"contractNumber={}, subscribedTillDate = {} , subscriptionDate = {} , tryDuration = {}, subscriptionDateWithTryDuration = {} \",contractNumber ,subscribedTillDate, subscriptionDate,",
									"                tryDuration, subscriptionDateWithTryDuration);",
									"",
									"            TerminationNotif notif = new TerminationNotif(contractNumber, idCustomer);",
									"            ResteasyClient client = new ResteasyClientBuilder().build();",
									"",
									"            String reason = null;",
									"            ResteasyWebTarget target = null;",
									"            String targetWsUrl = null;",
									"            SubscriptionStatusEnum status = s.getStatus();",
									"            ",
									"            if (status == SubscriptionStatusEnum.RESILIATED) {",
									"                ",
									"                targetWsUrl = (String) this.fetchCFConfigValue(appProvider, CF_FD_WS_INTERRUPT_CONTRACT_URL, true);",
									"                log.debug(\"interruptContractWsUrl = {}\", targetWsUrl);",
									"                // If resiliation then terminationDate is mandatory ;",
									"                Date terminationDate = truncateMandatoryDate(s.getTerminationDate(), \"terminationDate\");",
									"                reason = this.getResiliationReason(subscribedTillDate, subscriptionDate, terminationDate, subscriptionDateWithTryDuration);",
									"                log.debug(\"terminationDate = {} , reason = {} \", terminationDate, reason);",
									"                notif.setReason(reason);",
									"                target = client.target(targetWsUrl);",
									"",
									"            } else { // End of Term",
									"                targetWsUrl = (String) this.fetchCFConfigValue(appProvider, CF_FD_WS_UPDATE_END_DATE_URL, true);",
									"                log.debug(\"updateEndDateWsUrl = {}\", targetWsUrl);",
									"                reason = this.getUpdateReason(subscribedTillDate, subscriptionDate, subscriptionDateWithTryDuration);",
									"                notif.setReason(reason);",
									"                notif.setNewEndDate(formatDateWithPattern(subscribedTillDate, NEW_END_DATE_PATTERN));",
									"                notif.setPrice(\"\");",
									"                log.debug(\" newEndDate = {} , reason = {} \", subscribedTillDate, reason);",
									"                target = client.target(targetWsUrl);",
									"            }",
									"",
									"            String tokenUrl = (String) this.fetchCFConfigValue(appProvider, CF_FD_WS_TOKEN_URL, true);",
									"            String tokenAuthHeader = (String) this.fetchCFConfigValue(appProvider, CF_FD_WS_TOKEN_AUTH_HEADER, true);",
									"            String tokenScope = (String) this.fetchCFConfigValue(appProvider, CF_FD_WS_TOKEN_SCOPE, true);",
									"            String tokenGrantType = (String) this.fetchCFConfigValue(appProvider, CF_FD_WS_TOKEN_GRANTTYPE, true);",
									"            ",
									"            // getting the access token to call WS Souscription",
									"            String tokenValue = (String) this.fetchCFConfigValue(appProvider, CF_FD_WS_TOKEN_VALUE, false);",
									"            if (StringUtils.isBlank(tokenValue)) {",
									"                tokenValue = this.generateNewAccessToken(tokenUrl, tokenAuthHeader, tokenGrantType, tokenScope);",
									"            }",
									"            ",
									"            this.callTargetWS(methodContext, tokenUrl, tokenAuthHeader, tokenScope, tokenGrantType, notif, target, targetWsUrl, tokenValue, true);",
									"",
									"        } catch (Exception e) {",
									"            String msg = e.getMessage();",
									"            log.error(\"Error : {} \", msg, e); // to dont rollback main transaction ...",
									"            methodContext.put(JOB_RESULT_NB_KO, \"1\");",
									"            methodContext.put(JOB_RESULT_REPORT, msg);",
									"        }",
									"    }",
									"",
									"    @SuppressWarnings(\"unchecked\")",
									"    private void checkIfOffreIsAllowed(String offreCode) throws BusinessException {",
									"        ",
									"        log.debug(\" Subscription offreCode = {}  \", offreCode);",
									"        List<String> listAllowedOffres = (List<String>) this.fetchCFConfigValue(appProvider, CF_FD_WS_OF_ALLOWED_CODES, false);",
									"        ",
									"        log.debug(\" listAllowedOffres = {}  \", listAllowedOffres);",
									"        if ( ! safe(listAllowedOffres).contains(offreCode) ) {",
									"            throw new BusinessException(String.format(\" offreCode = [%s] is not allowed for Fnac Subscription WS \", offreCode)); ",
									"        }",
									"    }",
									"",
									"    private void callTargetWS(Map<String, Object> methodContext, String tokenUrl, String tokenAuthHeader, String tokenScope, String tokenGrantType,",
									"            TerminationNotif notif, ResteasyWebTarget target, String targetWsUrl, String tokenValue, boolean retryIfTokenExpired) throws BusinessException {",
									"        ",
									"        log.debug(\" calling targetWsUrl=[{}] with payload=[{}] , retryIfTokenExpired=[{}] \", targetWsUrl, notif, retryIfTokenExpired);",
									"        Response response = target.request().header(HttpHeaders.AUTHORIZATION, \"Bearer \" + tokenValue).post(Entity.json(notif));",
									"",
									"        log.debug(\" calling targetWsUrl response {} \", response);",
									"",
									"        if (Response.Status.Family.SUCCESSFUL == response.getStatusInfo().getFamily()) {",
									"            ",
									"            methodContext.put(JOB_RESULT_NB_OK, \"1\");",
									"            methodContext.put(JOB_RESULT_REPORT, \"WS [\".concat(target.getUri().toString()).concat(\"] fired successfully for Subscription code = \").concat(notif.getContractNumber()));",
									"            ",
									"        } else if (retryIfTokenExpired && response.getStatus() == Status.UNAUTHORIZED.getStatusCode()) { // token expired :",
									"            ",
									"            // generate a new token : ",
									"            tokenValue = this.generateNewAccessToken(tokenUrl, tokenAuthHeader, tokenGrantType, tokenScope);",
									"",
									"            // retry calling WS with new token and retryIfTokenExpired = false",
									"            this.callTargetWS(methodContext, tokenUrl, tokenAuthHeader, tokenScope, tokenGrantType, notif, target, targetWsUrl, tokenValue, false);",
									"            ",
									"        } else {",
									"            methodContext.put(JOB_RESULT_NB_KO, \"1\");",
									"            String msg = \"WS [\".concat(targetWsUrl).concat(\"] Error for Subscription code = [\").concat(notif.getContractNumber()).concat(\"] : \").concat(response.toString());",
									"            methodContext.put(JOB_RESULT_REPORT, msg);",
									"            throw new BusinessException(msg);",
									"        }",
									"    }",
									"",
									"    private String generateNewAccessToken(String tokenUrl, String tokenAuthHeader, String tokenGrantType, String tokenScope) throws BusinessException {",
									"        try {",
									"            log.debug(\" start generateNewAccessToken ...\");",
									"            ResteasyClient client = new ResteasyClientProxyBuilder().build();",
									"            ResteasyWebTarget target = client.target(tokenUrl);",
									"            Form form = new Form().param(\"grant_type\", tokenGrantType).param(\"scope\", tokenScope);",
									"            Response response = target.request().header(HttpHeaders.AUTHORIZATION, tokenAuthHeader).post(Entity.form(form));",
									"            ",
									"            if (Response.Status.Family.SUCCESSFUL == response.getStatusInfo().getFamily()) {",
									"                String tokenValue = response.readEntity(SIABOToken.class).getAccessToken();",
									"                // update the configured token value",
									"                this.customFieldInstanceService.setCFValue(appProvider, CF_FD_WS_TOKEN_VALUE, tokenValue);",
									"                log.debug(\" generateNewAccessToken ->  New token generated successfully !\");",
									"                return tokenValue;",
									"            } else {",
									"                throw new BusinessException(String.format(\" token cannot be generated : % \",response.getStatusInfo().getReasonPhrase())) ;",
									"            }",
									"        } catch (Exception e) {",
									"            throw new BusinessException(\" Error on generateNewAccessToken \",e);",
									"        }",
									"    }",
									"",
									"    private Date truncateMandatoryDate(Date date, String dateName) throws BusinessException {",
									"        if (date == null) {",
									"            throw new BusinessException(dateName.concat(\" cannot be null \"));",
									"        }",
									"        return truncateTime(date);",
									"    }",
									"",
									"    private String getUpdateReason(Date subscribedTillDate, Date subscriptionDate, Date subscriptionDateWithTryDuration) throws BusinessException {",
									"        Date today = truncateTime(new Date());",
									"        if (subscribedTillDate.after(subscriptionDateWithTryDuration) && today.equals(subscriptionDateWithTryDuration)) {",
									"            return \"CONVERT\";",
									"        } else if (subscribedTillDate.after(subscriptionDateWithTryDuration) && subscriptionDateWithTryDuration.before(today)) {",
									"            return \"RENEW\";",
									"        }",
									"        // There should be no functional case for that",
									"        throw new BusinessException(String.format(\"Invalid Reason for : [subscribedTillDate=%s, subscriptionDate=%s, subscriptionDateWithTryDuration=%s]\", subscribedTillDate,",
									"            subscriptionDate, subscriptionDateWithTryDuration));",
									"    }",
									"",
									"    private String getResiliationReason(Date subscribedTillDate, Date subscriptionDate, Date terminationDate, Date subscriptionDateWithTryDuration) throws BusinessException {",
									"        if (this.isNoRenew(subscribedTillDate, subscriptionDate, terminationDate, subscriptionDateWithTryDuration)) {",
									"            return \"NO_RENEW\";",
									"        } else {",
									"            return \"NO_CONVERT\";",
									"        }",
									"    }",
									"",
									"    private boolean isNoRenew(Date subscribedTillDate, Date subscriptionDate, Date terminationDate, Date subscriptionDateWithTryDuration) {",
									"        // terminationDate == subscribedUntilDate && subscribedUntilDate > subscriptionDate+tryDuration",
									"        // NO_RENEW ==> un client ayant déjà son contrat payant en cours à décider de ne pas le renouveler",
									"        boolean isNoRenew = terminationDate.equals(subscribedTillDate) && subscribedTillDate.after(subscriptionDateWithTryDuration);",
									"        log.debug(\" isNoRenew = {} \", isNoRenew);",
									"        return isNoRenew;",
									"    }",
									"",
									"    private Object fetchCFConfigValue(ICustomFieldEntity entity, String cfKey, boolean isMandatory) throws BusinessException {",
									"        Object cfValue = customFieldInstanceService.getCFValue(entity, cfKey);",
									"        if (isMandatory && (cfValue == null || (cfValue instanceof String && StringUtils.isEmpty(String.valueOf(cfValue))))) {",
									"            throw new BusinessException(\" Missing mandatory config [\" + cfKey + \"]\");",
									"        }",
									"        return cfValue;",
									"    }",
									"    ",
									"    @SuppressWarnings(\"unchecked\")",
									"    public static <T> Collection<T> safe(Collection<T> collection) {",
									"        return collection == null ? Collections.EMPTY_LIST : collection;",
									"    }",
									"    ",
									"    @JsonInclude(Include.NON_NULL)",
									"    @JsonIgnoreProperties(ignoreUnknown = true)",
									"    public static class SIABOToken {",
									"        @JsonProperty(\"access_token\")",
									"        private String accessToken;",
									"        ",
									"        @JsonCreator",
									"        public SIABOToken(@JsonProperty(\"access_token\") String accessToken) {",
									"            this.accessToken = accessToken;",
									"        }",
									"        ",
									"        public String getAccessToken() {",
									"            return accessToken;",
									"        }",
									"",
									"    }",
									"",
									"    @JsonInclude(Include.NON_NULL)",
									"    class TerminationNotif {",
									"",
									"        private String contractNumber;",
									"        private String idCustomer;",
									"        private String newEndDate;",
									"        private String reason;",
									"        private String price;",
									"",
									"        TerminationNotif(String contractNumber, String idCustomer) {",
									"            this.contractNumber = contractNumber;",
									"            this.idCustomer = idCustomer;",
									"        }",
									"",
									"        @Override",
									"        public String toString() {",
									"            return String.format(\"contractNumber=%s, idCustomer=%s, newEndDate=%s, reason=%s, price=%s\", contractNumber, idCustomer, newEndDate, reason, price);",
									"        }",
									"",
									"        /**",
									"         * @return the contractNumber",
									"         */",
									"        public String getContractNumber() {",
									"            return contractNumber;",
									"        }",
									"",
									"        /**",
									"         * @return the idCustomer",
									"         */",
									"        public String getIdCustomer() {",
									"            return idCustomer;",
									"        }",
									"",
									"        /**",
									"         * @return the newEndDate",
									"         */",
									"        public String getNewEndDate() {",
									"            return newEndDate;",
									"        }",
									"",
									"        /**",
									"         * @return the reason",
									"         */",
									"        public String getReason() {",
									"            return reason;",
									"        }",
									"",
									"        /**",
									"         * @return the price",
									"         */",
									"        public String getPrice() {",
									"            return price;",
									"        }",
									"",
									"        /**",
									"         * @param contractNumber the contractNumber to set",
									"         */",
									"        public void setContractNumber(String contractNumber) {",
									"            this.contractNumber = contractNumber;",
									"        }",
									"",
									"        /**",
									"         * @param idCustomer the idCustomer to set",
									"         */",
									"        public void setIdCustomer(String idCustomer) {",
									"            this.idCustomer = idCustomer;",
									"        }",
									"",
									"        /**",
									"         * @param newEndDate the newEndDate to set",
									"         */",
									"        public void setNewEndDate(String newEndDate) {",
									"            this.newEndDate = newEndDate;",
									"        }",
									"",
									"        /**",
									"         * @param reason the reason to set",
									"         */",
									"        public void setReason(String reason) {",
									"            this.reason = reason;",
									"        }",
									"",
									"        /**",
									"         * @param price the price to set",
									"         */",
									"        public void setPrice(String price) {",
									"            this.price = price;",
									"        }",
									"    }",
									"}`;",
									"",
									"pm.variables.set('SubsResiliationAndEndOfTermNotifScript', escapeJava(script));"
								],
								"type": "text/javascript"
							}
						}
					],
					"request": {
						"auth": {
							"type": "basic",
							"basic": [
								{
									"key": "username",
									"value": "{{opencell.username}}",
									"type": "string"
								},
								{
									"key": "password",
									"value": "{{opencell.password}}",
									"type": "string"
								}
							]
						},
						"method": "POST",
						"header": [
							{
								"key": "Content-Type",
								"value": "application/json"
							}
						],
						"body": {
							"mode": "raw",
							"raw": "{\n    \"code\": \"org.meveo.service.script.SubsResiliationAndEndOfTermNotifScript\",\n    \"description\": \"Subscription Resiliation & EndOfTermNotifScript\",\n    \"type\": \"JAVA\",\n    \"script\": \"{{SubsResiliationAndEndOfTermNotifScript}}\",\n    \"executionRoles\": [],\n    \"sourcingRoles\": []\n}"
						},
						"url": {
							"raw": "{{opencell.url}}/scriptInstance/createOrUpdate",
							"host": [
								"{{opencell.url}}"
							],
							"path": [
								"scriptInstance",
								"createOrUpdate"
							]
						}
					},
					"response": []
				}
			]
		},
		{
			"name": "#547 : Fnac + : Coud not activate the service SE_FD_REC_MAIN",
			"item": [
				{
					"name": "NeolaneCustomerLifeScript",
					"event": [
						{
							"listen": "test",
							"script": {
								"id": "c9d1777c-3904-4e91-93ad-3705d7967263",
								"exec": [
									"var jsonData = JSON.parse(responseBody);",
									"tests[\"is.success\"] = jsonData.actionStatus.status === \"SUCCESS\";",
									"tests[\"is.compiled\"] = jsonData.compilationErrors.length === 0;",
									""
								],
								"type": "text/javascript"
							}
						}
					],
					"request": {
						"auth": {
							"type": "basic",
							"basic": [
								{
									"key": "username",
									"value": "{{opencell.username}}",
									"type": "string"
								},
								{
									"key": "password",
									"value": "{{opencell.password}}",
									"type": "string"
								},
								{
									"key": "saveHelperData",
									"value": true,
									"type": "boolean"
								},
								{
									"key": "showPassword",
									"value": false,
									"type": "boolean"
								}
							]
						},
						"method": "POST",
						"header": [
							{
								"key": "Proxy-Authorization",
								"value": "{{proxy.auth}}"
							},
							{
								"key": "Content-Type",
								"value": "application/json"
							}
						],
						"body": {
							"mode": "raw",
							"raw": "{\r\n    \"code\": \"org.meveo.service.script.NeolaneCustomerLifeScript\",\r\n    \"description\": \"Call NeolaneCustomerLifeScript\",\r\n    \"type\": \"JAVA\",\r\n    \"script\": \"package org.meveo.service.script;\\r\\n\\r\\nimport org.apache.http.client.methods.CloseableHttpResponse;\\r\\nimport org.apache.http.client.methods.HttpPost;\\r\\nimport org.apache.http.conn.ssl.NoopHostnameVerifier;\\r\\nimport org.apache.http.conn.ssl.SSLContextBuilder;\\r\\nimport org.apache.http.conn.ssl.TrustStrategy;\\r\\nimport org.apache.http.entity.StringEntity;\\r\\nimport org.apache.http.impl.client.CloseableHttpClient;\\r\\nimport org.apache.http.impl.client.HttpClients;\\r\\nimport org.meveo.admin.exception.BusinessException;\\r\\nimport org.meveo.api.dto.invoice.GenerateInvoiceRequestDto;\\r\\nimport org.meveo.commons.utils.StringUtils;\\r\\nimport org.meveo.model.ICustomFieldEntity;\\r\\nimport org.meveo.model.admin.Seller;\\r\\nimport org.meveo.model.billing.BillingAccount;\\r\\nimport org.meveo.model.billing.InstanceStatusEnum;\\r\\nimport org.meveo.model.billing.Invoice;\\r\\nimport org.meveo.model.billing.ServiceInstance;\\r\\nimport org.meveo.model.billing.SubCategoryInvoiceAgregate;\\r\\nimport org.meveo.model.billing.Subscription;\\r\\nimport org.meveo.model.billing.UserAccount;\\r\\nimport org.meveo.model.catalog.OfferTemplate;\\r\\nimport org.meveo.model.crm.Customer;\\r\\nimport org.meveo.model.crm.Provider;\\r\\nimport org.meveo.model.payments.CustomerAccount;\\r\\nimport org.meveo.model.payments.DDPaymentMethod;\\r\\nimport org.meveo.model.payments.PaymentMethod;\\r\\nimport org.meveo.model.payments.PaymentMethodEnum;\\r\\nimport org.meveo.model.shared.ContactInformation;\\r\\nimport org.meveo.model.shared.DateUtils;\\r\\nimport org.meveo.model.shared.Name;\\r\\nimport org.meveo.model.shared.Title;\\r\\nimport org.meveo.service.billing.impl.InvoiceService;\\r\\nimport org.meveo.service.crm.impl.CustomFieldInstanceService;\\r\\nimport org.meveo.service.crm.impl.ProviderService;\\r\\n\\r\\nimport java.io.IOException;\\r\\nimport java.math.BigDecimal;\\r\\nimport java.math.RoundingMode;\\r\\nimport java.security.cert.CertificateException;\\r\\nimport java.security.cert.X509Certificate;\\r\\nimport java.util.Calendar;\\r\\nimport java.util.Date;\\r\\nimport java.util.List;\\r\\nimport java.util.Map;\\r\\n\\r\\n/**\\r\\n * Appel le web service Neolane\\r\\n *    Mail et SMS de bienvenue\\r\\n *    Mail de rappel de l'\\u00E9ch\\u00E9ancier, et montant de la premi\\u00E8re facture\\r\\n *\\r\\n * @author Mounir Bahije\\r\\n */\\r\\npublic class NeolaneCustomerLifeScript extends Script {\\r\\n\\r\\n    private CustomFieldInstanceService cfiService = (CustomFieldInstanceService) getServiceInterface(CustomFieldInstanceService.class.getSimpleName());\\r\\n    private ProviderService providerService = (ProviderService) getServiceInterface(ProviderService.class.getSimpleName());\\r\\n    private InvoiceService invoiceService = (InvoiceService) getServiceInterface(InvoiceService.class.getSimpleName());\\r\\n\\r\\n    private Provider appProvider = providerService.getProvider();\\r\\n\\r\\n    private static final String DATE_PATTERN = \\\"yyyy/MM/dd HH:mm:ss\\\";\\r\\n    private static final String DATE_PATTERN_BODY = \\\"dd/MM/yyyy\\\";\\r\\n    private static final String CF_FD_URL_WS_NCLS = \\\"CF_FD_URL_WS_NCLS\\\";\\r\\n    private static final String CF_FD_ACTION_URI_WS_NCLS = \\\"CF_FD_ACTION_URI_WS_NCLS\\\";\\r\\n    private static final String CF_FD_URL_SELFCARE_NCLS = \\\"CF_FD_URL_SELFCARE_NCLS\\\";\\r\\n    private static final String CF_FD_URL_SERENITE_NCLS = \\\"CF_FD_URL_SERENITE_NCLS\\\";\\r\\n    private static final String CULTURE = \\\"fr-FR\\\";\\r\\n    private static final String SUBSCRIPTION_CREATED = \\\"0\\\";\\r\\n    private static final String SUBSCRIPTION_ACTIVE = \\\"1\\\";\\r\\n    private static final String SUBSCRIPTION_SUSPENDED = \\\"2\\\";\\r\\n    private static final String SUBSCRIPTION_RESILIATED = \\\"3\\\";\\r\\n    private static final String SUBSCRIPTION_CANCELED = \\\"4\\\";\\r\\n    private static final String SUBSCRIPTION_CLOSED = \\\"5\\\";\\r\\n\\r\\n    @Override\\r\\n    public void execute(Map<String, Object> methodContext) throws BusinessException {\\r\\n\\r\\n\\r\\n        if (cfiService == null) {\\r\\n            log.error(\\\"NeolaneCustomerLifeScript : cfiService is null\\\");\\r\\n            return;\\r\\n        }\\r\\n        ServiceInstance service = (ServiceInstance) methodContext.get(\\\"event\\\");\\r\\n\\r\\n        if (service != null) {\\r\\n            if (InstanceStatusEnum.ACTIVE == service.getStatus()) {\\r\\n                Subscription subscription = service.getSubscription();\\r\\n                setWSData(subscription);\\r\\n            }\\r\\n        }\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * Call Neolane WS\\r\\n     *\\r\\n     * @param soapEnvBody\\r\\n     * @return\\r\\n     * @throws BusinessException\\r\\n     */\\r\\n    private String callWebService(String soapEnvBody) throws BusinessException {\\r\\n\\r\\n        String body =\\r\\n                \\\"<?xml version=\\\\\\\"1.0\\\\\\\" encoding=\\\\\\\"UTF-8\\\\\\\"?><soapenv:Envelope xmlns:soapenv=\\\\\\\"http://schemas.xmlsoap.org/soap/envelope/\\\\\\\" \\\" +\\r\\n                        \\\"xmlns:urn=\\\\\\\"urn:nms:rtMsg\\\\\\\"><soapenv:Header/><soapenv:Body>\\\"\\r\\n                        + soapEnvBody + \\\"</soapenv:Body></soapenv:Envelope>\\\";\\r\\n\\r\\n        StringEntity stringEntity = new StringEntity(body, \\\"UTF-8\\\");\\r\\n\\r\\n        final String wsUrl = (String) this.fetchCFConfigValue(appProvider, CF_FD_URL_WS_NCLS, true);\\r\\n        final String actionUri = (String) this.fetchCFConfigValue(appProvider, CF_FD_ACTION_URI_WS_NCLS, true);\\r\\n\\r\\n        // Request parameters and other properties.\\r\\n        HttpPost httpPost = new HttpPost(wsUrl);\\r\\n        httpPost.setEntity(stringEntity);\\r\\n        httpPost.setHeader(\\\"SOAPAction\\\", actionUri);\\r\\n\\r\\n        // Execute and get the response.\\r\\n        CloseableHttpClient httpClient = getCloseableHttpClient();\\r\\n        CloseableHttpResponse response = null;\\r\\n        try {\\r\\n\\r\\n            log.info(\\\"we want to sent to this address = \\\" + actionUri);\\r\\n            log.info(\\\"This body = \\\" + body);\\r\\n\\r\\n            response = httpClient.execute(httpPost);\\r\\n            boolean responseOk = false;\\r\\n            if (response != null) {\\r\\n                if (response.getStatusLine() != null) {\\r\\n                    if (response.getStatusLine().getStatusCode() == 200) {\\r\\n                        responseOk = true;\\r\\n                        log.info(\\\"in NeolaneCustomerLifeScript : body sent and it's Ok\\\");\\r\\n                    }\\r\\n                }\\r\\n            }\\r\\n            if (responseOk) {\\r\\n                return \\\"OK\\\";\\r\\n            } else {\\r\\n                if (response.getStatusLine() != null) {\\r\\n                    log.error(\\\"In NeolaneCustomerLifeScript : Status Code of response is \\\" + response.getStatusLine().getStatusCode());\\r\\n                } else {\\r\\n                    log.error(\\\"In NeolaneCustomerLifeScript : response.getStatusLine() = null \\\");\\r\\n                }\\r\\n                return \\\"KO\\\";\\r\\n            }\\r\\n\\r\\n        } catch (IOException e) {\\r\\n            log.error(\\\"Exception in NeolaneCustomerLifeScript :\\\", e);\\r\\n        }\\r\\n        return \\\"KO\\\";\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * fetch CF Config Value\\r\\n     *\\r\\n     * @param entity\\r\\n     * @param cfKey\\r\\n     * @param isMandatory\\r\\n     * @return\\r\\n     * @throws BusinessException\\r\\n     */\\r\\n    private Object fetchCFConfigValue(ICustomFieldEntity entity, String cfKey, boolean isMandatory) throws BusinessException {\\r\\n        Object cfValue = cfiService.getCFValue(entity, cfKey);\\r\\n        if (isMandatory && (cfValue == null || (cfValue instanceof String && org.apache.commons.lang3.StringUtils.isEmpty(String.valueOf(cfValue))))) {\\r\\n            throw new BusinessException(\\\" Missing mandatory config [\\\" + cfKey + \\\"]\\\");\\r\\n        }\\r\\n        return cfValue;\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * get CloseableHttpClient\\r\\n     *\\r\\n     * @return trusted httpClient\\r\\n     */\\r\\n    public CloseableHttpClient getCloseableHttpClient()\\r\\n    {\\r\\n        CloseableHttpClient httpClient = null;\\r\\n        try {\\r\\n            httpClient = HttpClients.custom().\\r\\n                    setSSLHostnameVerifier(NoopHostnameVerifier.INSTANCE).\\r\\n                    setSSLContext(new SSLContextBuilder().loadTrustMaterial(null, new TrustStrategy()\\r\\n                    {\\r\\n                        public boolean isTrusted(X509Certificate[] arg0, String arg1) throws CertificateException\\r\\n                        {\\r\\n                            return true;\\r\\n                        }\\r\\n                    }).build()).build();\\r\\n        } catch (Exception e) {\\r\\n            log.error(\\\"KeyManagementException in creating http client instance\\\", e);\\r\\n        }\\r\\n        return httpClient;\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * Set Data for Neolane WS\\r\\n     *\\r\\n     * @param subscription the subscription activated\\r\\n     * @throws BusinessException\\r\\n     */\\r\\n    private void setWSData(Subscription subscription) throws BusinessException {\\r\\n\\r\\n        Date nowDate = new Date();\\r\\n\\r\\n        if (subscription == null) {\\r\\n            log.error(\\\"NeolaneCustomerLifeScript : subscription is null\\\");\\r\\n            return;\\r\\n        }\\r\\n\\r\\n        List<ServiceInstance> listServiceSearchLicence = subscription.getServiceInstances();\\r\\n        if (listServiceSearchLicence == null) {\\r\\n            log.error(\\\"NeolaneCustomerLifeScript : services of subscription is null / subscription code = \\\" + subscription.getCode());\\r\\n            return;\\r\\n        }\\r\\n\\r\\n        String licence = \\\"\\\";\\r\\n        String offerType = \\\"FNAC+\\\";\\r\\n        for (ServiceInstance serviceSearchLicence : listServiceSearchLicence) {\\r\\n            if (serviceSearchLicence == null) {\\r\\n                log.error(\\\"NeolaneCustomerLifeScript : serviceSearchLicence is null / subscription code = \\\" + subscription.getCode());\\r\\n                continue;\\r\\n            }\\r\\n            if (\\\"SE_FD_LICENCE\\\".equalsIgnoreCase(serviceSearchLicence.getCode())) {\\r\\n                offerType = \\\"SERENITE\\\";\\r\\n                licence = (String) cfiService.getInheritedCFValue(serviceSearchLicence, \\\"CF_SE_FD_LICENCE_NUMBER\\\");\\r\\n            }\\r\\n        }\\r\\n\\r\\n        UserAccount userAccount = subscription.getUserAccount();\\r\\n        if (userAccount == null) {\\r\\n            log.error(\\\"NeolaneCustomerLifeScript : userAccount is null / subscription code = \\\" + subscription.getCode());\\r\\n            return;\\r\\n        }\\r\\n        ContactInformation contactInformation = userAccount.getContactInformation();\\r\\n        if (contactInformation == null) {\\r\\n            log.error(\\\"NeolaneCustomerLifeScript : contactInformation is null / subscription code = \\\" + subscription.getCode());\\r\\n            return;\\r\\n        }\\r\\n\\r\\n        //////////////\\r\\n        String email = contactInformation.getEmail();\\r\\n\\r\\n        String ws_address = email;\\r\\n\\r\\n        String ws_culture = CULTURE;\\r\\n\\r\\n        String ws_sendByMail = \\\"true\\\";\\r\\n\\r\\n        String ws_sendBySMS = \\\"true\\\";\\r\\n\\r\\n        String cellphone = contactInformation.getMobile();\\r\\n        if (StringUtils.isBlank(cellphone)) {\\r\\n            cellphone = \\\"\\\";\\r\\n        }\\r\\n        String ws_cellphone = cellphone;\\r\\n\\r\\n        BillingAccount billingAccount = userAccount.getBillingAccount();\\r\\n        if (billingAccount == null) {\\r\\n            log.error(\\\"NeolaneCustomerLifeScript : billingAccount is null / subscription code = \\\" + subscription.getCode());\\r\\n            return;\\r\\n        }\\r\\n\\r\\n\\r\\n        Calendar expirationDateCalendar = Calendar.getInstance();\\r\\n        expirationDateCalendar.setTime(nowDate);\\r\\n        expirationDateCalendar.add(Calendar.HOUR_OF_DAY, 12);\\r\\n        String ws_expirationDate = DateUtils.formatDateWithPattern(expirationDateCalendar.getTime(), DATE_PATTERN);\\r\\n\\r\\n        String ws_originalDate = DateUtils.formatDateWithPattern(nowDate, DATE_PATTERN);\\r\\n\\r\\n\\r\\n        String ws_rcpId = \\\"-2\\\";\\r\\n\\r\\n        String ws_templateBienvenue = \\\"BIENV_OPENCELL_FPL\\\";\\r\\n        if (\\\"SERENITE\\\".equals(offerType))\\r\\n            ws_templateBienvenue = \\\"BIENV_OPENCELL_SER\\\";\\r\\n\\r\\n        OfferTemplate offer = subscription.getOffer();\\r\\n        if (offer == null) {\\r\\n            log.error(\\\"NeolaneCustomerLifeScript : offer is null / subscription code = \\\" + subscription.getCode());\\r\\n            return;\\r\\n        }\\r\\n\\r\\n        String ws_templateRappel = \\\"ECHEA_OPENCELL_FPL\\\";\\r\\n        if (\\\"SERENITE\\\".equals(offerType)) {\\r\\n            String periodicity = \\\"\\\";\\r\\n            if (cfiService.getInheritedCFValue(offer, \\\"CF_OF_FD_CALENDAR\\\") != null) {\\r\\n                periodicity = String.valueOf(cfiService.getInheritedCFValue(offer, \\\"CF_OF_FD_CALENDAR\\\"));\\r\\n            }\\r\\n            if ((\\\"CAL_MONTHLY_1ST\\\".equalsIgnoreCase(periodicity)) || (\\\"CAL_MONTHLY_PERIOD\\\".equalsIgnoreCase(periodicity))) {\\r\\n                ws_templateRappel = \\\"ECHEA_OPENCELL_SER_M\\\";\\r\\n            } else {\\r\\n                ws_templateRappel = \\\"ECHEA_OPENCELL_SER_A\\\";\\r\\n            }\\r\\n\\r\\n        }\\r\\n\\r\\n        String ws_enseigne = \\\"\\\";\\r\\n        boolean enseigneTest = false;\\r\\n        Seller seller = subscription.getSeller();\\r\\n        Seller seller_N_1 = null;\\r\\n        Seller seller_N_2 = null;\\r\\n        if (seller != null) {\\r\\n            seller_N_1 = seller.getSeller();\\r\\n            if (seller_N_1 != null) {\\r\\n                seller_N_2 = seller_N_1.getSeller();\\r\\n                if (seller_N_2 != null) {\\r\\n                    if (seller_N_2.getCode() != null) {\\r\\n                        enseigneTest = true;\\r\\n                    }\\r\\n                }\\r\\n            }\\r\\n        }\\r\\n        if (enseigneTest) {\\r\\n            ws_enseigne = seller_N_2.getCode();\\r\\n        } else {\\r\\n            log.error(\\\"NeolaneCustomerLifeScript : enseigne is undefined / subscription code = \\\" + subscription.getCode());\\r\\n            return;\\r\\n        }\\r\\n\\r\\n        CustomerAccount customerAccount = billingAccount.getCustomerAccount();\\r\\n        if (customerAccount == null) {\\r\\n            log.error(\\\"NeolaneCustomerLifeScript : customerAccount is null / subscription code = \\\" + subscription.getCode());\\r\\n            return;\\r\\n        }\\r\\n\\r\\n        boolean nameOk = false;\\r\\n        Customer customer = null;\\r\\n        Name name = null;\\r\\n        Title title = null;\\r\\n        if (customerAccount != null) {\\r\\n            customer = customerAccount.getCustomer();\\r\\n            if (customer != null) {\\r\\n                name = customer.getName();\\r\\n                if (name != null) {\\r\\n                    nameOk = true;\\r\\n                }\\r\\n            }\\r\\n        }\\r\\n\\r\\n        if (nameOk == false) {\\r\\n            log.error(\\\"NeolaneCustomerLifeScript : problem with name / subscription code = \\\" + subscription.getCode());\\r\\n            return;\\r\\n        }\\r\\n        title = name.getTitle();\\r\\n        String ws_gender = \\\"\\\";\\r\\n        if (title != null && title.getCode() != null) {\\r\\n            ws_gender = title.getCode();\\r\\n        }\\r\\n\\r\\n        String ws_firstName = (name.getFirstName() == null) ? \\\"\\\" : name.getFirstName();\\r\\n        String ws_lastName = (name.getLastName() == null) ? \\\"\\\" : name.getLastName();\\r\\n\\r\\n        String ws_email = email;\\r\\n\\r\\n        String ws_contractNumber = subscription.getCode();\\r\\n\\r\\n        String ws_offerLabel = (offer.getName() == null) ? \\\"\\\" : offer.getName();\\r\\n\\r\\n        String ws_contractStatus = \\\"\\\";\\r\\n        if (subscription.getStatus() == null) {\\r\\n            log.error(\\\"NeolaneCustomerLifeScript : subscription.status is null / subscription code = \\\" + subscription.getCode());\\r\\n            return;\\r\\n        }\\r\\n\\r\\n        switch (subscription.getStatus()) {\\r\\n        case CREATED:\\r\\n            ws_contractStatus = SUBSCRIPTION_CREATED;\\r\\n            break;\\r\\n        case ACTIVE:\\r\\n            ws_contractStatus = SUBSCRIPTION_ACTIVE;\\r\\n            break;\\r\\n        case CANCELED:\\r\\n            ws_contractStatus = SUBSCRIPTION_CANCELED;\\r\\n            break;\\r\\n        case RESILIATED:\\r\\n            ws_contractStatus = SUBSCRIPTION_RESILIATED;\\r\\n            break;\\r\\n        case CLOSED:\\r\\n            ws_contractStatus = SUBSCRIPTION_CLOSED;\\r\\n            break;\\r\\n        case SUSPENDED:\\r\\n            ws_contractStatus = SUBSCRIPTION_SUSPENDED;\\r\\n            break;\\r\\n        default:\\r\\n            ws_contractStatus = \\\"\\\";\\r\\n        }\\r\\n\\r\\n        String ws_cardNumber = \\\"\\\";\\r\\n        String ws_serenityUrl = \\\"\\\";\\r\\n        if (\\\"SERENITE\\\".equals(offerType)) {\\r\\n            ws_cardNumber = licence;\\r\\n            final String urlSerenite = (String) this.fetchCFConfigValue(appProvider, CF_FD_URL_SERENITE_NCLS, true);\\r\\n            ws_serenityUrl = urlSerenite + licence;\\r\\n        } else {\\r\\n            if (StringUtils.isBlank(cfiService.getInheritedCFValue(subscription, \\\"CF_SU_FD_CARD_NUMBER\\\"))) {\\r\\n                ws_cardNumber = \\\"\\\";\\r\\n            } else {\\r\\n                ws_cardNumber = (String) cfiService.getInheritedCFValue(subscription, \\\"CF_SU_FD_CARD_NUMBER\\\");\\r\\n            }\\r\\n        }\\r\\n\\r\\n        String ws_adhNumber = \\\"\\\";\\r\\n\\r\\n        final String selfCareUrl = (String) this.fetchCFConfigValue(appProvider, CF_FD_URL_SELFCARE_NCLS, true);\\r\\n        String ws_urlSelfcare = \\\"\\\";\\r\\n        if (!StringUtils.isBlank(selfCareUrl)) {\\r\\n            ws_urlSelfcare = selfCareUrl;\\r\\n        }\\r\\n\\r\\n        String ws_engagmentEndDateBienvenue = \\\"\\\";\\r\\n\\r\\n        String ws_engagmentEndDateRappel  = DateUtils.formatDateWithPattern(subscription.getEndAgreementDate(), DATE_PATTERN_BODY);\\r\\n\\r\\n        String ws_tryBuyEndDate = \\\"\\\";\\r\\n        if (\\\"SERENITE\\\".equals(offerType)) {\\r\\n            ws_tryBuyEndDate = \\\"\\\";\\r\\n        } else {\\r\\n            Long trialDuratien = (Long) cfiService.getInheritedCFValue(subscription, \\\"CF_OF_SU_FD_TRY_DURATION\\\");\\r\\n            if (trialDuratien == null) {\\r\\n                trialDuratien = 0L;\\r\\n            }\\r\\n            Date subscriptionDate = subscription.getSubscriptionDate();\\r\\n            if (subscriptionDate == null) {\\r\\n                ws_tryBuyEndDate = \\\"\\\";\\r\\n            } else {\\r\\n                Date endOfTrialDate = DateUtils.addDaysToDate(subscriptionDate, trialDuratien.intValue()) ;\\r\\n                ws_tryBuyEndDate = DateUtils.formatDateWithPattern(endOfTrialDate, DATE_PATTERN_BODY);\\r\\n            }\\r\\n        }\\r\\n\\r\\n        String ws_subAmount = \\\"0\\\";\\r\\n        if (cfiService.getInheritedCFValue(subscription.getOffer(), \\\"CF_OF_FD_PRICE\\\") != null) {\\r\\n            ws_subAmount = String.valueOf(cfiService.getInheritedCFValue(subscription.getOffer(), \\\"CF_OF_FD_PRICE\\\"));\\r\\n        }\\r\\n\\r\\n        String ws_cbValidityDate = \\\"\\\";\\r\\n        String ws_paymentModeBienvenue = \\\"\\\";\\r\\n        String ws_paymentModeRappel = \\\"\\\";\\r\\n        PaymentMethod preferredPaymentMethod = customerAccount.getPreferredPaymentMethod();\\r\\n        if (preferredPaymentMethod != null) {\\r\\n            PaymentMethodEnum paymentType = preferredPaymentMethod.getPaymentType();\\r\\n            if (paymentType != null) {\\r\\n                if ((PaymentMethodEnum.DIRECTDEBIT == paymentType) || (PaymentMethodEnum.WIRETRANSFER == paymentType)) {\\r\\n                    ws_paymentModeRappel = \\\"SEPA\\\";\\r\\n                } else if (PaymentMethodEnum.CARD == paymentType) {\\r\\n                    ws_paymentModeRappel = \\\"CB\\\";\\r\\n                }\\r\\n            }\\r\\n        }\\r\\n\\r\\n        String ws_rejectDate = \\\"\\\";\\r\\n        String ws_rejectedInvoiceNb = \\\"\\\";\\r\\n        String ws_rejectedAmountTTC = \\\"\\\";\\r\\n        String ws_reason = \\\"\\\";\\r\\n\\r\\n        String ws_amountDrawnBienvenue = \\\"\\\";\\r\\n        String ws_withdrawalDateBienvenue = \\\"\\\";\\r\\n\\r\\n        String ws_amountDrawnRappel = \\\"\\\";\\r\\n        String ws_withdrawalDateRappel = \\\"\\\";\\r\\n\\r\\n\\r\\n        GenerateInvoiceRequestDto generateInvoiceRequestDto = new GenerateInvoiceRequestDto();\\r\\n\\r\\n        generateInvoiceRequestDto.setTargetType(\\\"BillingAccount\\\");\\r\\n        generateInvoiceRequestDto.setTargetCode(billingAccount.getCode());\\r\\n        generateInvoiceRequestDto.setInvoicingDate(new Date());\\r\\n        generateInvoiceRequestDto.setLastTransactionDate(DateUtils.addMonthsToDate(new Date(), 1));\\r\\n        generateInvoiceRequestDto.setGenerateXML(false);\\r\\n        generateInvoiceRequestDto.setGeneratePDF(false);\\r\\n        generateInvoiceRequestDto.setGenerateAO(false);\\r\\n        generateInvoiceRequestDto.setIgnoreInvoicingThreshold(true);\\r\\n\\r\\n        BigDecimal totalDiscount = new BigDecimal(\\\"0\\\");\\r\\n        try {\\r\\n            List<Invoice> listInvoice = invoiceService.generateInvoice(billingAccount, generateInvoiceRequestDto, null, true);\\r\\n            if (listInvoice != null) {\\r\\n\\r\\n                for (Invoice invoice : listInvoice) {\\r\\n                    List<SubCategoryInvoiceAgregate> discountAgregates = invoice.getDiscountAgregates();\\r\\n                    if (discountAgregates != null) {\\r\\n                        for (SubCategoryInvoiceAgregate subCategoryInvoiceAgregate : discountAgregates) {\\r\\n                            totalDiscount.add(subCategoryInvoiceAgregate.getAmountWithoutTax());\\r\\n                        }\\r\\n                    }\\r\\n                }\\r\\n            }\\r\\n\\r\\n            log.info(\\\"In NeolaneCustomerLifeScript totalDiscount = \\\" + totalDiscount);\\r\\n\\r\\n            if (listInvoice != null) {\\r\\n                for (Invoice invoice : listInvoice) {\\r\\n                    invoiceService.cancelInvoice(invoice);\\r\\n                    invoiceService.commit();\\r\\n                }\\r\\n            }\\r\\n\\r\\n        } catch (Exception e) {\\r\\n            log.error(\\\"In NeolaneCustomerLifeScript = \\\" + e);\\r\\n        }\\r\\n\\r\\n        if (!\\\"0\\\".equals(ws_subAmount)) {\\r\\n            BigDecimal ws_subAmountValue = new BigDecimal(ws_subAmount);\\r\\n            ws_subAmountValue.add(totalDiscount);\\r\\n            ws_amountDrawnRappel = (ws_subAmountValue.setScale(2, RoundingMode.DOWN)).toString();\\r\\n            Date withdrawalDate = billingAccount.getNextInvoiceDate();\\r\\n            ws_withdrawalDateRappel = DateUtils.formatDateWithPattern(withdrawalDate, DATE_PATTERN_BODY);\\r\\n        }\\r\\n\\r\\n\\r\\n        String ws_oneTimeCBPaymentDate = \\\"\\\";\\r\\n        String ws_oneTimePaymentAmount = \\\"\\\";\\r\\n        String ws_refundDate = \\\"\\\";\\r\\n        String ws_refundAmount = \\\"\\\";\\r\\n        String ws_discountEntryDate = \\\"\\\";\\r\\n        String ws_discountAmount = \\\"\\\";\\r\\n        String ws_transacAutorisationNb = \\\"\\\";\\r\\n        String ws_rumBienvenue = \\\"\\\";\\r\\n        String ws_icsBienvenue = \\\"\\\";\\r\\n        String ws_legalEntityNameBienvenue = \\\"\\\";\\r\\n\\r\\n        String ws_rumRappel = \\\"\\\";\\r\\n        String ws_icsRappel = \\\"\\\";\\r\\n        String ws_legalEntityNameRappel = \\\"\\\";\\r\\n\\r\\n        if (preferredPaymentMethod instanceof DDPaymentMethod) {\\r\\n            ws_rumRappel = ((DDPaymentMethod) preferredPaymentMethod).getMandateIdentification();\\r\\n        }\\r\\n\\r\\n        Seller entiteJuridique = seller_N_1;\\r\\n        ws_icsRappel = (String) cfiService.getInheritedCFValue(entiteJuridique, \\\"CF_S_FD_ICS\\\");\\r\\n\\r\\n        ws_legalEntityNameRappel = entiteJuridique.getDescription();\\r\\n\\r\\n        String ws_activationDate = \\\"\\\";\\r\\n        String ws_terminationDate = \\\"\\\";\\r\\n        String ws_terminationReason = \\\"\\\";\\r\\n        String ws_trActivationDate = \\\"\\\";\\r\\n        String ws_trDeactivationDate = \\\"\\\";\\r\\n\\r\\n        String soapEnvBodyBienvenue =\\r\\n\\r\\n                \\\"<urn:Submit><urn:sessiontoken></urn:sessiontoken><urn:elemCtx><ctx \\\" + \\\" address=\\\\\\\"\\\" + ws_address + \\\"\\\\\\\"\\\" + \\\" culture=\\\\\\\"\\\" + ws_culture + \\\"\\\\\\\"\\\"\\r\\n                        + \\\" sendByMail=\\\\\\\"\\\" + ws_sendByMail + \\\"\\\\\\\"\\\" + \\\" sendBySMS=\\\\\\\"\\\" + ws_sendBySMS + \\\"\\\\\\\"\\\" + \\\" cellphone=\\\\\\\"\\\" + ws_cellphone + \\\"\\\\\\\"\\\" + \\\" expirationDate=\\\\\\\"\\\"\\r\\n                        + ws_expirationDate + \\\"\\\\\\\"\\\" + \\\" originalDate=\\\\\\\"\\\" + ws_originalDate + \\\"\\\\\\\"\\\" + \\\" rcpId=\\\\\\\"\\\" + ws_rcpId + \\\"\\\\\\\"\\\" + \\\" template=\\\\\\\"\\\" + ws_templateBienvenue\\r\\n                        + \\\"\\\\\\\"\\\" + \\\" xmlns=\\\\\\\"\\\\\\\">\\\" + \\\"<CUSTOMER> \\\" + \\\"<Enseigne>\\\" + ws_enseigne + \\\"</Enseigne>\\\" + \\\"<Gender>\\\" + ws_gender + \\\"</Gender>\\\" + \\\"<FirstName>\\\"\\r\\n                        + ws_firstName + \\\"</FirstName>\\\" + \\\"<LastName>\\\" + ws_lastName + \\\"</LastName>\\\" + \\\"<Email>\\\" + ws_email + \\\"</Email>\\\" + \\\"<SendBySMS>\\\" + ws_sendBySMS\\r\\n                        + \\\"</SendBySMS>\\\" + \\\"<sendByMail>\\\" + ws_sendByMail + \\\"</sendByMail>\\\" + \\\"<ContractNumber>\\\" + ws_contractNumber + \\\"</ContractNumber>\\\" + \\\"<offerLabel>\\\"\\r\\n                        + ws_offerLabel + \\\"</offerLabel>\\\" + \\\"<ContractStatus>\\\" + ws_contractStatus + \\\"</ContractStatus>\\\" + \\\"<CardNumber>\\\" + ws_cardNumber + \\\"</CardNumber>\\\"\\r\\n                        + \\\"<AdhNumber>\\\" + ws_adhNumber + \\\"</AdhNumber>\\\" + \\\"<SelfCareUrl>\\\" + ws_urlSelfcare + \\\"</SelfCareUrl>\\\" + \\\"<SerenityUrl>\\\" + ws_serenityUrl\\r\\n                        + \\\"</SerenityUrl>\\\" + \\\"<EngagmentEndDate>\\\" + ws_engagmentEndDateBienvenue + \\\"</EngagmentEndDate>\\\" + \\\"<TryBuyEndDate>\\\" + ws_tryBuyEndDate\\r\\n                        + \\\"</TryBuyEndDate>\\\" + \\\"<SubAmount>\\\" + ws_subAmount + \\\"</SubAmount>\\\" + \\\"</CUSTOMER> \\\" + \\\"<INVOICE> \\\" + \\\"<CBValidityDate>\\\" + ws_cbValidityDate\\r\\n                        + \\\"</CBValidityDate>\\\" + \\\"<PaymentMode>\\\" + ws_paymentModeBienvenue + \\\"</PaymentMode>\\\" + \\\"<RejectDate>\\\" + ws_rejectDate + \\\"</RejectDate>\\\"\\r\\n                        + \\\"<RejectedInvoiceNb>\\\" + ws_rejectedInvoiceNb + \\\"</RejectedInvoiceNb>\\\" + \\\"<RejectedAmountTTC>\\\" + ws_rejectedAmountTTC + \\\"</RejectedAmountTTC>\\\"\\r\\n                        + \\\"<Reason>\\\" + ws_reason + \\\"</Reason>\\\" + \\\"<AmountDrawn>\\\" + ws_amountDrawnBienvenue + \\\"</AmountDrawn>\\\" + \\\"<WithdrawalDate>\\\" + ws_withdrawalDateBienvenue\\r\\n                        + \\\"</WithdrawalDate>\\\" + \\\"<OneTimeCBPaymentDate>\\\" + ws_oneTimeCBPaymentDate + \\\"</OneTimeCBPaymentDate>\\\" + \\\"<OneTimePaymentAmount>\\\"\\r\\n                        + ws_oneTimePaymentAmount + \\\"</OneTimePaymentAmount>\\\" + \\\"<RefundDate>\\\" + ws_refundDate + \\\"</RefundDate>\\\" + \\\"<RefundAmount>\\\" + ws_refundAmount\\r\\n                        + \\\"</RefundAmount>\\\" + \\\"<DiscountEntryDate>\\\" + ws_discountEntryDate + \\\"</DiscountEntryDate>\\\" + \\\"<DiscountAmount>\\\" + ws_discountAmount\\r\\n                        + \\\"</DiscountAmount>\\\" + \\\"<TransacAutorisationNb>\\\" + ws_transacAutorisationNb + \\\"</TransacAutorisationNb>\\\" + \\\"<Rum>\\\" + ws_rumBienvenue + \\\"</Rum>\\\" + \\\"<Ics>\\\"\\r\\n                        + ws_icsBienvenue + \\\"</Ics>\\\" + \\\"<LegalEntityName>\\\" + ws_legalEntityNameBienvenue + \\\"</LegalEntityName>\\\" + \\\"</INVOICE>\\\" + \\\"<TERMINATION>\\\" + \\\"<ActivationDate>\\\"\\r\\n                        + ws_activationDate + \\\"</ActivationDate>\\\" + \\\"<TerminationDate>\\\" + ws_terminationDate + \\\"</TerminationDate>\\\" + \\\"<TerminationReason>\\\"\\r\\n                        + ws_terminationReason + \\\"</TerminationReason>\\\" + \\\"</TERMINATION>\\\" + \\\"<TACITRENEWAL>\\\" + \\\"<TrActivationDate>\\\" + ws_trActivationDate\\r\\n                        + \\\"</TrActivationDate>\\\" + \\\"<TrDeactivationDate>\\\" + ws_trDeactivationDate + \\\"</TrDeactivationDate>\\\" + \\\"</TACITRENEWAL>\\\"\\r\\n                        + \\\"</ctx></urn:elemCtx></urn:Submit>\\\";\\r\\n\\r\\n        String responseBienvenue = callWebService(soapEnvBodyBienvenue);\\r\\n\\r\\n        log.info(\\\"responseBienvenue = \\\" + responseBienvenue);\\r\\n        log.info(\\\"soapEnvBodyBienvenue = \\\" + soapEnvBodyBienvenue);\\r\\n\\r\\n        String soapEnvBodyRappel =\\r\\n\\r\\n                \\\"<urn:Submit><urn:sessiontoken></urn:sessiontoken><urn:elemCtx><ctx \\\" + \\\" address=\\\\\\\"\\\" + ws_address + \\\"\\\\\\\"\\\" + \\\" culture=\\\\\\\"\\\" + ws_culture + \\\"\\\\\\\"\\\"\\r\\n                        + \\\" sendByMail=\\\\\\\"\\\" + ws_sendByMail + \\\"\\\\\\\"\\\" + \\\" sendBySMS=\\\\\\\"\\\" + ws_sendBySMS + \\\"\\\\\\\"\\\" + \\\" cellphone=\\\\\\\"\\\" + ws_cellphone + \\\"\\\\\\\"\\\" + \\\" expirationDate=\\\\\\\"\\\"\\r\\n                        + ws_expirationDate + \\\"\\\\\\\"\\\" + \\\" originalDate=\\\\\\\"\\\" + ws_originalDate + \\\"\\\\\\\"\\\" + \\\" rcpId=\\\\\\\"\\\" + ws_rcpId + \\\"\\\\\\\"\\\" + \\\" template=\\\\\\\"\\\" + ws_templateRappel + \\\"\\\\\\\"\\\"\\r\\n                        + \\\" xmlns=\\\\\\\"\\\\\\\">\\\" + \\\"<CUSTOMER> \\\" + \\\"<Enseigne>\\\" + ws_enseigne + \\\"</Enseigne>\\\" + \\\"<Gender>\\\" + ws_gender + \\\"</Gender>\\\" + \\\"<FirstName>\\\" + ws_firstName\\r\\n                        + \\\"</FirstName>\\\" + \\\"<LastName>\\\" + ws_lastName + \\\"</LastName>\\\" + \\\"<Email>\\\" + ws_email + \\\"</Email>\\\" + \\\"<SendBySMS>\\\" + ws_sendBySMS + \\\"</SendBySMS>\\\"\\r\\n                        + \\\"<sendByMail>\\\" + ws_sendByMail + \\\"</sendByMail>\\\" + \\\"<ContractNumber>\\\" + ws_contractNumber + \\\"</ContractNumber>\\\" + \\\"<offerLabel>\\\" + ws_offerLabel\\r\\n                        + \\\"</offerLabel>\\\" + \\\"<ContractStatus>\\\" + ws_contractStatus + \\\"</ContractStatus>\\\" + \\\"<CardNumber>\\\" + ws_cardNumber + \\\"</CardNumber>\\\" + \\\"<AdhNumber>\\\"\\r\\n                        + ws_adhNumber + \\\"</AdhNumber>\\\" + \\\"<SelfCareUrl>\\\" + ws_urlSelfcare + \\\"</SelfCareUrl>\\\" + \\\"<SerenityUrl>\\\" + ws_serenityUrl + \\\"</SerenityUrl>\\\"\\r\\n                        + \\\"<EngagmentEndDate>\\\" + ws_engagmentEndDateRappel + \\\"</EngagmentEndDate>\\\" + \\\"<TryBuyEndDate>\\\" + ws_tryBuyEndDate + \\\"</TryBuyEndDate>\\\"\\r\\n                        + \\\"<SubAmount>\\\" + ws_subAmount + \\\"</SubAmount>\\\" + \\\"</CUSTOMER> \\\" + \\\"<INVOICE> \\\" + \\\"<CBValidityDate>\\\" + ws_cbValidityDate + \\\"</CBValidityDate>\\\"\\r\\n                        + \\\"<PaymentMode>\\\" + ws_paymentModeRappel + \\\"</PaymentMode>\\\" + \\\"<RejectDate>\\\" + ws_rejectDate + \\\"</RejectDate>\\\" + \\\"<RejectedInvoiceNb>\\\"\\r\\n                        + ws_rejectedInvoiceNb + \\\"</RejectedInvoiceNb>\\\" + \\\"<RejectedAmountTTC>\\\" + ws_rejectedAmountTTC + \\\"</RejectedAmountTTC>\\\" + \\\"<Reason>\\\" + ws_reason\\r\\n                        + \\\"</Reason>\\\" + \\\"<AmountDrawn>\\\" + ws_amountDrawnRappel + \\\"</AmountDrawn>\\\" + \\\"<WithdrawalDate>\\\" + ws_withdrawalDateRappel + \\\"</WithdrawalDate>\\\"\\r\\n                        + \\\"<OneTimeCBPaymentDate>\\\" + ws_oneTimeCBPaymentDate + \\\"</OneTimeCBPaymentDate>\\\" + \\\"<OneTimePaymentAmount>\\\" + ws_oneTimePaymentAmount\\r\\n                        + \\\"</OneTimePaymentAmount>\\\" + \\\"<RefundDate>\\\" + ws_refundDate + \\\"</RefundDate>\\\" + \\\"<RefundAmount>\\\" + ws_refundAmount + \\\"</RefundAmount>\\\"\\r\\n                        + \\\"<DiscountEntryDate>\\\" + ws_discountEntryDate + \\\"</DiscountEntryDate>\\\" + \\\"<DiscountAmount>\\\" + ws_discountAmount + \\\"</DiscountAmount>\\\"\\r\\n                        + \\\"<TransacAutorisationNb>\\\" + ws_transacAutorisationNb + \\\"</TransacAutorisationNb>\\\" + \\\"<Rum>\\\" + ws_rumRappel + \\\"</Rum>\\\" + \\\"<Ics>\\\" + ws_icsRappel + \\\"</Ics>\\\"\\r\\n                        + \\\"<LegalEntityName>\\\" + ws_legalEntityNameRappel + \\\"</LegalEntityName>\\\" + \\\"</INVOICE>\\\" + \\\"<TERMINATION>\\\" + \\\"<ActivationDate>\\\" + ws_activationDate\\r\\n                        + \\\"</ActivationDate>\\\" + \\\"<TerminationDate>\\\" + ws_terminationDate + \\\"</TerminationDate>\\\" + \\\"<TerminationReason>\\\" + ws_terminationReason\\r\\n                        + \\\"</TerminationReason>\\\" + \\\"</TERMINATION>\\\" + \\\"<TACITRENEWAL>\\\" + \\\"<TrActivationDate>\\\" + ws_trActivationDate + \\\"</TrActivationDate>\\\"\\r\\n                        + \\\"<TrDeactivationDate>\\\" + ws_trDeactivationDate + \\\"</TrDeactivationDate>\\\" + \\\"</TACITRENEWAL>\\\" + \\\"</ctx></urn:elemCtx></urn:Submit>\\\";\\r\\n\\r\\n        String responseRappel = callWebService(soapEnvBodyRappel);\\r\\n        log.info(\\\"responseRappel = \\\" + responseRappel);\\r\\n        log.info(\\\"soapEnvBodyRappel = \\\" + soapEnvBodyRappel);\\r\\n\\r\\n    }\\r\\n}\",\r\n    \"executionRoles\": [],\r\n    \"sourcingRoles\": []\r\n}"
						},
						"url": {
							"raw": "{{opencell.url}}/scriptInstance/createOrUpdate",
							"host": [
								"{{opencell.url}}"
							],
							"path": [
								"scriptInstance",
								"createOrUpdate"
							]
						},
						"description": "&#9888; comportement différent en fonction de échu (màj nb lic) / échoir (màj+valo diff)"
					},
					"response": []
				},
				{
					"name": "NeolaneCustomerLifeFirstRejectScript",
					"request": {
						"auth": {
							"type": "basic",
							"basic": [
								{
									"key": "password",
									"value": "{{opencell.password}}",
									"type": "string"
								},
								{
									"key": "username",
									"value": "{{opencell.username}}",
									"type": "string"
								}
							]
						},
						"method": "POST",
						"header": [
							{
								"key": "Content-Type",
								"value": "application/json"
							},
							{
								"key": "Proxy-Authorization",
								"type": "text",
								"value": "{{proxy.auth}}"
							}
						],
						"body": {
							"mode": "raw",
							"raw": "{\n    \"code\": \"org.meveo.service.script.NeolaneCustomerLifeFirstRejectScript\",\n    \"description\": \"NeolaneCustomerLifeFirstReject Script\",\n    \"type\": \"JAVA\",\n    \"script\": \"package org.meveo.service.script;\\r\\n\\r\\nimport org.apache.http.HttpResponse;\\r\\nimport org.apache.http.StatusLine;\\r\\nimport org.apache.http.client.methods.HttpPost;\\r\\nimport org.apache.http.conn.ssl.NoopHostnameVerifier;\\r\\nimport org.apache.http.conn.ssl.SSLContextBuilder;\\r\\nimport org.apache.http.conn.ssl.TrustStrategy;\\r\\nimport org.apache.http.entity.StringEntity;\\r\\nimport org.apache.http.impl.client.CloseableHttpClient;\\r\\nimport org.apache.http.impl.client.HttpClients;\\r\\nimport org.meveo.admin.exception.BusinessException;\\r\\nimport org.meveo.api.dto.invoice.GenerateInvoiceRequestDto;\\r\\nimport org.meveo.commons.utils.StringUtils;\\r\\nimport org.meveo.model.ICustomFieldEntity;\\r\\nimport org.meveo.model.billing.BillingAccount;\\r\\nimport org.meveo.model.billing.Invoice;\\r\\nimport org.meveo.model.billing.SubCategoryInvoiceAgregate;\\r\\nimport org.meveo.model.billing.Subscription;\\r\\nimport org.meveo.model.billing.UserAccount;\\r\\nimport org.meveo.model.catalog.OfferTemplate;\\r\\nimport org.meveo.model.crm.Customer;\\r\\nimport org.meveo.model.crm.Provider;\\r\\nimport org.meveo.model.jobs.JobInstance;\\r\\nimport org.meveo.model.payments.AccountOperation;\\r\\nimport org.meveo.model.payments.CardPaymentMethod;\\r\\nimport org.meveo.model.payments.CustomerAccount;\\r\\nimport org.meveo.model.payments.PaymentMethod;\\r\\nimport org.meveo.model.payments.PaymentMethodEnum;\\r\\nimport org.meveo.model.payments.RejectedPayment;\\r\\nimport org.meveo.model.shared.ContactInformation;\\r\\nimport org.meveo.model.shared.DateUtils;\\r\\nimport org.meveo.model.shared.Name;\\r\\nimport org.meveo.model.shared.Title;\\r\\nimport org.meveo.service.billing.impl.InvoiceService;\\r\\nimport org.meveo.service.billing.impl.SubscriptionService;\\r\\nimport org.meveo.service.crm.impl.CustomFieldInstanceService;\\r\\nimport org.meveo.service.crm.impl.ProviderService;\\r\\nimport org.meveo.service.payments.impl.AccountOperationService;\\r\\n\\r\\nimport java.io.IOException;\\r\\nimport java.math.BigDecimal;\\r\\nimport java.math.RoundingMode;\\r\\nimport java.security.cert.CertificateException;\\r\\nimport java.security.cert.X509Certificate;\\r\\nimport java.util.Calendar;\\r\\nimport java.util.Date;\\r\\nimport java.util.HashMap;\\r\\nimport java.util.List;\\r\\nimport java.util.Map;\\r\\n\\r\\n/**\\r\\n * Appel le web service Neolane\\r\\n *    Relance g\\u00E9n\\u00E9rique 1er rejet sur clients actifs / r\\u00E9sili\\u00E9s\\r\\n *\\r\\n * @author Mounir Bahije\\r\\n */\\r\\npublic class NeolaneCustomerLifeFirstRejectScript extends Script {\\r\\n\\r\\n    private CustomFieldInstanceService cfiService = (CustomFieldInstanceService) getServiceInterface(\\\"CustomFieldInstanceService\\\");\\r\\n    private ProviderService providerService = (ProviderService) getServiceInterface(ProviderService.class.getSimpleName());\\r\\n    private Provider appProvider = providerService.getProvider();\\r\\n    private InvoiceService invoiceService = (InvoiceService) getServiceInterface(\\\"InvoiceService\\\");\\r\\n    private SubscriptionService subscriptionService = (SubscriptionService) getServiceInterface(\\\"SubscriptionService\\\");\\r\\n    private AccountOperationService accountOperationService = (AccountOperationService) getServiceInterface(\\\"AccountOperationService\\\");\\r\\n    private JobInstance job = null;\\r\\n\\r\\n    private static final String CULTURE = \\\"fr-FR\\\";\\r\\n    private static final String DATE_PATTERN = \\\"yyyy/MM/dd HH:mm:ss\\\";\\r\\n    private static final String DATE_PATTERN_BODY = \\\"dd/MM/yyyy\\\";\\r\\n    private static final String DATE_PATTERN_CB = \\\"MM/yy\\\";\\r\\n\\r\\n    private static final String CF_FD_URL_WS_NCLS = \\\"CF_FD_URL_WS_NCLS\\\";\\r\\n    private static final String CF_FD_ACTION_URI_WS_NCLS = \\\"CF_FD_ACTION_URI_WS_NCLS\\\";\\r\\n    private static final String CF_FD_URL_SELFCARE_NCLS = \\\"CF_FD_URL_SELFCARE_NCLS\\\";\\r\\n\\r\\n    private static final String SUBSCRIPTION_CREATED = \\\"0\\\";\\r\\n    private static final String SUBSCRIPTION_ACTIVE = \\\"1\\\";\\r\\n    private static final String SUBSCRIPTION_SUSPENDED = \\\"2\\\";\\r\\n    private static final String SUBSCRIPTION_RESILIATED = \\\"3\\\";\\r\\n    private static final String SUBSCRIPTION_CANCELED = \\\"4\\\";\\r\\n    private static final String SUBSCRIPTION_CLOSED = \\\"5\\\";\\r\\n\\r\\n    private static final String PAYMENT_MODE_CB = \\\"CB\\\";\\r\\n    private static final String PAYMENT_MODE_SEPA = \\\"SEPA\\\";\\r\\n\\r\\n    @Override\\r\\n    public void execute(Map<String, Object> methodContext) throws BusinessException {\\r\\n\\r\\n        Date fromDate = null;\\r\\n        Date toDate = null;\\r\\n\\r\\n        job = (JobInstance) methodContext.get(Script.CONTEXT_ENTITY);\\r\\n\\r\\n        Long bulkTreatmentStart = (Long) job.getCfValue(\\\"REJECT_BULK_START\\\");\\r\\n        Long bulkTreatmentEnd = (Long) job.getCfValue(\\\"REJECT_BULK_END\\\");\\r\\n\\r\\n        Date bulkTreatmentStartDate = getBulkTreatmentDate(bulkTreatmentStart);\\r\\n        Date bulkTreatmentEndDate = getBulkTreatmentDate(bulkTreatmentEnd);\\r\\n\\r\\n        if (bulkTreatmentStartDate == null){\\r\\n            return;\\r\\n        }\\r\\n\\r\\n        fromDate = bulkTreatmentStartDate;\\r\\n        if (bulkTreatmentEndDate == null){\\r\\n            toDate = DateUtils.addDaysToDate(bulkTreatmentStartDate, 1);\\r\\n        } else {\\r\\n            toDate = DateUtils.addDaysToDate(bulkTreatmentEndDate, 1);\\r\\n        }\\r\\n\\r\\n        String queryStr = \\\"Select ao from AccountOperation as ao  where ao.rejectedDate >= :fromDate and ao.rejectedDate < :toDate and  \\\" + \\\"ao.occCode = :occCode1 or ao.occCode =:occCode2 ORDER BY ao.rejectedDate DESC\\\";\\r\\n        Map<String, Object> params = new HashMap<String, Object>();\\r\\n        params.put(\\\"fromDate\\\", fromDate);\\r\\n        params.put(\\\"toDate\\\", toDate);\\r\\n        params.put(\\\"occCode1\\\", \\\"REJ_CRD\\\");\\r\\n        params.put(\\\"occCode2\\\", \\\"REJ_DDT\\\");\\r\\n        List<AccountOperation> listAO = (List<AccountOperation>) accountOperationService.executeSelectQuery(queryStr.toString(), params);\\r\\n\\r\\n        Map<String, Long> mapSubscriptionAO = new HashMap<String, Long>();\\r\\n        for (AccountOperation accountOperation : listAO) {\\r\\n            Subscription subscriptionI = getSubFromAo(accountOperation);\\r\\n            if (subscriptionI != null) {\\r\\n                mapSubscriptionAO.put(subscriptionI.getCode(), Long.valueOf(accountOperation.getId()));\\r\\n            }\\r\\n        }\\r\\n\\r\\n        setWSData(mapSubscriptionAO);\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * fetch CF Config Value\\r\\n     *\\r\\n     * @param entity\\r\\n     * @param cfKey\\r\\n     * @param isMandatory\\r\\n     * @return\\r\\n     * @throws BusinessException\\r\\n     */\\r\\n    private Object fetchCFConfigValue(ICustomFieldEntity entity, String cfKey, boolean isMandatory) throws BusinessException {\\r\\n        Object cfValue = cfiService.getCFValue(entity, cfKey);\\r\\n        if (isMandatory && (cfValue == null || (cfValue instanceof String && org.apache.commons.lang3.StringUtils.isEmpty(String.valueOf(cfValue))))) {\\r\\n            throw new BusinessException(\\\" Missing mandatory config [\\\" + cfKey + \\\"]\\\");\\r\\n        }\\r\\n        return cfValue;\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * Call Neolane WS\\r\\n     *\\r\\n     * @param soapEnvBody\\r\\n     * @return\\r\\n     * @throws BusinessException\\r\\n     */\\r\\n    private String callWebService(String soapEnvBody) throws BusinessException {\\r\\n\\r\\n        String body =\\r\\n                \\\"<?xml version=\\\\\\\"1.0\\\\\\\" encoding=\\\\\\\"UTF-8\\\\\\\"?><soapenv:Envelope xmlns:soapenv=\\\\\\\"http://schemas.xmlsoap.org/soap/envelope/\\\\\\\" \\\" +\\r\\n                        \\\"xmlns:urn=\\\\\\\"urn:nms:rtMsg\\\\\\\"><soapenv:Header/><soapenv:Body>\\\"\\r\\n                        + soapEnvBody + \\\"</soapenv:Body></soapenv:Envelope>\\\";\\r\\n\\r\\n        StringEntity stringEntity = new StringEntity(body, \\\"UTF-8\\\");\\r\\n\\r\\n        final String wsUrl = (String) this.fetchCFConfigValue(appProvider, CF_FD_URL_WS_NCLS, true);\\r\\n        final String actionUri = (String) this.fetchCFConfigValue(appProvider, CF_FD_ACTION_URI_WS_NCLS, true);\\r\\n\\r\\n        // Request parameters and other properties.\\r\\n        HttpPost httpPost = new HttpPost(wsUrl);\\r\\n        httpPost.setEntity(stringEntity);\\r\\n        httpPost.setHeader(\\\"SOAPAction\\\", actionUri);\\r\\n\\r\\n        // Execute and get the response.\\r\\n        CloseableHttpClient httpClient = getCloseableHttpClient();\\r\\n\\r\\n        HttpResponse response = null;\\r\\n        try {\\r\\n\\r\\n            log.info(\\\"we want to sent to this address = \\\" + actionUri);\\r\\n            log.info(\\\"This body = \\\" + body);\\r\\n\\r\\n            response = httpClient.execute(httpPost);\\r\\n            boolean responseOk = false;\\r\\n            if (response != null) {\\r\\n                StatusLine statusLine = response.getStatusLine();\\r\\n                if (statusLine != null) {\\r\\n                    int statusCode = statusLine.getStatusCode();\\r\\n                    if (statusCode == 200) {\\r\\n                        responseOk = true;\\r\\n                        log.info(\\\"body sent and it's Ok\\\");\\r\\n                    }\\r\\n                }\\r\\n            }\\r\\n            if (responseOk) {\\r\\n                log.info(\\\"In NeolaneCustomerLifeFirstRejectScript : Status Code of response is \\\" + response.getStatusLine().getStatusCode());\\r\\n                return \\\"OK\\\";\\r\\n            } else {\\r\\n                log.error(\\\"In NeolaneCustomerLifeFirstRejectScript : Status Code of response is not 200 \\\");\\r\\n                return \\\"KO\\\";\\r\\n            }\\r\\n\\r\\n        } catch (IOException e) {\\r\\n            log.error(\\\"Exception in EndSubscriptionScript :\\\", e);\\r\\n        }\\r\\n        return \\\"KO\\\";\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * get CloseableHttpClient\\r\\n     *\\r\\n     * @return trusted httpClient\\r\\n     */\\r\\n    public CloseableHttpClient getCloseableHttpClient() {\\r\\n        CloseableHttpClient httpClient = null;\\r\\n        try {\\r\\n            httpClient = HttpClients.custom().\\r\\n                    setSSLHostnameVerifier(NoopHostnameVerifier.INSTANCE).\\r\\n                    setSSLContext(new SSLContextBuilder().loadTrustMaterial(null, new TrustStrategy() {\\r\\n                        public boolean isTrusted(X509Certificate[] arg0, String arg1) throws CertificateException {\\r\\n                            return true;\\r\\n                        }\\r\\n                    }).build()).build();\\r\\n        } catch (Exception e) {\\r\\n            log.error(\\\"KeyManagementException in creating http client instance\\\", e);\\r\\n        }\\r\\n        return httpClient;\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * get Subscription From AO\\r\\n     *\\r\\n     * @param ao\\r\\n     * @return\\r\\n     */\\r\\n    private Subscription getSubFromAo(AccountOperation ao) {\\r\\n        if (ao != null) {\\r\\n            if (ao.getCustomerAccount() != null && ao.getCustomerAccount().getBillingAccounts() != null && !ao.getCustomerAccount().getBillingAccounts().isEmpty()) {\\r\\n                BillingAccount ba = ao.getCustomerAccount().getBillingAccounts().get(0);\\r\\n                if (ba != null && ba.getUsersAccounts() != null && !ba.getUsersAccounts().isEmpty()) {\\r\\n                    UserAccount ua = ba.getUsersAccounts().get(0);\\r\\n                    if (ua != null && ua.getSubscriptions() != null && !ua.getSubscriptions().isEmpty()) {\\r\\n                        return ua.getSubscriptions().get(0);\\r\\n                    }\\r\\n                }\\r\\n            }\\r\\n        }\\r\\n        return null;\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     *  get Bulk Treatment Date\\r\\n     *\\r\\n     * @param bulkTreatment\\r\\n     * @return\\r\\n     */\\r\\n    private Date getBulkTreatmentDate(Long bulkTreatment) {\\r\\n\\r\\n        Integer dayIndex = null;\\r\\n        Date bulkTreatmentDate = null;\\r\\n\\r\\n        if (bulkTreatment != null) {\\r\\n            dayIndex = bulkTreatment.intValue();\\r\\n        } else {\\r\\n            return bulkTreatmentDate;\\r\\n        }\\r\\n\\r\\n        Calendar bulkTreatmentCal = Calendar.getInstance();\\r\\n        bulkTreatmentCal.set(Calendar.HOUR_OF_DAY, 0);\\r\\n        bulkTreatmentCal.set(Calendar.MINUTE, 0);\\r\\n        bulkTreatmentCal.set(Calendar.SECOND, 0);\\r\\n        bulkTreatmentDate = bulkTreatmentCal.getTime();\\r\\n\\r\\n        bulkTreatmentDate = DateUtils.setDayToDate(bulkTreatmentDate, dayIndex);\\r\\n        return bulkTreatmentDate;\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * Set Data for Neolane WS\\r\\n     *\\r\\n     * @param mapSubscriptionAO the map of (subscriptionCode , firstRejectId)\\r\\n     * @throws BusinessException\\r\\n     */\\r\\n    private void setWSData(Map<String, Long> mapSubscriptionAO) throws BusinessException {\\r\\n\\r\\n        Date nowDate = new Date();\\r\\n\\r\\n        for (Map.Entry<String, Long> entry : mapSubscriptionAO.entrySet()) {\\r\\n\\r\\n            String subscriptionCode = entry.getKey();\\r\\n            Long accountOperationId = entry.getValue();\\r\\n\\r\\n            String ws_rejectDate = \\\"\\\";\\r\\n            String ws_rejectedInvoiceNb = \\\"\\\";\\r\\n            String ws_rejectedAmountTTC = \\\"\\\";\\r\\n            String ws_reason = \\\"\\\";\\r\\n\\r\\n            Subscription subscription = subscriptionService.findByCode(subscriptionCode);\\r\\n            AccountOperation accountOperation = accountOperationService.findById(accountOperationId);\\r\\n            if (subscription == null || accountOperation == null) {\\r\\n                continue;\\r\\n            }\\r\\n\\r\\n            RejectedPayment rejectedPayment = (RejectedPayment) accountOperation;\\r\\n            Date rejectedDate = rejectedPayment.getRejectedDate();\\r\\n            ws_rejectDate = DateUtils.formatDateWithPattern(rejectedDate, DATE_PATTERN_BODY);\\r\\n\\r\\n            Invoice invoice = null;\\r\\n            List<Invoice> invoices = rejectedPayment.getInvoices();\\r\\n            if (invoices != null) {\\r\\n                invoice = invoices.get(0);\\r\\n            }\\r\\n            if (invoice != null) {\\r\\n                ws_rejectedInvoiceNb = invoice.getInvoiceNumber();\\r\\n                BigDecimal invoiceAmountWithTax = invoice.getAmountWithTax();\\r\\n                if (invoiceAmountWithTax != null) {\\r\\n                    ws_rejectedAmountTTC = (invoiceAmountWithTax.setScale(2, RoundingMode.DOWN)).toString();\\r\\n\\r\\n                }\\r\\n            }\\r\\n            ws_reason = rejectedPayment.getRejectedCode();\\r\\n\\r\\n            UserAccount userAccount = subscription.getUserAccount();\\r\\n            if (userAccount == null) {\\r\\n                log.error(\\\"NeolaneCustomerLifeFirstRejectScript : userAccount is null / subscription code = \\\" + subscription.getCode());\\r\\n                continue;\\r\\n            }\\r\\n            BillingAccount billingAccount = userAccount.getBillingAccount();\\r\\n            if (billingAccount == null) {\\r\\n                log.error(\\\"NeolaneCustomerLifeFirstRejectScript : billingAccount is null / subscription code = \\\" + subscription.getCode());\\r\\n                continue;\\r\\n            }\\r\\n            CustomerAccount customerAccount = billingAccount.getCustomerAccount();\\r\\n            if (customerAccount == null) {\\r\\n                log.error(\\\"NeolaneCustomerLifeFirstRejectScript : customerAccount is null / subscription code = \\\" + subscription.getCode());\\r\\n                continue;\\r\\n            }\\r\\n\\r\\n            String ws_paymentMode = \\\"\\\";\\r\\n            String ws_cbValidityDate = \\\"\\\";\\r\\n            PaymentMethod preferredPaymentMethod = customerAccount.getPreferredPaymentMethod();\\r\\n            if (preferredPaymentMethod != null) {\\r\\n                PaymentMethodEnum paymentType = preferredPaymentMethod.getPaymentType();\\r\\n                if (paymentType != null) {\\r\\n                    if ((PaymentMethodEnum.DIRECTDEBIT == paymentType) || (PaymentMethodEnum.WIRETRANSFER == paymentType)) {\\r\\n                        ws_paymentMode = PAYMENT_MODE_SEPA;\\r\\n                    } else if (PaymentMethodEnum.CARD == paymentType) {\\r\\n                        ws_paymentMode = PAYMENT_MODE_CB;\\r\\n                        String cbExpirationDateStr = ((CardPaymentMethod) preferredPaymentMethod).getExpirationMonthAndYear();\\r\\n                        Date cbExpirationDate = DateUtils.parseDateWithPattern(cbExpirationDateStr, DATE_PATTERN_CB);\\r\\n                        ws_cbValidityDate = DateUtils.formatDateWithPattern(cbExpirationDate, DATE_PATTERN_BODY);\\r\\n\\r\\n                    }\\r\\n                }\\r\\n            }\\r\\n\\r\\n            ContactInformation contactInformation = userAccount.getContactInformation();\\r\\n            if (contactInformation == null) {\\r\\n                log.error(\\\"NeolaneCustomerLifeFirstRejectScript : contactInformation is null / subscription code = \\\" + subscription.getCode());\\r\\n                continue;\\r\\n            }\\r\\n\\r\\n            String email = contactInformation.getEmail();\\r\\n            email = (email == null) ? \\\"\\\" : email;\\r\\n\\r\\n            String ws_address = email;\\r\\n            String ws_culture = CULTURE;\\r\\n            String ws_sendByMail = \\\"true\\\";\\r\\n            String ws_sendBySMS = \\\"true\\\";\\r\\n            String cellphone = contactInformation.getMobile();\\r\\n            if (StringUtils.isBlank(cellphone)) {\\r\\n                cellphone = \\\"\\\";\\r\\n            }\\r\\n            String ws_cellphone = cellphone;\\r\\n\\r\\n            Calendar expirationDateCalendar = Calendar.getInstance();\\r\\n            expirationDateCalendar.setTime(nowDate);\\r\\n            expirationDateCalendar.add(Calendar.HOUR_OF_DAY, 12);\\r\\n            String ws_expirationDate = DateUtils.formatDateWithPattern(expirationDateCalendar.getTime(), DATE_PATTERN);\\r\\n\\r\\n            String ws_originalDate = DateUtils.formatDateWithPattern(nowDate, DATE_PATTERN);\\r\\n\\r\\n            String ws_rcpId = \\\"-2\\\";\\r\\n            String ws_template = \\\"RELAN_OPENCELL_IMP\\\";\\r\\n            String ws_enseigne = \\\"\\\";\\r\\n\\r\\n            boolean nameOk = false;\\r\\n            Customer customer = customerAccount.getCustomer();\\r\\n            Name name = null;\\r\\n            Title title = null;\\r\\n            if (customer != null && customer.getName() != null) {\\r\\n                name = customer.getName();\\r\\n                nameOk = true;\\r\\n            }\\r\\n\\r\\n            if (nameOk == false) {\\r\\n                log.error(\\\"NeolaneCustomerLifeFirstRejectScript : problem with name / subscription code = \\\" + subscription.getCode());\\r\\n                continue;\\r\\n            }\\r\\n            title = name.getTitle();\\r\\n            String ws_gender = \\\"\\\";\\r\\n            if (title != null && title.getCode() != null) {\\r\\n                ws_gender = title.getCode();\\r\\n            }\\r\\n            String ws_firstName = (name.getFirstName() == null) ? \\\"\\\" : name.getFirstName();\\r\\n            String ws_lastName = (name.getLastName() == null) ? \\\"\\\" : name.getLastName();\\r\\n            String ws_email = email;\\r\\n            String ws_contractNumber = subscription.getCode();\\r\\n            OfferTemplate offer = subscription.getOffer();\\r\\n            if (offer == null) {\\r\\n                log.error(\\\"NeolaneCustomerLifeFirstRejectScript : offer is null / subscription code = \\\" + subscription.getCode());\\r\\n                continue;\\r\\n            }\\r\\n            String ws_offerLabel = (offer.getName() == null) ? \\\"\\\" : offer.getName();\\r\\n            String ws_contractStatus = \\\"\\\";\\r\\n            if (subscription.getStatus() == null) {\\r\\n                log.error(\\\"NeolaneCustomerLifeFirstRejectScript : subscription.status is null / subscription code = \\\" + subscription.getCode());\\r\\n                continue;\\r\\n            }\\r\\n            switch (subscription.getStatus()) {\\r\\n            case CREATED:\\r\\n                ws_contractStatus = SUBSCRIPTION_CREATED;\\r\\n                break;\\r\\n            case ACTIVE:\\r\\n                ws_contractStatus = SUBSCRIPTION_ACTIVE;\\r\\n                break;\\r\\n            case CANCELED:\\r\\n                ws_contractStatus = SUBSCRIPTION_CANCELED;\\r\\n                break;\\r\\n            case RESILIATED:\\r\\n                ws_contractStatus = SUBSCRIPTION_RESILIATED;\\r\\n                break;\\r\\n            case CLOSED:\\r\\n                ws_contractStatus = SUBSCRIPTION_CLOSED;\\r\\n                break;\\r\\n            case SUSPENDED:\\r\\n                ws_contractStatus = SUBSCRIPTION_SUSPENDED;\\r\\n                break;\\r\\n            default:\\r\\n                ws_contractStatus = \\\"\\\";\\r\\n            }\\r\\n\\r\\n            String ws_cardNumber = \\\"\\\";\\r\\n            String ws_serenityUrl = \\\"\\\";\\r\\n            String ws_adhNumber = \\\"\\\";\\r\\n\\r\\n            final String selfCareUrl = (String) this.fetchCFConfigValue(appProvider, CF_FD_URL_SELFCARE_NCLS, true);\\r\\n            String ws_urlSelfcare = \\\"\\\";\\r\\n            if (!StringUtils.isBlank(selfCareUrl)) {\\r\\n                ws_urlSelfcare = selfCareUrl;\\r\\n            }\\r\\n\\r\\n            String ws_engagmentEndDate = \\\"\\\";\\r\\n\\r\\n            String ws_tryBuyEndDate = \\\"\\\";\\r\\n\\r\\n            String ws_subAmount = \\\"\\\";\\r\\n\\r\\n            String ws_amountDrawn = \\\"\\\";\\r\\n            String ws_withdrawalDate = \\\"\\\";\\r\\n\\r\\n            GenerateInvoiceRequestDto generateInvoiceRequestDto = new GenerateInvoiceRequestDto();\\r\\n\\r\\n            generateInvoiceRequestDto.setTargetType(\\\"BillingAccount\\\");\\r\\n            generateInvoiceRequestDto.setTargetCode(billingAccount.getCode());\\r\\n            generateInvoiceRequestDto.setInvoicingDate(new Date());\\r\\n            generateInvoiceRequestDto.setLastTransactionDate(DateUtils.addMonthsToDate(new Date(), 1));\\r\\n            generateInvoiceRequestDto.setGenerateXML(false);\\r\\n            generateInvoiceRequestDto.setGeneratePDF(false);\\r\\n            generateInvoiceRequestDto.setGenerateAO(false);\\r\\n            generateInvoiceRequestDto.setIgnoreInvoicingThreshold(true);\\r\\n\\r\\n            BigDecimal totalDiscount = new BigDecimal(\\\"0\\\");\\r\\n            try {\\r\\n\\r\\n                List<Invoice> listInvoice = invoiceService.generateInvoice(billingAccount, generateInvoiceRequestDto, null, true);\\r\\n\\r\\n                if (listInvoice != null) {\\r\\n                    for (Invoice invoice_i :listInvoice) {\\r\\n                        if (invoice_i != null) {\\r\\n                            List<SubCategoryInvoiceAgregate> discountAgregates = invoice_i.getDiscountAgregates();\\r\\n                            if (discountAgregates != null) {\\r\\n                                for (SubCategoryInvoiceAgregate subCategoryInvoiceAgregate : discountAgregates) {\\r\\n                                    if (subCategoryInvoiceAgregate != null) {\\r\\n                                        totalDiscount.add(subCategoryInvoiceAgregate.getAmountWithoutTax());\\r\\n                                    }\\r\\n                                }\\r\\n                            }\\r\\n                        }\\r\\n                    }\\r\\n\\r\\n                    for (Invoice invoice_i : listInvoice) {\\r\\n                        invoiceService.cancelInvoice(invoice_i);\\r\\n                        invoiceService.commit();\\r\\n                    }\\r\\n                }\\r\\n            } catch (Exception e) {\\r\\n                log.error(\\\"In NeolaneCustomerLifeFirstRejectScript = \\\" + e);\\r\\n            }\\r\\n\\r\\n            String subAmount = \\\"0\\\";\\r\\n            if (cfiService.getInheritedCFValue(subscription.getOffer(), \\\"CF_OF_FD_PRICE\\\") != null) {\\r\\n                subAmount = String.valueOf(cfiService.getInheritedCFValue(subscription.getOffer(), \\\"CF_OF_FD_PRICE\\\"));\\r\\n            }\\r\\n\\r\\n            if (!\\\"0\\\".equals(subAmount)) {\\r\\n                BigDecimal subAmountValue = new BigDecimal(subAmount);\\r\\n                subAmountValue.add(totalDiscount);\\r\\n                ws_amountDrawn = (subAmountValue.setScale(2, RoundingMode.DOWN)).toString();\\r\\n                ws_withdrawalDate = DateUtils.formatDateWithPattern(billingAccount.getNextInvoiceDate(), DATE_PATTERN_BODY);\\r\\n            }\\r\\n\\r\\n            String ws_oneTimeCBPaymentDate = \\\"\\\";\\r\\n            String ws_oneTimePaymentAmount = \\\"\\\";\\r\\n            String ws_refundDate = \\\"\\\";\\r\\n            String ws_refundAmount = \\\"\\\";\\r\\n            String ws_discountEntryDate = \\\"\\\";\\r\\n            String ws_discountAmount = \\\"\\\";\\r\\n            String ws_transacAutorisationNb = \\\"\\\";\\r\\n            String ws_rum = \\\"\\\";\\r\\n            String ws_ics = \\\"\\\";\\r\\n            String ws_legalEntityName = \\\"\\\";\\r\\n\\r\\n            String ws_activationDate = \\\"\\\";\\r\\n            String ws_rterminationDate = \\\"\\\";\\r\\n            String ws_terminationReason = \\\"\\\";\\r\\n\\r\\n            String ws_trActivationDate = \\\"\\\";\\r\\n            String ws_trDeactivationDate = \\\"\\\";\\r\\n\\r\\n            String soapEnvBody =\\r\\n                    \\\"<urn:Submit><urn:sessiontoken></urn:sessiontoken><urn:elemCtx><ctx \\\" + \\\" address=\\\\\\\"\\\" + ws_address + \\\"\\\\\\\"\\\" + \\\" culture=\\\\\\\"\\\" + ws_culture + \\\"\\\\\\\"\\\"\\r\\n                            + \\\" sendByMail=\\\\\\\"\\\" + ws_sendByMail + \\\"\\\\\\\"\\\" + \\\" sendBySMS=\\\\\\\"\\\" + ws_sendBySMS + \\\"\\\\\\\"\\\" + \\\" cellphone=\\\\\\\"\\\" + ws_cellphone + \\\"\\\\\\\"\\\"\\r\\n                            + \\\" expirationDate=\\\\\\\"\\\" + ws_expirationDate + \\\"\\\\\\\"\\\" + \\\" originalDate=\\\\\\\"\\\" + ws_originalDate + \\\"\\\\\\\"\\\" + \\\" rcpId=\\\\\\\"\\\" + ws_rcpId + \\\"\\\\\\\"\\\"\\r\\n                            + \\\" template=\\\\\\\"\\\" + ws_template + \\\"\\\\\\\"\\\" + \\\" xmlns=\\\\\\\"\\\\\\\">\\\" + \\\"<CUSTOMER> \\\" + \\\"<Enseigne>\\\" + ws_enseigne + \\\"</Enseigne>\\\" + \\\"<Gender>\\\" + ws_gender\\r\\n                            + \\\"</Gender>\\\" + \\\"<FirstName>\\\" + ws_firstName + \\\"</FirstName>\\\" + \\\"<LastName>\\\" + ws_lastName + \\\"</LastName>\\\" + \\\"<Email>\\\" + ws_email\\r\\n                            + \\\"</Email>\\\" + \\\"<SendBySMS>\\\" + ws_sendBySMS + \\\"</SendBySMS>\\\" + \\\"<sendByMail>\\\" + ws_sendByMail + \\\"</sendByMail>\\\" + \\\"<ContractNumber>\\\"\\r\\n                            + ws_contractNumber + \\\"</ContractNumber>\\\" + \\\"<offerLabel>\\\" + ws_offerLabel + \\\"</offerLabel>\\\" + \\\"<ContractStatus>\\\" + ws_contractStatus\\r\\n                            + \\\"</ContractStatus>\\\" + \\\"<CardNumber>\\\" + ws_cardNumber + \\\"</CardNumber>\\\" + \\\"<AdhNumber>\\\" + ws_adhNumber + \\\"</AdhNumber>\\\" + \\\"<SelfCareUrl>\\\"\\r\\n                            + ws_urlSelfcare + \\\"</SelfCareUrl>\\\" + \\\"<SerenityUrl>\\\" + ws_serenityUrl + \\\"</SerenityUrl>\\\" + \\\"<EngagmentEndDate>\\\" + ws_engagmentEndDate\\r\\n                            + \\\"</EngagmentEndDate>\\\" + \\\"<TryBuyEndDate>\\\" + ws_tryBuyEndDate + \\\"</TryBuyEndDate>\\\" + \\\"<SubAmount>\\\" + ws_subAmount + \\\"</SubAmount>\\\"\\r\\n                            + \\\"</CUSTOMER> \\\" + \\\"<INVOICE> \\\" + \\\"<CBValidityDate>\\\" + ws_cbValidityDate + \\\"</CBValidityDate>\\\" + \\\"<PaymentMode>\\\" + ws_paymentMode\\r\\n                            + \\\"</PaymentMode>\\\" + \\\"<RejectDate>\\\" + ws_rejectDate + \\\"</RejectDate>\\\" + \\\"<RejectedInvoiceNb>\\\" + ws_rejectedInvoiceNb\\r\\n                            + \\\"</RejectedInvoiceNb>\\\" + \\\"<RejectedAmountTTC>\\\" + ws_rejectedAmountTTC + \\\"</RejectedAmountTTC>\\\" + \\\"<Reason>\\\" + ws_reason + \\\"</Reason>\\\"\\r\\n                            + \\\"<AmountDrawn>\\\" + ws_amountDrawn + \\\"</AmountDrawn>\\\" + \\\"<WithdrawalDate>\\\" + ws_withdrawalDate + \\\"</WithdrawalDate>\\\"\\r\\n                            + \\\"<OneTimeCBPaymentDate>\\\" + ws_oneTimeCBPaymentDate + \\\"</OneTimeCBPaymentDate>\\\" + \\\"<OneTimePaymentAmount>\\\" + ws_oneTimePaymentAmount\\r\\n                            + \\\"</OneTimePaymentAmount>\\\" + \\\"<RefundDate>\\\" + ws_refundDate + \\\"</RefundDate>\\\" + \\\"<RefundAmount>\\\" + ws_refundAmount + \\\"</RefundAmount>\\\"\\r\\n                            + \\\"<DiscountEntryDate>\\\" + ws_discountEntryDate + \\\"</DiscountEntryDate>\\\" + \\\"<DiscountAmount>\\\" + ws_discountAmount + \\\"</DiscountAmount>\\\"\\r\\n                            + \\\"<TransacAutorisationNb>\\\" + ws_transacAutorisationNb + \\\"</TransacAutorisationNb>\\\" + \\\"<Rum>\\\" + ws_rum + \\\"</Rum>\\\" + \\\"<Ics>\\\" + ws_ics\\r\\n                            + \\\"</Ics>\\\" + \\\"<LegalEntityName>\\\" + ws_legalEntityName + \\\"</LegalEntityName>\\\" + \\\"</INVOICE>\\\" + \\\"<TERMINATION>\\\" + \\\"<ActivationDate>\\\"\\r\\n                            + ws_activationDate + \\\"</ActivationDate>\\\" + \\\"<TerminationDate>\\\" + ws_rterminationDate + \\\"</TerminationDate>\\\" + \\\"<TerminationReason>\\\"\\r\\n                            + ws_terminationReason + \\\"</TerminationReason>\\\" + \\\"</TERMINATION>\\\" + \\\"<TACITRENEWAL>\\\" + \\\"<TrActivationDate>\\\" + ws_trActivationDate\\r\\n                            + \\\"</TrActivationDate>\\\" + \\\"<TrDeactivationDate>\\\" + ws_trDeactivationDate + \\\"</TrDeactivationDate>\\\" + \\\"</TACITRENEWAL>\\\"\\r\\n                            + \\\"</ctx></urn:elemCtx></urn:Submit>\\\";\\r\\n\\r\\n            String response = callWebService(soapEnvBody);\\r\\n            log.info(\\\"response = \\\" + response);\\r\\n            log.info(\\\"soapEnvBody = \\\" + soapEnvBody);\\r\\n        }\\r\\n    }\\r\\n}\",\n    \"executionRoles\": [],\n    \"sourcingRoles\": []\n}"
						},
						"url": {
							"raw": "{{opencell.url}}/scriptInstance/createOrUpdate",
							"host": [
								"{{opencell.url}}"
							],
							"path": [
								"scriptInstance",
								"createOrUpdate"
							]
						}
					},
					"response": []
				},
				{
					"name": "NeolaneCustomerLifeEndContractScript",
					"request": {
						"auth": {
							"type": "basic",
							"basic": [
								{
									"key": "password",
									"value": "{{opencell.password}}",
									"type": "string"
								},
								{
									"key": "username",
									"value": "{{opencell.username}}",
									"type": "string"
								}
							]
						},
						"method": "POST",
						"header": [
							{
								"key": "Content-Type",
								"value": "application/json"
							},
							{
								"key": "Proxy-Authorization",
								"type": "text",
								"value": "{{proxy.auth}}"
							}
						],
						"body": {
							"mode": "raw",
							"raw": "{\n    \"code\": \"org.meveo.service.script.NeolaneCustomerLifeEndContractScript\",\n    \"description\": \"NeolaneCustomerLifeEndContract Script\",\n    \"type\": \"JAVA\",\n    \"script\": \"package org.meveo.service.script;\\r\\n\\r\\nimport org.apache.http.HttpResponse;\\r\\nimport org.apache.http.StatusLine;\\r\\nimport org.apache.http.client.methods.HttpPost;\\r\\nimport org.apache.http.conn.ssl.NoopHostnameVerifier;\\r\\nimport org.apache.http.conn.ssl.SSLContextBuilder;\\r\\nimport org.apache.http.conn.ssl.TrustStrategy;\\r\\nimport org.apache.http.entity.StringEntity;\\r\\nimport org.apache.http.impl.client.CloseableHttpClient;\\r\\nimport org.apache.http.impl.client.HttpClients;\\r\\nimport org.meveo.admin.exception.BusinessException;\\r\\nimport org.meveo.api.dto.invoice.GenerateInvoiceRequestDto;\\r\\nimport org.meveo.commons.utils.StringUtils;\\r\\nimport org.meveo.model.ICustomFieldEntity;\\r\\nimport org.meveo.model.admin.Seller;\\r\\nimport org.meveo.model.billing.BillingAccount;\\r\\nimport org.meveo.model.billing.Invoice;\\r\\nimport org.meveo.model.billing.ServiceInstance;\\r\\nimport org.meveo.model.billing.SubCategoryInvoiceAgregate;\\r\\nimport org.meveo.model.billing.Subscription;\\r\\nimport org.meveo.model.billing.SubscriptionRenewal;\\r\\nimport org.meveo.model.billing.UserAccount;\\r\\nimport org.meveo.model.catalog.OfferTemplate;\\r\\nimport org.meveo.model.crm.Customer;\\r\\nimport org.meveo.model.crm.Provider;\\r\\nimport org.meveo.model.payments.CustomerAccount;\\r\\nimport org.meveo.model.payments.PaymentMethod;\\r\\nimport org.meveo.model.payments.PaymentMethodEnum;\\r\\nimport org.meveo.model.shared.ContactInformation;\\r\\nimport org.meveo.model.shared.DateUtils;\\r\\nimport org.meveo.model.shared.Name;\\r\\nimport org.meveo.model.shared.Title;\\r\\nimport org.meveo.service.billing.impl.InvoiceService;\\r\\nimport org.meveo.service.billing.impl.ServiceInstanceService;\\r\\nimport org.meveo.service.crm.impl.CustomFieldInstanceService;\\r\\nimport org.meveo.service.crm.impl.ProviderService;\\r\\n\\r\\nimport java.io.IOException;\\r\\nimport java.math.BigDecimal;\\r\\nimport java.math.RoundingMode;\\r\\nimport java.security.cert.CertificateException;\\r\\nimport java.security.cert.X509Certificate;\\r\\nimport java.util.Calendar;\\r\\nimport java.util.Date;\\r\\nimport java.util.HashMap;\\r\\nimport java.util.List;\\r\\nimport java.util.Map;\\r\\n\\r\\n/**\\r\\n * Appel le web service Neolane\\r\\n *    Mail de pr\\u00E9venance de fin d'adh\\u00E9sion\\r\\n *    Mail de confirmation de renouvellement\\r\\n *\\r\\n * @author Mounir Bahije\\r\\n */\\r\\n\\r\\npublic class NeolaneCustomerLifeEndContractScript extends Script {\\r\\n\\r\\n    private CustomFieldInstanceService cfiService = (CustomFieldInstanceService) getServiceInterface(\\\"CustomFieldInstanceService\\\");\\r\\n    private ServiceInstanceService serviceInstanceService = (ServiceInstanceService) getServiceInterface(\\\"ServiceInstanceService\\\");\\r\\n    private ProviderService providerService = (ProviderService) getServiceInterface(ProviderService.class.getSimpleName());\\r\\n    private Provider appProvider = providerService.getProvider();\\r\\n    private InvoiceService invoiceService = (InvoiceService) getServiceInterface(InvoiceService.class.getSimpleName());\\r\\n\\r\\n    private static final String CULTURE = \\\"fr-FR\\\";\\r\\n    private static final String DATE_PATTERN = \\\"yyyy/MM/dd HH:mm:ss\\\";\\r\\n    private static final String DATE_PATTERN_BODY = \\\"dd/MM/yyyy\\\";\\r\\n\\r\\n    private static final String CF_FD_URL_WS_NCLS = \\\"CF_FD_URL_WS_NCLS\\\";\\r\\n    private static final String CF_FD_ACTION_URI_WS_NCLS = \\\"CF_FD_ACTION_URI_WS_NCLS\\\";\\r\\n    private static final String CF_FD_URL_SELFCARE_NCLS = \\\"CF_FD_URL_SELFCARE_NCLS\\\";\\r\\n\\r\\n    private static final String SUBSCRIPTION_CREATED = \\\"0\\\";\\r\\n    private static final String SUBSCRIPTION_ACTIVE = \\\"1\\\";\\r\\n    private static final String SUBSCRIPTION_SUSPENDED = \\\"2\\\";\\r\\n    private static final String SUBSCRIPTION_RESILIATED = \\\"3\\\";\\r\\n    private static final String SUBSCRIPTION_CANCELED = \\\"4\\\";\\r\\n    private static final String SUBSCRIPTION_CLOSED = \\\"5\\\";\\r\\n\\r\\n    private static final int BEFORE_END_CONTRACT_DATE_90 = 90;\\r\\n    private static final int BEFORE_END_CONTRACT_DATE_30 = 30;\\r\\n    private static final int BEFORE_END_CONTRACT_DATE_00 = 0;\\r\\n\\r\\n    @Override\\r\\n    public void execute(Map<String, Object> methodContext) throws BusinessException {\\r\\n\\r\\n\\r\\n        String searchField = \\\"%\\\" + \\\"REC_MAIN\\\";\\r\\n        String query = String.format(\\\"select  si  from ServiceInstance  si WHERE si.code like '%s'\\\", searchField);\\r\\n        Map<String, Object> params = new HashMap<>();\\r\\n        List<ServiceInstance> listServiceInstance = (List<ServiceInstance>) serviceInstanceService.executeSelectQuery(query.toString(), params);\\r\\n        methodContext.clear();\\r\\n\\r\\n        setWSData(listServiceInstance);\\r\\n\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * fetch CF Config Value\\r\\n     *\\r\\n     * @param entity\\r\\n     * @param cfKey\\r\\n     * @param isMandatory\\r\\n     * @return\\r\\n     * @throws BusinessException\\r\\n     */\\r\\n    private Object fetchCFConfigValue(ICustomFieldEntity entity, String cfKey, boolean isMandatory) throws BusinessException {\\r\\n        Object cfValue = cfiService.getCFValue(entity, cfKey);\\r\\n        if (isMandatory && (cfValue == null || (cfValue instanceof String && org.apache.commons.lang3.StringUtils.isEmpty(String.valueOf(cfValue))))) {\\r\\n            throw new BusinessException(\\\" Missing mandatory config [\\\" + cfKey + \\\"]\\\");\\r\\n        }\\r\\n        return cfValue;\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * Call Neolane WS\\r\\n     *\\r\\n     * @param soapEnvBody\\r\\n     * @return\\r\\n     * @throws BusinessException\\r\\n     */\\r\\n    private String callWebService(String soapEnvBody) throws BusinessException {\\r\\n\\r\\n        String body =\\r\\n                \\\"<?xml version=\\\\\\\"1.0\\\\\\\" encoding=\\\\\\\"UTF-8\\\\\\\"?><soapenv:Envelope xmlns:soapenv=\\\\\\\"http://schemas.xmlsoap.org/soap/envelope/\\\\\\\" xmlns:urn=\\\\\\\"urn:nms:rtMsg\\\\\\\"><soapenv:Header/><soapenv:Body>\\\"\\r\\n                        + soapEnvBody + \\\"</soapenv:Body></soapenv:Envelope>\\\";\\r\\n\\r\\n        StringEntity stringEntity = new StringEntity(body, \\\"UTF-8\\\");\\r\\n\\r\\n        final String wsUrl = (String) this.fetchCFConfigValue(appProvider, CF_FD_URL_WS_NCLS, true);\\r\\n        final String actionUri = (String) this.fetchCFConfigValue(appProvider, CF_FD_ACTION_URI_WS_NCLS, true);\\r\\n\\r\\n        // Request parameters and other properties.\\r\\n        HttpPost httpPost = new HttpPost(wsUrl);\\r\\n        httpPost.setEntity(stringEntity);\\r\\n        httpPost.setHeader(\\\"SOAPAction\\\", actionUri);\\r\\n\\r\\n        // Execute and get the response.\\r\\n        CloseableHttpClient httpClient = getCloseableHttpClient();\\r\\n        HttpResponse response = null;\\r\\n        try {\\r\\n\\r\\n            log.info(\\\"we want to sent to this address = \\\" + actionUri);\\r\\n            log.info(\\\"This body = \\\" + body);\\r\\n\\r\\n            response = httpClient.execute(httpPost);\\r\\n            boolean responseOk = false;\\r\\n            if (response != null) {\\r\\n                StatusLine statusLine = response.getStatusLine();\\r\\n                if (statusLine != null) {\\r\\n                    int statusCode = statusLine.getStatusCode();\\r\\n                    if (statusCode == 200) {\\r\\n                        responseOk = true;\\r\\n                        log.info(\\\"body sent and it's Ok\\\");\\r\\n                    }\\r\\n                }\\r\\n            }\\r\\n            if (responseOk) {\\r\\n                log.info(\\\"In NeolaneCustomerLifeEndContractScript : Status Code of response is \\\" + response.getStatusLine().getStatusCode());\\r\\n                return \\\"OK\\\";\\r\\n            } else {\\r\\n                log.error(\\\"In NeolaneCustomerLifeEndContractScript : Status Code of response is not 200 \\\");\\r\\n                return \\\"KO\\\";\\r\\n            }\\r\\n\\r\\n        } catch (IOException e) {\\r\\n            log.error(\\\"Exception in EndSubscriptionScript :\\\", e);\\r\\n        }\\r\\n        return \\\"KO\\\";\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * get CloseableHttpClient\\r\\n     *\\r\\n     * @return trusted httpClient\\r\\n     */\\r\\n    public CloseableHttpClient getCloseableHttpClient()\\r\\n    {\\r\\n        CloseableHttpClient httpClient = null;\\r\\n        try {\\r\\n            httpClient = HttpClients.custom().\\r\\n                    setSSLHostnameVerifier(NoopHostnameVerifier.INSTANCE).\\r\\n                    setSSLContext(new SSLContextBuilder().loadTrustMaterial(null, new TrustStrategy()\\r\\n                    {\\r\\n                        public boolean isTrusted(X509Certificate[] arg0, String arg1) throws CertificateException\\r\\n                        {\\r\\n                            return true;\\r\\n                        }\\r\\n                    }).build()).build();\\r\\n        } catch (Exception e) {\\r\\n            log.error(\\\"KeyManagementException in creating http client instance\\\", e);\\r\\n        }\\r\\n        return httpClient;\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * Set Data for Neolane WS\\r\\n     *\\r\\n     * @param listServiceInstance the list of serviceInstance\\r\\n     * @throws BusinessException\\r\\n     */\\r\\n    private void setWSData(List<ServiceInstance> listServiceInstance) throws BusinessException {\\r\\n\\r\\n        Date nowDate = new Date();\\r\\n\\r\\n        if (listServiceInstance != null) {\\r\\n            for (ServiceInstance serviceInstance : listServiceInstance) {\\r\\n                Subscription subscription = serviceInstance.getSubscription();\\r\\n                if (subscription == null) {\\r\\n                    log.error(\\\"NeolaneCustomerLifeEndContractScript : subscription is null\\\");\\r\\n                    continue;\\r\\n                }\\r\\n\\r\\n                Date endContractDate = subscription.getSubscribedTillDate();\\r\\n                Date endContractDate_90 = DateUtils.addDaysToDate(endContractDate, -BEFORE_END_CONTRACT_DATE_90);\\r\\n                Date endContractDate_89 = DateUtils.addDaysToDate(endContractDate, -BEFORE_END_CONTRACT_DATE_90 + 1);\\r\\n                Date endContractDate_30 = DateUtils.addDaysToDate(endContractDate, -BEFORE_END_CONTRACT_DATE_30);\\r\\n                Date endContractDate_29 = DateUtils.addDaysToDate(endContractDate, -BEFORE_END_CONTRACT_DATE_30 + 1);\\r\\n                Date endContractDate_00 = DateUtils.addDaysToDate(endContractDate, -BEFORE_END_CONTRACT_DATE_00);\\r\\n                Date endContractDate_01 = DateUtils.addDaysToDate(endContractDate, -BEFORE_END_CONTRACT_DATE_00 + 1);\\r\\n\\r\\n                boolean isDateAtEndContract_90 = DateUtils.isTodayWithinPeriod(endContractDate_90, endContractDate_89);\\r\\n                boolean isDateAtEndContract_30 = DateUtils.isTodayWithinPeriod(endContractDate_30, endContractDate_29);\\r\\n                boolean isDateAtEndContract_00 = DateUtils.isTodayWithinPeriod(endContractDate_00, endContractDate_01);\\r\\n\\r\\n                UserAccount userAccount = subscription.getUserAccount();\\r\\n                if (userAccount == null) {\\r\\n                    log.error(\\\"NeolaneCustomerLifeEndContractScript : userAccount is null / subscription code = \\\" + subscription.getCode());\\r\\n                    continue;\\r\\n                }\\r\\n                BillingAccount billingAccount = userAccount.getBillingAccount();\\r\\n                if (billingAccount == null) {\\r\\n                    log.error(\\\"NeolaneCustomerLifeEndContractScript : billingAccount is null / subscription code = \\\" + subscription.getCode());\\r\\n                    continue;\\r\\n                }\\r\\n                CustomerAccount customerAccount = billingAccount.getCustomerAccount();\\r\\n                if (customerAccount == null) {\\r\\n                    log.error(\\\"NeolaneCustomerLifeEndContractScript : customerAccount is null / subscription code = \\\" + subscription.getCode());\\r\\n                    continue;\\r\\n                }\\r\\n\\r\\n                SubscriptionRenewal subscriptionRenewal = subscription.getSubscriptionRenewal();\\r\\n                if ( subscriptionRenewal == null) {\\r\\n                    log.error(\\\"NeolaneCustomerLifeEndContractScript : subscription.getSubscriptionRenewal() is null / subscription code = \\\" + subscription.getCode());\\r\\n                    continue;\\r\\n                }\\r\\n\\r\\n                if (subscriptionRenewal.isAutoRenew()) {\\r\\n                    if (isDateAtEndContract_90 || isDateAtEndContract_30 || isDateAtEndContract_00) {\\r\\n\\r\\n                        List<ServiceInstance> listServiceSearchLicence = subscription.getServiceInstances();\\r\\n                        if (listServiceSearchLicence == null) {\\r\\n                            log.error(\\\"NeolaneCustomerLifeEndContractScript : services of subscription is null / subscription code = \\\" + subscription.getCode());\\r\\n                            continue;\\r\\n                        }\\r\\n                        String licence = \\\"\\\";\\r\\n                        String offerType = \\\"FNAC+\\\";\\r\\n                        for (ServiceInstance serviceSearchLicence : listServiceSearchLicence) {\\r\\n                            if (serviceSearchLicence == null) {\\r\\n                                log.error(\\\"NeolaneCustomerLifeEndContractScript : serviceSearchLicence is null / subscription code = \\\" + subscription.getCode());\\r\\n                                continue;\\r\\n                            }\\r\\n                            if (\\\"SE_FD_LICENCE\\\".equalsIgnoreCase(serviceSearchLicence.getCode())) {\\r\\n                                offerType = \\\"SERENITE\\\";\\r\\n                                licence = (String) cfiService.getInheritedCFValue(serviceSearchLicence, \\\"CF_SE_FD_LICENCE_NUMBER\\\");\\r\\n                            }\\r\\n                        }\\r\\n                        ContactInformation contactInformation = userAccount.getContactInformation();\\r\\n                        if (contactInformation == null) {\\r\\n                            log.error(\\\"NeolaneCustomerLifeEndContractScript : contactInformation is null / subscription code = \\\" + subscription.getCode());\\r\\n                            continue;\\r\\n                        }\\r\\n\\r\\n                        String email = contactInformation.getEmail();\\r\\n                        email = (email == null) ? \\\"\\\" : email;\\r\\n\\r\\n                        String ws_address = email;\\r\\n\\r\\n                        String ws_culture = CULTURE;\\r\\n\\r\\n                        String ws_sendByMail = \\\"true\\\";\\r\\n\\r\\n                        String ws_sendBySMS = \\\"false\\\";\\r\\n\\r\\n                        String cellphone = contactInformation.getMobile();\\r\\n                        if (StringUtils.isBlank(cellphone)) {\\r\\n                            cellphone = \\\"\\\";\\r\\n                        }\\r\\n                        String ws_cellphone = cellphone;\\r\\n\\r\\n                        Calendar expirationDateCalendar = Calendar.getInstance();\\r\\n                        expirationDateCalendar.setTime(nowDate);\\r\\n                        expirationDateCalendar.add(Calendar.HOUR_OF_DAY, 12);\\r\\n                        String ws_expirationDate = DateUtils.formatDateWithPattern(expirationDateCalendar.getTime(), DATE_PATTERN);\\r\\n\\r\\n                        String ws_originalDate = DateUtils.formatDateWithPattern(nowDate, DATE_PATTERN);\\r\\n\\r\\n\\r\\n                        String ws_rcpId = \\\"-2\\\";\\r\\n\\r\\n                        String ws_template = \\\"\\\";\\r\\n                        if (isDateAtEndContract_90) {\\r\\n                            ws_template = \\\"FINTR_OPENCELL_A3M\\\";\\r\\n                        }\\r\\n                        if (isDateAtEndContract_30) {\\r\\n                            ws_template = \\\"FINTR_OPENCELL_A1M\\\";\\r\\n                        }\\r\\n                        if (isDateAtEndContract_00) {\\r\\n                            ws_template = \\\"RENOU_OPENCELL_CNF\\\";\\r\\n                        }\\r\\n\\r\\n                        String ws_enseigne = \\\"\\\";\\r\\n                        boolean enseigneTest = false;\\r\\n                        Seller seller = subscription.getSeller();\\r\\n                        Seller seller_N_1 = null;\\r\\n                        Seller seller_N_2 = null;\\r\\n                        if (seller != null) {\\r\\n                            seller_N_1 = seller.getSeller();\\r\\n                            if (seller_N_1 != null) {\\r\\n                                seller_N_2 = seller_N_1.getSeller();\\r\\n                                if (seller_N_2 != null) {\\r\\n                                    if (seller_N_2.getCode() != null) {\\r\\n                                        enseigneTest = true;\\r\\n                                    }\\r\\n                                }\\r\\n                            }\\r\\n                        }\\r\\n                        if (enseigneTest) {\\r\\n                            ws_enseigne = seller_N_2.getCode();\\r\\n                        } else {\\r\\n                            log.error(\\\"NeolaneCustomerLifeEndContractScript : enseigne is undefined / subscription code = \\\" + subscription.getCode());\\r\\n                            continue;\\r\\n                        }\\r\\n\\r\\n                        boolean nameOk = false;\\r\\n                        Customer customer = null;\\r\\n                        Name name = null;\\r\\n                        Title title = null;\\r\\n                        if (customerAccount != null) {\\r\\n                            customer = customerAccount.getCustomer();\\r\\n                            if (customer != null) {\\r\\n                                name = customer.getName();\\r\\n                                if (name != null) {\\r\\n                                    nameOk = true;\\r\\n                                }\\r\\n                            }\\r\\n                        }\\r\\n\\r\\n                        if (nameOk == false) {\\r\\n                            log.error(\\\"NeolaneCustomerLifeEndContractScript : problem with name / subscription code = \\\" + subscription.getCode());\\r\\n                            continue;\\r\\n                        }\\r\\n                        title = name.getTitle();\\r\\n                        String ws_gender = \\\"\\\";\\r\\n                        if (title != null && title.getCode() != null) {\\r\\n                            ws_gender = title.getCode();\\r\\n                        }\\r\\n\\r\\n                        String ws_firstName = (name.getFirstName() == null) ? \\\"\\\" : name.getFirstName();\\r\\n                        String ws_lastName = (name.getLastName() == null) ? \\\"\\\" : name.getLastName();\\r\\n\\r\\n                        String ws_email = email;\\r\\n\\r\\n                        String ws_contractNumber = subscription.getCode();\\r\\n\\r\\n                        OfferTemplate offer = subscription.getOffer();\\r\\n                        if (offer == null) {\\r\\n                            log.error(\\\"NeolaneCustomerLifeEndContractScript : offer is null / subscription code = \\\" + subscription.getCode());\\r\\n                            continue;\\r\\n                        }\\r\\n                        String ws_offerLabel = (offer.getName() == null) ? \\\"\\\" : offer.getName();\\r\\n\\r\\n\\r\\n                        String ws_contractStatus = \\\"\\\";\\r\\n                        if (subscription.getStatus() == null) {\\r\\n                            log.error(\\\"NeolaneCustomerLifeEndContractScript : subscription.status is null / subscription code = \\\" + subscription.getCode());\\r\\n                            continue;\\r\\n                        }\\r\\n\\r\\n                        switch (subscription.getStatus()) {\\r\\n                        case CREATED:\\r\\n                            ws_contractStatus = SUBSCRIPTION_CREATED;\\r\\n                            break;\\r\\n                        case ACTIVE:\\r\\n                            ws_contractStatus = SUBSCRIPTION_ACTIVE;\\r\\n                            break;\\r\\n                        case CANCELED:\\r\\n                            ws_contractStatus = SUBSCRIPTION_CANCELED;\\r\\n                            break;\\r\\n                        case RESILIATED:\\r\\n                            ws_contractStatus = SUBSCRIPTION_RESILIATED;\\r\\n                            break;\\r\\n                        case CLOSED:\\r\\n                            ws_contractStatus = SUBSCRIPTION_CLOSED;\\r\\n                            break;\\r\\n                        case SUSPENDED:\\r\\n                            ws_contractStatus = SUBSCRIPTION_SUSPENDED;\\r\\n                            break;\\r\\n                        default:\\r\\n                            ws_contractStatus = \\\"\\\";\\r\\n                        }\\r\\n\\r\\n                        String ws_cardNumber = \\\"\\\";\\r\\n                        if (\\\"SERENITE\\\".equals(offerType)) {\\r\\n                            ws_cardNumber = licence;\\r\\n                        } else {\\r\\n                            if (StringUtils.isBlank(cfiService.getInheritedCFValue(subscription, \\\"CF_SU_FD_CARD_NUMBER\\\"))) {\\r\\n                                ws_cardNumber = \\\"\\\";\\r\\n                            } else {\\r\\n                                ws_cardNumber = (String) cfiService.getInheritedCFValue(subscription, \\\"CF_SU_FD_CARD_NUMBER\\\");\\r\\n                            }\\r\\n                        }\\r\\n\\r\\n                        String ws_serenityUrl = \\\"\\\";\\r\\n                        String ws_adhNumber = \\\"\\\";\\r\\n\\r\\n                        final String selfCareUrl = (String) this.fetchCFConfigValue(appProvider, CF_FD_URL_SELFCARE_NCLS, true);\\r\\n                        String ws_urlSelfcare = \\\"\\\";\\r\\n                        if (!StringUtils.isBlank(selfCareUrl)) {\\r\\n                            ws_urlSelfcare = selfCareUrl;\\r\\n                        }\\r\\n\\r\\n                        String ws_engagmentEndDate = DateUtils.formatDateWithPattern(subscription.getEndAgreementDate(), DATE_PATTERN_BODY);\\r\\n\\r\\n                        String ws_tryBuyEndDate = \\\"\\\";\\r\\n\\r\\n                        String ws_subAmount = \\\"0\\\";\\r\\n                        if (cfiService.getInheritedCFValue(subscription.getOffer(), \\\"CF_OF_FD_PRICE\\\") != null) {\\r\\n                            ws_subAmount = String.valueOf(cfiService.getInheritedCFValue(subscription.getOffer(), \\\"CF_OF_FD_PRICE\\\"));\\r\\n                        }\\r\\n\\r\\n                        String ws_cbValidityDate = \\\"\\\";\\r\\n\\r\\n                        String ws_paymentMode = \\\"\\\";\\r\\n                        PaymentMethod preferredPaymentMethod = customerAccount.getPreferredPaymentMethod();\\r\\n                        if (preferredPaymentMethod != null) {\\r\\n                            PaymentMethodEnum paymentType = preferredPaymentMethod.getPaymentType();\\r\\n                            if (paymentType != null) {\\r\\n                                if ((PaymentMethodEnum.DIRECTDEBIT == paymentType) || (PaymentMethodEnum.WIRETRANSFER == paymentType)) {\\r\\n                                    ws_paymentMode = \\\"SEPA\\\";\\r\\n                                } else if (PaymentMethodEnum.CARD == paymentType) {\\r\\n                                    ws_paymentMode = \\\"CB\\\";\\r\\n                                }\\r\\n                            }\\r\\n                        }\\r\\n\\r\\n                        String ws_rejectDate = \\\"\\\";\\r\\n                        String ws_rejectedInvoiceNb = \\\"\\\";\\r\\n                        String ws_rejectedAmountTTC = \\\"\\\";\\r\\n                        String ws_reason = \\\"\\\";\\r\\n                        String ws_amountDrawn = \\\"\\\";\\r\\n                        String ws_withdrawalDate = \\\"\\\";\\r\\n\\r\\n                        GenerateInvoiceRequestDto generateInvoiceRequestDto = new GenerateInvoiceRequestDto();\\r\\n\\r\\n                        generateInvoiceRequestDto.setTargetType(\\\"BillingAccount\\\");\\r\\n                        generateInvoiceRequestDto.setTargetCode(billingAccount.getCode());\\r\\n                        generateInvoiceRequestDto.setInvoicingDate(new Date());\\r\\n                        generateInvoiceRequestDto.setLastTransactionDate(DateUtils.addMonthsToDate(new Date(), 1));\\r\\n                        generateInvoiceRequestDto.setGenerateXML(false);\\r\\n                        generateInvoiceRequestDto.setGeneratePDF(false);\\r\\n                        generateInvoiceRequestDto.setGenerateAO(false);\\r\\n                        generateInvoiceRequestDto.setIgnoreInvoicingThreshold(true);\\r\\n\\r\\n                        BigDecimal totalDiscount = new BigDecimal(\\\"0\\\");\\r\\n                        try {\\r\\n\\r\\n                            List<Invoice> listInvoice = invoiceService.generateInvoice(billingAccount, generateInvoiceRequestDto, null, true);\\r\\n\\r\\n                            if (listInvoice != null) {\\r\\n\\r\\n                                for (int i = 0; i < listInvoice.size(); i++) {\\r\\n                                    Invoice invoice = (Invoice) (listInvoice.get(i));\\r\\n\\r\\n                                    List<SubCategoryInvoiceAgregate> discountAgregates = invoice.getDiscountAgregates();\\r\\n                                    if (discountAgregates != null) {\\r\\n                                        for (int j = 0; j < discountAgregates.size(); j++) {\\r\\n                                            SubCategoryInvoiceAgregate subCategoryInvoiceAgregate = discountAgregates.get(j);\\r\\n                                            totalDiscount.add(subCategoryInvoiceAgregate.getAmountWithoutTax());\\r\\n                                        }\\r\\n                                    }\\r\\n                                }\\r\\n                            }\\r\\n\\r\\n                            if (listInvoice != null) {\\r\\n                                for (Invoice invoice : listInvoice) {\\r\\n                                    invoiceService.cancelInvoice(invoice);\\r\\n                                    invoiceService.commit();\\r\\n                                }\\r\\n                            }\\r\\n\\r\\n                        } catch (Exception e) {\\r\\n                            log.error(\\\"In NeolaneCustomerLifeEndContractScript = \\\" + e);\\r\\n                        }\\r\\n\\r\\n                        if (!\\\"0\\\".equals(ws_subAmount)) {\\r\\n                            BigDecimal ws_subAmountValue = new BigDecimal(ws_subAmount);\\r\\n                            ws_subAmountValue.add(totalDiscount);\\r\\n                            ws_amountDrawn = (ws_subAmountValue.setScale(2, RoundingMode.DOWN)).toString();\\r\\n                            Date withdrawalDate = billingAccount.getNextInvoiceDate();\\r\\n                            ws_withdrawalDate = DateUtils.formatDateWithPattern(withdrawalDate, DATE_PATTERN_BODY);\\r\\n                        }\\r\\n\\r\\n                        String ws_oneTimeCBPaymentDate = \\\"\\\";\\r\\n                        String ws_oneTimePaymentAmount = \\\"\\\";\\r\\n                        String ws_refundDate = \\\"\\\";\\r\\n                        String ws_refundAmount = \\\"\\\";\\r\\n                        String ws_discountEntryDate = \\\"\\\";\\r\\n                        String ws_discountAmount = \\\"\\\";\\r\\n                        String ws_transacAutorisationNb = \\\"\\\";\\r\\n                        String ws_rum = \\\"\\\";\\r\\n                        String ws_ics = \\\"\\\";\\r\\n                        String ws_legalEntityName = \\\"\\\";\\r\\n                        String ws_activationDate = \\\"\\\";\\r\\n                        String ws_rterminationDate = \\\"\\\";\\r\\n                        String ws_terminationReason = \\\"\\\";\\r\\n                        String ws_trActivationDate = \\\"\\\";\\r\\n\\r\\n                        if (isDateAtEndContract_90 || isDateAtEndContract_30 ) {\\r\\n                            ws_trActivationDate = DateUtils.formatDateWithPattern(subscriptionRenewal.getAutoRenewDate(), DATE_PATTERN_BODY);\\r\\n                        }\\r\\n                        String ws_trDeactivationDate = \\\"\\\";\\r\\n\\r\\n                        String soapEnvBody =\\r\\n\\r\\n                                \\\"<urn:Submit><urn:sessiontoken></urn:sessiontoken><urn:elemCtx><ctx \\\" + \\\" address=\\\\\\\"\\\" + ws_address + \\\"\\\\\\\"\\\" + \\\" culture=\\\\\\\"\\\" + ws_culture + \\\"\\\\\\\"\\\" + \\\" sendByMail=\\\\\\\"\\\" + ws_sendByMail + \\\"\\\\\\\"\\\" + \\\" sendBySMS=\\\\\\\"\\\" + ws_sendBySMS + \\\"\\\\\\\"\\\" + \\\" cellphone=\\\\\\\"\\\" + ws_cellphone + \\\"\\\\\\\"\\\"\\r\\n                                        + \\\" expirationDate=\\\\\\\"\\\" + ws_expirationDate + \\\"\\\\\\\"\\\" + \\\" originalDate=\\\\\\\"\\\" + ws_originalDate + \\\"\\\\\\\"\\\" + \\\" rcpId=\\\\\\\"\\\" + ws_rcpId + \\\"\\\\\\\"\\\" + \\\" template=\\\\\\\"\\\" + ws_template + \\\"\\\\\\\"\\\"\\r\\n                                        + \\\" xmlns=\\\\\\\"\\\\\\\">\\\" + \\\"<CUSTOMER> \\\" + \\\"<Enseigne>\\\" + ws_enseigne + \\\"</Enseigne>\\\" + \\\"<Gender>\\\" + ws_gender + \\\"</Gender>\\\" + \\\"<FirstName>\\\" + ws_firstName + \\\"</FirstName>\\\" + \\\"<LastName>\\\" + ws_lastName + \\\"</LastName>\\\" + \\\"<Email>\\\" + ws_email\\r\\n                                        + \\\"</Email>\\\" + \\\"<SendBySMS>\\\" + ws_sendBySMS + \\\"</SendBySMS>\\\" + \\\"<sendByMail>\\\" + ws_sendByMail + \\\"</sendByMail>\\\" + \\\"<ContractNumber>\\\" + ws_contractNumber + \\\"</ContractNumber>\\\"\\r\\n                                        + \\\"<offerLabel>\\\" + ws_offerLabel + \\\"</offerLabel>\\\" + \\\"<ContractStatus>\\\" + ws_contractStatus + \\\"</ContractStatus>\\\" + \\\"<CardNumber>\\\" + ws_cardNumber + \\\"</CardNumber>\\\" + \\\"<AdhNumber>\\\" + ws_adhNumber + \\\"</AdhNumber>\\\" + \\\"<SelfCareUrl>\\\"\\r\\n                                        + ws_urlSelfcare + \\\"</SelfCareUrl>\\\" + \\\"<SerenityUrl>\\\" + ws_serenityUrl + \\\"</SerenityUrl>\\\" + \\\"<EngagmentEndDate>\\\" + ws_engagmentEndDate + \\\"</EngagmentEndDate>\\\" + \\\"<TryBuyEndDate>\\\"\\r\\n                                        + ws_tryBuyEndDate + \\\"</TryBuyEndDate>\\\" + \\\"<SubAmount>\\\" + ws_subAmount + \\\"</SubAmount>\\\" + \\\"</CUSTOMER> \\\" + \\\"<INVOICE> \\\" + \\\"<CBValidityDate>\\\" + ws_cbValidityDate + \\\"</CBValidityDate>\\\" + \\\"<PaymentMode>\\\" + ws_paymentMode\\r\\n                                        + \\\"</PaymentMode>\\\" + \\\"<RejectDate>\\\" + ws_rejectDate + \\\"</RejectDate>\\\" + \\\"<RejectedInvoiceNb>\\\" + ws_rejectedInvoiceNb + \\\"</RejectedInvoiceNb>\\\" + \\\"<RejectedAmountTTC>\\\" + ws_rejectedAmountTTC\\r\\n                                        + \\\"</RejectedAmountTTC>\\\" + \\\"<Reason>\\\" + ws_reason + \\\"</Reason>\\\" + \\\"<AmountDrawn>\\\" + ws_amountDrawn + \\\"</AmountDrawn>\\\" + \\\"<WithdrawalDate>\\\" + ws_withdrawalDate + \\\"</WithdrawalDate>\\\"\\r\\n                                        + \\\"<OneTimeCBPaymentDate>\\\" + ws_oneTimeCBPaymentDate + \\\"</OneTimeCBPaymentDate>\\\" + \\\"<OneTimePaymentAmount>\\\" + ws_oneTimePaymentAmount + \\\"</OneTimePaymentAmount>\\\" + \\\"<RefundDate>\\\" + ws_refundDate + \\\"</RefundDate>\\\"\\r\\n                                        + \\\"<RefundAmount>\\\" + ws_refundAmount + \\\"</RefundAmount>\\\" + \\\"<DiscountEntryDate>\\\" + ws_discountEntryDate + \\\"</DiscountEntryDate>\\\" + \\\"<DiscountAmount>\\\" + ws_discountAmount + \\\"</DiscountAmount>\\\"\\r\\n                                        + \\\"<TransacAutorisationNb>\\\" + ws_transacAutorisationNb + \\\"</TransacAutorisationNb>\\\" + \\\"<Rum>\\\" + ws_rum + \\\"</Rum>\\\" + \\\"<Ics>\\\" + ws_ics + \\\"</Ics>\\\" + \\\"<LegalEntityName>\\\" + ws_legalEntityName\\r\\n                                        + \\\"</LegalEntityName>\\\" + \\\"</INVOICE>\\\" + \\\"<TERMINATION>\\\" + \\\"<ActivationDate>\\\" + ws_activationDate + \\\"</ActivationDate>\\\" + \\\"<TerminationDate>\\\" + ws_rterminationDate + \\\"</TerminationDate>\\\" + \\\"<TerminationReason>\\\"\\r\\n                                        + ws_terminationReason + \\\"</TerminationReason>\\\" + \\\"</TERMINATION>\\\" + \\\"<TACITRENEWAL>\\\" + \\\"<TrActivationDate>\\\" + ws_trActivationDate + \\\"</TrActivationDate>\\\" + \\\"<TrDeactivationDate>\\\" + ws_trDeactivationDate\\r\\n                                        + \\\"</TrDeactivationDate>\\\" + \\\"</TACITRENEWAL>\\\" + \\\"</ctx></urn:elemCtx></urn:Submit>\\\";\\r\\n\\r\\n                        String response = callWebService(soapEnvBody);\\r\\n\\r\\n                        log.info(\\\"response = \\\" + response);\\r\\n                        log.info(\\\"soapEnvBody = \\\" + soapEnvBody);\\r\\n                    }\\r\\n                }\\r\\n            }\\r\\n        }\\r\\n    }\\r\\n\\r\\n}\",\n    \"executionRoles\": [],\n    \"sourcingRoles\": []\n}"
						},
						"url": {
							"raw": "{{opencell.url}}/scriptInstance/createOrUpdate",
							"host": [
								"{{opencell.url}}"
							],
							"path": [
								"scriptInstance",
								"createOrUpdate"
							]
						}
					},
					"response": []
				}
			]
		},
		{
			"name": "#538 - CC - Création de permissions",
			"item": [
				{
					"name": "Admin",
					"request": {
					    "auth": {
							"type": "basic",
							"basic": [
								{
									"key": "password",
									"value": "opencell.admin",
									"type": "string"
								},
								{
									"key": "username",
									"value": "opencell.admin",
									"type": "string"
								},
								{
									"key": "saveHelperData",
									"value": true,
									"type": "boolean"
								},
								{
									"key": "showPassword",
									"value": false,
									"type": "boolean"
								}
							]
						},
						"method": "POST",
						"header": [
							{
								"key": "Content-Type",
								"name": "Content-Type",
								"value": "application/json",
								"type": "text"
							},
							{
								"key": "Proxy-Authorization",
								"value": "{{proxy.auth}}",
								"type": "text"
							}
						],
						"body": {
							"mode": "raw",
							"raw": "{\r\n  \"name\" : \"ADMIN\",\r\n  \"description\" : \"Admin\",\r\n  \"permission\" : [ \r\n  \t{ \"permission\" : \"cc-home\", \"name\" : \"CC - bouton du menu “Accueil”\" },\r\n  \t{ \"permission\" : \"cc-summary-open-account-operation-tile\", \"name\" : \"CC - bouton de la tuile “Solde du compte”\" },\r\n  \t{ \"permission\" : \"cc-summary-open-client-details-tile\", \"name\" : \"CC - bouton de la tuile “Coordonees client”\" },\r\n  \t{ \"permission\" : \"cc-summary-open-invoice-tile\", \"name\" : \"CC - bouton de la tuile “Factures”\" },\r\n  \t{ \"permission\" : \"cc-summary-open-payment-tile\", \"name\" : \"CC - bouton de la tuile “Moyen de paiement”\" },\r\n  \t{ \"permission\" : \"cc-summary-open-promotions-discounts-tile\", \"name\" : \"CC - bouton de la tuile “Promotions & Remises”\" },\r\n  \t{ \"permission\" : \"cc-summary-open-subscription-tile\", \"name\" : \"CC - bouton de la tuile “Etat de la souscription”\" },\r\n\t\r\n  \t{ \"permission\" : \"cc-subscriptions-menu\", \"name\" : \"CC - bouton du menu “Souscriptions”\" },\r\n  \t{ \"permission\" : \"cc-subscriptions-view\", \"name\" : \"CC - acces a une souscription par la liste\" },\r\n  \t{ \"permission\" : \"cc-subscriptions-view-suspend\", \"name\" : \"CC - suspendre souscription\" },\r\n  \t{ \"permission\" : \"cc-subscriptions-view-reactivate\", \"name\" : \"CC - reactiver souscription\" },\r\n  \t{ \"permission\" : \"cc-subscriptions-cancel-termination\", \"name\" : \"CC - annuler resiliation\" },\r\n  \t{ \"permission\" : \"cc-subscriptions-view-termination\", \"name\" : \"CC - resilier\" },\r\n  \t{ \"permission\" : \"cc-subscriptions-view-modify-termination\", \"name\" : \"CC - modifier la resiliation\" },\r\n  \t{ \"permission\" : \"cc-subscriptions-service-suspend\", \"name\" : \"CC - suspendre service de la souscription\" },\r\n  \t{ \"permission\" : \"cc-subscriptions-service-reactivate\", \"name\" : \"CC - reactiver service de la souscription\" },\r\n  \t{ \"permission\" : \"cc-subscriptions-service-resiliate\", \"name\" : \"CC - resilier service de la souscription\" },\r\n\t\r\n  \t{ \"permission\" : \"cc-one-shot-charge-add\", \"name\" : \"CC - ajouter remise ponctuelle\" },\r\n  \t{ \"permission\" : \"cc-one-shot-charge-delete\", \"name\" : \"CC - supprimer remise ponctuelle\" },\r\n  \t{ \"permission\" : \"cc-one-shot-charge-amount-500\", \"name\" : \"CC - limite de remise ponctuelle de 500 euros\" },\r\n\t\r\n  \t{ \"permission\" : \"cc-contact-read\", \"name\" : \"CC - informations client\" },\r\n  \t{ \"permission\" : \"cc-contact-update\", \"name\" : \"CC - modifier les informations client\" },\r\n  \t{ \"permission\" : \"cc-contact-address-read\", \"name\" : \"CC - adresse du client\" },\r\n  \t{ \"permission\" : \"cc-contact-address-update\", \"name\" : \"CC - modifier l’adresse du client\" },\r\n\t\r\n  \t{ \"permission\" : \"cc-payments-menu\", \"name\" : \"CC - bouton du menu “Paiements”\" },\r\n  \t{ \"permission\" : \"cc-payment-method-add\", \"name\" : \"CC - ajouter un nouveau moyen de paiement\" },\r\n  \t{ \"permission\" : \"cc-payment-method-update\", \"name\" : \"CC - mettre ajour le moyen de paiement\" },\r\n  \t{ \"permission\" : \"cc-payment-method-delete\", \"name\" : \"CC - supprimer un moyen de paiement\" },\r\n  \t{ \"permission\" : \"cc-payment-method-check\", \"name\" : \"CC - nouveau moyen de paiement cheque\" },\r\n\r\n  \t{ \"permission\" : \"cc-users-menu\", \"name\" : \"CC - bouton du menu “Utilisateurs”\" },\r\n  \t{ \"permission\" : \"cc-users-add\", \"name\" : \"CC - ajouter un utilisateur\" },\r\n  \t{ \"permission\" : \"cc-users-view\", \"name\" : \"CC - detail d’un utlisateur\" },\r\n  \t{ \"permission\" : \"cc-users-update\", \"name\" : \"CC - modifier utilisateur\" }\r\n\r\n  \t]\r\n  \t\r\n}"
						},
						"url": {
							"raw": "{{opencell.url}}/role/createOrUpdate",
							"host": [
								"{{opencell.url}}"
							],
							"path": [
								"role",
								"createOrUpdate"
							]
						}
					},
					"response": []
				},
				{
					"name": "Vendeur hotesse",
					"request": {
						"auth": {
							"type": "basic",
							"basic": [
								{
									"key": "password",
									"value": "opencell.admin",
									"type": "string"
								},
								{
									"key": "username",
									"value": "opencell.admin",
									"type": "string"
								},
								{
									"key": "saveHelperData",
									"value": true,
									"type": "boolean"
								},
								{
									"key": "showPassword",
									"value": false,
									"type": "boolean"
								}
							]
						},
						"method": "POST",
						"header": [
							{
								"key": "Content-Type",
								"name": "Content-Type",
								"value": "application/json",
								"type": "text"
							},
							{
								"key": "Proxy-Authorization",
								"value": "{{proxy.auth}}",
								"type": "text"
							}
						],
						"body": {
							"mode": "raw",
							"raw": "{\r\n  \"name\" : \"VENDEUR_HOTESSE\",\r\n  \"description\" : \"Vendeur hotesse\",\r\n  \"permission\" : [ \r\n  \t{ \"permission\" : \"cc-home\", \"name\" : \"CC - bouton du menu “Accueil”\" },\r\n  \t{ \"permission\" : \"cc-summary-open-client-details-tile\", \"name\" : \"CC - bouton de la tuile “Coordonees client”\" },\r\n  \t{ \"permission\" : \"cc-summary-open-subscription-tile\", \"name\" : \"CC - bouton de la tuile “Etat de la souscription”\" },\r\n  \t{ \"permission\" : \"cc-subscriptions-view-termination\", \"name\" : \"CC - resilier\" },\r\n  \t{ \"permission\" : \"cc-contact-read\", \"name\" : \"CC - informations client\" },\r\n  \t{ \"permission\" : \"cc-contact-address-read\", \"name\" : \"CC - adresse du client\" }\r\n \t]\r\n  \t\r\n}"
						},
						"url": {
							"raw": "{{opencell.url}}/role/createOrUpdate",
							"host": [
								"{{opencell.url}}"
							],
							"path": [
								"role",
								"createOrUpdate"
							]
						}
					},
					"response": []
				},
				{
					"name": "Coordi AC/AT",
					"request": {
						"auth": {
							"type": "basic",
							"basic": [
								{
									"key": "username",
									"value": "opencell.admin",
									"type": "string"
								},
								{
									"key": "password",
									"value": "opencell.admin",
									"type": "string"
								}
							]
						},
						"method": "POST",
						"header": [
							{
								"key": "Content-Type",
								"name": "Content-Type",
								"value": "application/json",
								"type": "text"
							},
							{
								"key": "Proxy-Authorization",
								"value": "{{proxy.auth}}",
								"type": "text"
							}
						],
						"body": {
							"mode": "raw",
							"raw": "{\r\n  \"name\" : \"COORDI_AC/AT\",\r\n  \"description\" : \"Coordi AC/AT\",\r\n  \"permission\" : [ \r\n  \t{ \"permission\" : \"cc-home\", \"name\" : \"CC - bouton du menu “Accueil”\" },\r\n  \t{ \"permission\" : \"cc-summary-open-account-operation-tile\", \"name\" : \"CC - bouton de la tuile “Solde du compte”\" },\r\n  \t{ \"permission\" : \"cc-summary-open-client-details-tile\", \"name\" : \"CC - bouton de la tuile “Coordonees client”\" },\r\n  \t{ \"permission\" : \"cc-summary-open-invoice-tile\", \"name\" : \"CC - bouton de la tuile “Factures”\" },\r\n  \t{ \"permission\" : \"cc-summary-open-payment-tile\", \"name\" : \"CC - bouton de la tuile “Moyen de paiement”\" },\r\n  \t{ \"permission\" : \"cc-summary-open-promotions-discounts-tile\", \"name\" : \"CC - bouton de la tuile “Promotions & Remises”\" },\r\n  \t{ \"permission\" : \"cc-summary-open-subscription-tile\", \"name\" : \"CC - bouton de la tuile “Etat de la souscription”\" },\r\n\t\r\n  \t{ \"permission\" : \"cc-subscriptions-menu\", \"name\" : \"CC - bouton du menu “Souscriptions”\" },\r\n  \t{ \"permission\" : \"cc-subscriptions-view\", \"name\" : \"CC - acces a une souscription par la liste\" },\r\n  \t{ \"permission\" : \"cc-subscriptions-view-suspend\", \"name\" : \"CC - suspendre souscription\" },\r\n  \t{ \"permission\" : \"cc-subscriptions-view-reactivate\", \"name\" : \"CC - reactiver souscription\" },\r\n  \t{ \"permission\" : \"cc-subscriptions-cancel-termination\", \"name\" : \"CC - annuler resiliation\" },\r\n  \t{ \"permission\" : \"cc-subscriptions-view-termination\", \"name\" : \"CC - resilier\" },\r\n  \t{ \"permission\" : \"cc-subscriptions-view-modify-termination\", \"name\" : \"CC - modifier la resiliation\" },\r\n  \t{ \"permission\" : \"cc-subscriptions-service-suspend\", \"name\" : \"CC - suspendre service de la souscription\" },\r\n  \t{ \"permission\" : \"cc-subscriptions-service-reactivate\", \"name\" : \"CC - reactiver service de la souscription\" },\r\n  \t{ \"permission\" : \"cc-subscriptions-service-resiliate\", \"name\" : \"CC - resilier service de la souscription\" },\r\n\t\r\n  \t{ \"permission\" : \"cc-one-shot-charge-add\", \"name\" : \"CC - ajouter remise ponctuelle\" },\r\n  \t{ \"permission\" : \"cc-one-shot-charge-delete\", \"name\" : \"CC - supprimer remise ponctuelle\" },\r\n  \t{ \"permission\" : \"cc-one-shot-charge-amount-500\", \"name\" : \"CC - limite de remise ponctuelle de 500 euros\" },\r\n\t\r\n  \t{ \"permission\" : \"cc-contact-read\", \"name\" : \"CC - informations client\" },\r\n  \t{ \"permission\" : \"cc-contact-update\", \"name\" : \"CC - modifier les informations client\" },\r\n  \t{ \"permission\" : \"cc-contact-address-read\", \"name\" : \"CC - adresse du client\" },\r\n  \t{ \"permission\" : \"cc-contact-address-update\", \"name\" : \"CC - modifier l’adresse du client\" },\r\n\t\r\n  \t{ \"permission\" : \"cc-payments-menu\", \"name\" : \"CC - bouton du menu “Paiements”\" },\r\n  \t{ \"permission\" : \"cc-payment-method-add\", \"name\" : \"CC - ajouter un nouveau moyen de paiement\" },\r\n  \t{ \"permission\" : \"cc-payment-method-update\", \"name\" : \"CC - mettre ajour le moyen de paiement\" },\r\n  \t{ \"permission\" : \"cc-payment-method-delete\", \"name\" : \"CC - supprimer un moyen de paiement\" },\r\n  \t{ \"permission\" : \"cc-payment-method-check\", \"name\" : \"CC - nouveau moyen de paiement cheque\" },\r\n  \t\r\n  \t{ \"permission\" : \"cc-users-menu\", \"name\" : \"CC - bouton du menu “Utilisateurs”\" },\r\n  \t{ \"permission\" : \"cc-users-add\", \"name\" : \"CC - ajouter un utilisateur\" },\r\n  \t{ \"permission\" : \"cc-users-view\", \"name\" : \"CC - detail d’un utlisateur\" },\r\n  \t{ \"permission\" : \"cc-users-update\", \"name\" : \"CC - modifier utilisateur\" }\r\n\r\n  \t]\r\n}"
						},
						"url": {
							"raw": "{{opencell.url}}/role/createOrUpdate",
							"host": [
								"{{opencell.url}}"
							],
							"path": [
								"role",
								"createOrUpdate"
							]
						}
					},
					"response": []
				},
				{
					"name": "Front AC/AT",
					"request": {
						"auth": {
							"type": "basic",
							"basic": [
								{
									"key": "password",
									"value": "opencell.admin",
									"type": "string"
								},
								{
									"key": "username",
									"value": "opencell.admin",
									"type": "string"
								}
							]
						},
						"method": "POST",
						"header": [
							{
								"key": "Content-Type",
								"name": "Content-Type",
								"value": "application/json",
								"type": "text"
							},
							{
								"key": "Proxy-Authorization",
								"value": "{{proxy.auth}}",
								"type": "text"
							}
						],
						"body": {
							"mode": "raw",
							"raw": "{\r\n  \"name\" : \"FRONT_AC/AT\",\r\n  \"description\" : \"Front AC/AT\",\r\n  \"permission\" : [ \r\n  \t{ \"permission\" : \"cc-home\", \"name\" : \"CC - bouton du menu “Accueil”\" },\r\n  \t{ \"permission\" : \"cc-summary-open-account-operation-tile\", \"name\" : \"CC - bouton de la tuile “Solde du compte”\" },\r\n  \t{ \"permission\" : \"cc-summary-open-client-details-tile\", \"name\" : \"CC - bouton de la tuile “Coordonees client”\" },\r\n  \t{ \"permission\" : \"cc-summary-open-invoice-tile\", \"name\" : \"CC - bouton de la tuile “Factures”\" },\r\n  \t{ \"permission\" : \"cc-summary-open-payment-tile\", \"name\" : \"CC - bouton de la tuile “Moyen de paiement”\" },\r\n  \t{ \"permission\" : \"cc-summary-open-promotions-discounts-tile\", \"name\" : \"CC - bouton de la tuile “Promotions & Remises”\" },\r\n  \t{ \"permission\" : \"cc-summary-open-subscription-tile\", \"name\" : \"CC - bouton de la tuile “Etat de la souscription”\" },\r\n\t\r\n  \t{ \"permission\" : \"cc-subscriptions-menu\", \"name\" : \"CC - bouton du menu “Souscriptions”\" },\r\n  \t{ \"permission\" : \"cc-subscriptions-view\", \"name\" : \"CC - acces a une souscription par la liste\" },\r\n  \t{ \"permission\" : \"cc-subscriptions-view-suspend\", \"name\" : \"CC - suspendre souscription\" },\r\n  \t{ \"permission\" : \"cc-subscriptions-view-reactivate\", \"name\" : \"CC - reactiver souscription\" },\r\n  \r\n  \t{ \"permission\" : \"cc-one-shot-charge-add\", \"name\" : \"CC - ajouter remise ponctuelle\" },\r\n  \t{ \"permission\" : \"cc-one-shot-charge-delete\", \"name\" : \"CC - supprimer remise ponctuelle\" },\r\n  \t{ \"permission\" : \"cc-one-shot-charge-amount-075\", \"name\" : \"CC - limite de remise ponctuelle de 75 euros\" },\r\n  \r\n  \t{ \"permission\" : \"cc-contact-read\", \"name\" : \"CC - informations client\" },\r\n  \t{ \"permission\" : \"cc-contact-update\", \"name\" : \"CC - modifier les informations client\" },\r\n  \t{ \"permission\" : \"cc-contact-address-read\", \"name\" : \"CC - adresse du client\" },\r\n  \t{ \"permission\" : \"cc-contact-address-update\", \"name\" : \"CC - modifier l’adresse du client\" },\r\n\t\r\n  \t{ \"permission\" : \"cc-payments-menu\", \"name\" : \"CC - bouton du menu “Paiements”\" },\r\n  \t{ \"permission\" : \"cc-payment-method-add\", \"name\" : \"CC - ajouter un nouveau moyen de paiement\" },\r\n  \t{ \"permission\" : \"cc-payment-method-update\", \"name\" : \"CC - mettre ajour le moyen de paiement\" },\r\n  \t{ \"permission\" : \"cc-payment-method-delete\", \"name\" : \"CC - supprimer un moyen de paiement\" },\r\n  \t{ \"permission\" : \"cc-payment-method-check\", \"name\" : \"CC - nouveau moyen de paiement cheque\" },\r\n  \r\n  \t{ \"permission\" : \"cc-users-menu\", \"name\" : \"CC - bouton du menu “Utilisateurs”\" }\r\n  \t]\r\n  \t\r\n  \t\r\n}"
						},
						"url": {
							"raw": "{{opencell.url}}/role/createOrUpdate",
							"host": [
								"{{opencell.url}}"
							],
							"path": [
								"role",
								"createOrUpdate"
							]
						}
					},
					"response": []
				},
				{
					"name": "Agent Back Office AC/AT Presta",
					"event": [
						{
							"listen": "test",
							"script": {
								"id": "33e3eacc-5ee4-4f90-a6fd-d752aee29be8",
								"exec": [
									"var jsonData = JSON.parse(responseBody);",
									"tests[\"is.success\"] = jsonData.status === \"SUCCESS\";"
								],
								"type": "text/javascript"
							}
						}
					],
					"request": {
						"auth": {
							"type": "basic",
							"basic": [
								{
									"key": "username",
									"value": "{{opencell.username}}",
									"type": "string"
								},
								{
									"key": "password",
									"value": "{{opencell.password}}",
									"type": "string"
								},
								{
									"key": "saveHelperData",
									"value": true,
									"type": "boolean"
								},
								{
									"key": "showPassword",
									"value": false,
									"type": "boolean"
								}
							]
						},
						"method": "POST",
						"header": [
							{
								"key": "Proxy-Authorization",
								"value": "{{proxy.auth}}"
							},
							{
								"key": "Content-Type",
								"value": "application/json"
							}
						],
						"body": {
							"mode": "raw",
							"raw": "{\r\n  \"name\" : \"AGENT_BACK_OFFICE_AC/AT_PRESTA\",\r\n  \"description\" : \"Agent Back Office AC/AT Presta\",\r\n \"permission\" : [ \r\n  \t{ \"permission\" : \"cc-home\", \"name\" : \"CC - bouton du menu “Accueil”\" },\r\n  \t{ \"permission\" : \"cc-summary-open-account-operation-tile\", \"name\" : \"CC - bouton de la tuile “Solde du compte”\" },\r\n  \t{ \"permission\" : \"cc-summary-open-client-details-tile\", \"name\" : \"CC - bouton de la tuile “Coordonees client”\" },\r\n  \t{ \"permission\" : \"cc-summary-open-invoice-tile\", \"name\" : \"CC - bouton de la tuile “Factures”\" },\r\n  \t{ \"permission\" : \"cc-summary-open-promotions-discounts-tile\", \"name\" : \"CC - bouton de la tuile “Promotions & Remises”\" },\r\n  \t{ \"permission\" : \"cc-summary-open-subscription-tile\", \"name\" : \"CC - bouton de la tuile “Etat de la souscription”\" },\r\n\t\r\n  \t{ \"permission\" : \"cc-subscriptions-menu\", \"name\" : \"CC - bouton du menu “Souscriptions”\" },\r\n  \t{ \"permission\" : \"cc-subscriptions-view\", \"name\" : \"CC - acces a une souscription par la liste\" },\r\n  \t{ \"permission\" : \"cc-subscriptions-view-suspend\", \"name\" : \"CC - suspendre souscription\" },\r\n  \t{ \"permission\" : \"cc-subscriptions-view-reactivate\", \"name\" : \"CC - reactiver souscription\" },\r\n  \t{ \"permission\" : \"cc-subscriptions-cancel-termination\", \"name\" : \"CC - annuler resiliation\" },\r\n  \t{ \"permission\" : \"cc-subscriptions-view-termination\", \"name\" : \"CC - resilier\" },\r\n  \t{ \"permission\" : \"cc-subscriptions-view-modify-termination\", \"name\" : \"CC - modifier la resiliation\" },\r\n  \t{ \"permission\" : \"cc-subscriptions-service-suspend\", \"name\" : \"CC - suspendre service de la souscription\" },\r\n  \t{ \"permission\" : \"cc-subscriptions-service-reactivate\", \"name\" : \"CC - reactiver service de la souscription\" },\r\n  \t{ \"permission\" : \"cc-subscriptions-service-resiliate\", \"name\" : \"CC - resilier service de la souscription\" },\r\n\t\r\n  \t{ \"permission\" : \"cc-one-shot-charge-add\", \"name\" : \"CC - ajouter remise ponctuelle\" },\r\n  \t{ \"permission\" : \"cc-one-shot-charge-delete\", \"name\" : \"CC - supprimer remise ponctuelle\" },\r\n  \t{ \"permission\" : \"cc-one-shot-charge-amount-100\", \"name\" : \"CC - limite de remise ponctuelle de 100 euros\" },\r\n  \t\r\n  \t{ \"permission\" : \"cc-contact-read\", \"name\" : \"CC - informations client\" },\r\n  \t{ \"permission\" : \"cc-contact-update\", \"name\" : \"CC - modifier les informations client\" },\r\n  \t{ \"permission\" : \"cc-contact-address-read\", \"name\" : \"CC - adresse du client\" },\r\n  \t{ \"permission\" : \"cc-contact-address-update\", \"name\" : \"CC - modifier l’adresse du client\" },\r\n\t\r\n  \t{ \"permission\" : \"cc-payments-menu\", \"name\" : \"CC - bouton du menu “Paiements”\" },\r\n  \t\r\n  \t{ \"permission\" : \"cc-users-menu\", \"name\" : \"CC - bouton du menu “Utilisateurs”\" }\r\n  \t]\r\n  \t\r\n}"
						},
						"url": {
							"raw": "{{opencell.url}}/role/createOrUpdate",
							"host": [
								"{{opencell.url}}"
							],
							"path": [
								"role",
								"createOrUpdate"
							]
						}
					},
					"response": []
				},
				{
					"name": "Front AC/AT Presta",
					"request": {
						"auth": {
							"type": "basic",
							"basic": [
								{
									"key": "password",
									"value": "opencell.admin",
									"type": "string"
								},
								{
									"key": "username",
									"value": "opencell.admin",
									"type": "string"
								}
							]
						},
						"method": "POST",
						"header": [
							{
								"key": "Content-Type",
								"name": "Content-Type",
								"value": "application/json",
								"type": "text"
							},
							{
								"key": "Proxy-Authorization",
								"value": "{{proxy.auth}}",
								"type": "text"
							}
						],
						"body": {
							"mode": "raw",
							"raw": "{\r\n  \"name\" : \"FRONT_AC/AT_PRESTA\",\r\n  \"description\" : \"Front AC/AT Presta\",\r\n  \"permission\" : [ \r\n  \t{ \"permission\" : \"cc-home\", \"name\" : \"CC - bouton du menu “Accueil”\" },\r\n  \t{ \"permission\" : \"cc-summary-open-account-operation-tile\", \"name\" : \"CC - bouton de la tuile “Solde du compte”\" },\r\n  \t{ \"permission\" : \"cc-summary-open-client-details-tile\", \"name\" : \"CC - bouton de la tuile “Coordonees client”\" },\r\n  \t{ \"permission\" : \"cc-summary-open-invoice-tile\", \"name\" : \"CC - bouton de la tuile “Factures”\" },\r\n  \t{ \"permission\" : \"cc-summary-open-promotions-discounts-tile\", \"name\" : \"CC - bouton de la tuile “Promotions & Remises”\" },\r\n  \t{ \"permission\" : \"cc-summary-open-subscription-tile\", \"name\" : \"CC - bouton de la tuile “Etat de la souscription”\" },\r\n\t\r\n  \t{ \"permission\" : \"cc-subscriptions-menu\", \"name\" : \"CC - bouton du menu “Souscriptions”\" },\r\n  \t{ \"permission\" : \"cc-subscriptions-view\", \"name\" : \"CC - acces a une souscription par la liste\" },\r\n  \t{ \"permission\" : \"cc-subscriptions-view-suspend\", \"name\" : \"CC - suspendre souscription\" },\r\n  \t{ \"permission\" : \"cc-subscriptions-view-reactivate\", \"name\" : \"CC - reactiver souscription\" },\r\n  \t\r\n  \t{ \"permission\" : \"cc-one-shot-charge-add\", \"name\" : \"CC - ajouter remise ponctuelle\" },\r\n  \t{ \"permission\" : \"cc-one-shot-charge-delete\", \"name\" : \"CC - supprimer remise ponctuelle\" },\r\n  \t{ \"permission\" : \"cc-one-shot-charge-amount-075\", \"name\" : \"CC - limite de remise ponctuelle de 75 euros\" },\r\n  \t\r\n  \t{ \"permission\" : \"cc-contact-read\", \"name\" : \"CC - informations client\" },\r\n  \t{ \"permission\" : \"cc-contact-update\", \"name\" : \"CC - modifier les informations client\" },\r\n  \t{ \"permission\" : \"cc-contact-address-read\", \"name\" : \"CC - adresse du client\" },\r\n  \t{ \"permission\" : \"cc-contact-address-update\", \"name\" : \"CC - modifier l’adresse du client\" },\r\n\t\r\n  \t{ \"permission\" : \"cc-payments-menu\", \"name\" : \"CC - bouton du menu “Paiements”\" },\r\n  \t\r\n  \t{ \"permission\" : \"cc-users-menu\", \"name\" : \"CC - bouton du menu “Utilisateurs”\" }\r\n  \t]\r\n  \t\r\n}"
						},
						"url": {
							"raw": "{{opencell.url}}/role/createOrUpdate",
							"host": [
								"{{opencell.url}}"
							],
							"path": [
								"role",
								"createOrUpdate"
							]
						}
					},
					"response": []
				},
				{
					"name": "Agent Back Office AC / AT",
					"request": {
						"auth": {
							"type": "basic",
							"basic": [
								{
									"key": "password",
									"value": "opencell.admin",
									"type": "string"
								},
								{
									"key": "username",
									"value": "opencell.admin",
									"type": "string"
								}
							]
						},
						"method": "POST",
						"header": [
							{
								"key": "Content-Type",
								"name": "Content-Type",
								"value": "application/json",
								"type": "text"
							},
							{
								"key": "Proxy-Authorization",
								"value": "{{proxy.auth}}",
								"type": "text"
							}
						],
						"body": {
							"mode": "raw",
							"raw": "{\r\n  \"name\" : \"AGENT_BACK_OFFICE_AC/AT\",\r\n  \"description\" : \"Agent Back Office AC / AT\",\r\n  \"permission\" : [ \r\n  \t{ \"permission\" : \"cc-home\", \"name\" : \"CC - bouton du menu “Accueil”\" },\r\n  \t{ \"permission\" : \"cc-summary-open-account-operation-tile\", \"name\" : \"CC - bouton de la tuile “Solde du compte”\" },\r\n  \t{ \"permission\" : \"cc-summary-open-client-details-tile\", \"name\" : \"CC - bouton de la tuile “Coordonees client”\" },\r\n  \t{ \"permission\" : \"cc-summary-open-invoice-tile\", \"name\" : \"CC - bouton de la tuile “Factures”\" },\r\n  \t{ \"permission\" : \"cc-summary-open-payment-tile\", \"name\" : \"CC - bouton de la tuile “Moyen de paiement”\" },\r\n  \t{ \"permission\" : \"cc-summary-open-promotions-discounts-tile\", \"name\" : \"CC - bouton de la tuile “Promotions & Remises”\" },\r\n  \t{ \"permission\" : \"cc-summary-open-subscription-tile\", \"name\" : \"CC - bouton de la tuile “Etat de la souscription”\" },\r\n\t\r\n  \t{ \"permission\" : \"cc-subscriptions-menu\", \"name\" : \"CC - bouton du menu “Souscriptions”\" },\r\n  \t{ \"permission\" : \"cc-subscriptions-view\", \"name\" : \"CC - acces a une souscription par la liste\" },\r\n  \t{ \"permission\" : \"cc-subscriptions-view-suspend\", \"name\" : \"CC - suspendre souscription\" },\r\n  \t{ \"permission\" : \"cc-subscriptions-view-reactivate\", \"name\" : \"CC - reactiver souscription\" },\r\n  \t{ \"permission\" : \"cc-subscriptions-cancel-termination\", \"name\" : \"CC - annuler resiliation\" },\r\n  \t{ \"permission\" : \"cc-subscriptions-view-termination\", \"name\" : \"CC - resilier\" },\r\n  \t{ \"permission\" : \"cc-subscriptions-view-modify-termination\", \"name\" : \"CC - modifier la resiliation\" },\r\n  \t{ \"permission\" : \"cc-subscriptions-service-suspend\", \"name\" : \"CC - suspendre service de la souscription\" },\r\n  \t{ \"permission\" : \"cc-subscriptions-service-reactivate\", \"name\" : \"CC - reactiver service de la souscription\" },\r\n  \t{ \"permission\" : \"cc-subscriptions-service-resiliate\", \"name\" : \"CC - resilier service de la souscription\" },\r\n\t\r\n  \t{ \"permission\" : \"cc-one-shot-charge-add\", \"name\" : \"CC - ajouter remise ponctuelle\" },\r\n  \t{ \"permission\" : \"cc-one-shot-charge-delete\", \"name\" : \"CC - supprimer remise ponctuelle\" },\r\n  \t{ \"permission\" : \"cc-one-shot-charge-amount-200\", \"name\" : \"CC - limite de remise ponctuelle de 200 euros\" },\r\n  \t\r\n  \t{ \"permission\" : \"cc-contact-read\", \"name\" : \"CC - informations client\" },\r\n  \t{ \"permission\" : \"cc-contact-update\", \"name\" : \"CC - modifier les informations client\" },\r\n  \t{ \"permission\" : \"cc-contact-address-read\", \"name\" : \"CC - adresse du client\" },\r\n  \t{ \"permission\" : \"cc-contact-address-update\", \"name\" : \"CC - modifier l’adresse du client\" },\r\n\t\r\n  \t{ \"permission\" : \"cc-payments-menu\", \"name\" : \"CC - bouton du menu “Paiements”\" },\r\n  \t{ \"permission\" : \"cc-payment-method-add\", \"name\" : \"CC - ajouter un nouveau moyen de paiement\" },\r\n  \t{ \"permission\" : \"cc-payment-method-update\", \"name\" : \"CC - mettre ajour le moyen de paiement\" },\r\n  \t{ \"permission\" : \"cc-payment-method-delete\", \"name\" : \"CC - supprimer un moyen de paiement\" },\r\n  \t{ \"permission\" : \"cc-payment-method-check\", \"name\" : \"CC - nouveau moyen de paiement cheque\" },\r\n  \t\r\n  \t{ \"permission\" : \"cc-users-menu\", \"name\" : \"CC - bouton du menu “Utilisateurs”\" }\r\n  \t]\r\n  \t\r\n}"
						},
						"url": {
							"raw": "{{opencell.url}}/role/createOrUpdate",
							"host": [
								"{{opencell.url}}"
							],
							"path": [
								"role",
								"createOrUpdate"
							]
						}
					},
					"response": []
				}
			]
		},
		{
			"name": "#515 : Sepa Refund & Rejet",
			"item": [
				{
					"name": "Create SageDDRequestBuilderScript",
					"event": [
						{
							"listen": "test",
							"script": {
								"id": "4b01e0c0-6456-46f9-bd00-5f1e76d0495b",
								"exec": [
									"var jsonData = JSON.parse(responseBody);",
									"tests[\"is.success\"] = jsonData.actionStatus.status === \"SUCCESS\";"
								],
								"type": "text/javascript"
							}
						}
					],
					"request": {
						"auth": {
							"type": "basic",
							"basic": [
								{
									"key": "username",
									"value": "{{opencell.username}}",
									"type": "string"
								},
								{
									"key": "password",
									"value": "{{opencell.password}}",
									"type": "string"
								}
							]
						},
						"method": "POST",
						"header": [
							{
								"key": "Content-Type",
								"value": "application/json"
							},
							{
								"key": "Proxy-Authorization",
								"type": "text",
								"value": "{{proxy.auth}}"
							}
						],
						"body": {
							"mode": "raw",
							"raw": "{\n    \"code\": \"org.meveo.service.script.payment.SageDDRequestBuilderScript\",\n    \"description\": \"Sage SDD & SCT BuilderScript\",\n    \"type\": \"JAVA\",\n    \"script\": \"package org.meveo.service.script.payment;\\r\\n\\r\\nimport static org.meveo.commons.utils.StringUtils.getDefaultIfEmpty;\\r\\n\\r\\nimport java.io.BufferedWriter;\\r\\nimport java.io.File;\\r\\nimport java.io.FileOutputStream;\\r\\nimport java.io.IOException;\\r\\nimport java.io.OutputStreamWriter;\\r\\nimport java.math.BigDecimal;\\r\\nimport java.math.RoundingMode;\\r\\nimport java.nio.file.Files;\\r\\nimport java.nio.file.Paths;\\r\\nimport java.util.AbstractMap.SimpleEntry;\\r\\nimport java.util.ArrayList;\\r\\nimport java.util.Collection;\\r\\nimport java.util.Collections;\\r\\nimport java.util.Date;\\r\\nimport java.util.HashMap;\\r\\nimport java.util.List;\\r\\nimport java.util.Map;\\r\\n\\r\\nimport org.apache.commons.collections4.CollectionUtils;\\r\\nimport org.apache.commons.lang3.StringUtils;\\r\\nimport org.meveo.admin.exception.BusinessException;\\r\\nimport org.meveo.admin.sepa.DDRejectFileInfos;\\r\\nimport org.meveo.admin.sepa.jaxb.camt054.AccountNotification2;\\r\\nimport org.meveo.admin.sepa.jaxb.camt054.Document;\\r\\nimport org.meveo.admin.sepa.jaxb.camt054.EntryDetails1;\\r\\nimport org.meveo.admin.sepa.jaxb.camt054.EntryTransaction2;\\r\\nimport org.meveo.admin.sepa.jaxb.camt054.RemittanceInformation5;\\r\\nimport org.meveo.admin.sepa.jaxb.camt054.ReportEntry2;\\r\\nimport org.meveo.admin.sepa.jaxb.camt054.ReturnReason5Choice;\\r\\nimport org.meveo.admin.sepa.jaxb.camt054.ReturnReasonInformation10;\\r\\nimport org.meveo.admin.sepa.jaxb.camt054.TransactionReferences2;\\r\\nimport org.meveo.admin.util.ArConfig;\\r\\nimport org.meveo.commons.utils.FlatContentBuilder;\\r\\nimport org.meveo.commons.utils.JAXBUtils;\\r\\nimport org.meveo.commons.utils.ParamBeanFactory;\\r\\nimport org.meveo.model.ICustomFieldEntity;\\r\\nimport org.meveo.model.admin.Seller;\\r\\nimport org.meveo.model.billing.BankCoordinates;\\r\\nimport org.meveo.model.billing.Subscription;\\r\\nimport org.meveo.model.catalog.Calendar;\\r\\nimport org.meveo.model.crm.Provider;\\r\\nimport org.meveo.model.payments.AccountOperation;\\r\\nimport org.meveo.model.payments.CustomerAccount;\\r\\nimport org.meveo.model.payments.DDPaymentMethod;\\r\\nimport org.meveo.model.payments.DDRequestItem;\\r\\nimport org.meveo.model.payments.DDRequestLOT;\\r\\nimport org.meveo.model.payments.PaymentMethod;\\r\\nimport org.meveo.model.payments.PaymentOrRefundEnum;\\r\\nimport org.meveo.model.shared.DateUtils;\\r\\nimport org.meveo.model.shared.Name;\\r\\nimport org.meveo.model.shared.Title;\\r\\nimport org.meveo.service.billing.impl.SubscriptionService;\\r\\nimport org.meveo.service.catalog.impl.CalendarService;\\r\\nimport org.meveo.service.crm.impl.CustomFieldInstanceService;\\r\\nimport org.meveo.service.crm.impl.ProviderService;\\r\\nimport org.meveo.service.payments.impl.CustomerAccountService;\\r\\nimport org.meveo.service.payments.impl.DDRequestItemService;\\r\\n\\r\\n/**\\r\\n * Sepa Direct Debit And Credit Transfer BuilderScript : A DDRequestBuilderScript Extension , aimed to generate SAGE SEPA File, and process a SEPA rejection file ...\\r\\n * \\r\\n * @author Said Ramli\\r\\n */\\r\\npublic class SageDDRequestBuilderScript extends DDRequestBuilderScript {\\r\\n\\r\\n    private final ProviderService providerService = (ProviderService) getServiceInterface(ProviderService.class.getSimpleName());\\r\\n    private final CustomerAccountService customerAccountService = (CustomerAccountService) getServiceInterface(CustomerAccountService.class.getSimpleName());\\r\\n    private final CustomFieldInstanceService customFieldInstanceService = (CustomFieldInstanceService) getServiceInterface(CustomFieldInstanceService.class.getSimpleName());\\r\\n    private final DDRequestItemService ddRequestItemService = (DDRequestItemService) getServiceInterface(DDRequestItemService.class.getSimpleName());\\r\\n    private final CalendarService calendarService = (CalendarService) getServiceInterface(CalendarService.class.getSimpleName());\\r\\n    private final String CF_SEPA_REJECT_NO_RETRY_CODES = \\\"CF_SEPA_REJECT_NO_RETRY_CODES\\\";\\r\\n    private final String FILE_ENCODING = \\\"ISO-8859-15\\\";\\r\\n\\r\\n    /**\\r\\n     * The key of the DD request Custom Field which should provide the 'DueDate Calendar' code\\r\\n     */\\r\\n    private static final String CF_CAL_DDR_DUEDATE = \\\"CF_CAL_DDR_DUEDATE\\\";\\r\\n\\r\\n    /** code name of AO CF dedied to decide if unpaid invoice should be retried or not */\\r\\n    private static final String CF_RETRY_PAYMENT = \\\"CF_RETRY_PAYMENT\\\";\\r\\n\\r\\n    /** The Constant CHAR_TO_FILL_ZERO. */\\r\\n    private static final char CHAR_TO_FILL_ZERO = '0';\\r\\n\\r\\n    /** The Constant LINE_HEADER_CODE. */\\r\\n    private static final String LINE_HEADER_CODE = \\\"03\\\";\\r\\n\\r\\n    /** The Constant LINE_FOOTER_CODE. */\\r\\n    private static final String LINE_FOOTER_CODE = \\\"08\\\";\\r\\n\\r\\n    /** The Constant SOUS_CODE_REMISE. */\\r\\n    private static final String SOUS_CODE_REMISE = \\\"0\\\";\\r\\n\\r\\n    /** The Constant LINE_OPCODE. */\\r\\n    private static final String LINE_OPCODE = \\\"08\\\";\\r\\n\\r\\n    private static final String REFUND_LINE_OPCODE = \\\"02\\\";\\r\\n\\r\\n    /** The Constant CURRENCY. */\\r\\n    private static final String CURRENCY = \\\"E\\\";\\r\\n\\r\\n    /** The Constant LINE_DETAIL_CODE. */\\r\\n    private static final String LINE_DETAIL_CODE = \\\"06\\\";\\r\\n\\r\\n    /** The Constant LINE_DETAIL2_CODE. */\\r\\n    private static final String LINE_DETAIL2_CODE = \\\"05\\\";\\r\\n\\r\\n    /** The Constant RECOGNITION_SIGN. */\\r\\n    private static final String RECOGNITION_SIGN = \\\"*\\\";\\r\\n\\r\\n    /** The Constant LINE_DETAIL2_SEQ. */\\r\\n    private static final String LINE_DETAIL2_SEQ = \\\"A\\\";\\r\\n\\r\\n    /** The Constant SCHEMA_TYPE_SDD. */\\r\\n    private static final String SCHEMA_TYPE_SDD = \\\"01\\\";\\r\\n\\r\\n    /** The Constant FORMAT_LANGAGE. */\\r\\n    private static final String FORMAT_LANGAGE = \\\"FR\\\";\\r\\n\\r\\n    private static final String ISSUER_BATCH_REF = \\\"\\\";\\r\\n    private static final String ISSUER_INTERNAL_REF = \\\"\\\";\\r\\n\\r\\n    /** The Constant ONE_HUNDRED. */\\r\\n    private static final BigDecimal ONE_HUNDRED = new BigDecimal(\\\"100\\\");\\r\\n\\r\\n    @SuppressWarnings(\\\"unchecked\\\")\\r\\n    public List<AccountOperation> findListAoToPay(Map<String, Object> methodContext) throws BusinessException {\\r\\n        log.debug(\\\" findListAoToPay : [{}]\\\", methodContext);\\r\\n        List<AccountOperation> listAoToPay = (List<AccountOperation>) methodContext.get(DDRequestBuilderScript.DD_REQUEST_LIST_AO);\\r\\n        if (CollectionUtils.isEmpty(listAoToPay)) {\\r\\n            return listAoToPay;\\r\\n        }\\r\\n        log.debug(\\\" findListAoToPay : [{}]\\\", methodContext);\\r\\n\\r\\n        List<AccountOperation> filtredListAoToPay = new ArrayList<>();\\r\\n        for (AccountOperation ao : listAoToPay) {\\r\\n            Subscription subscription = this.getSubscription(ao);\\r\\n            if (subscription != null && !\\\"NO\\\".equals(subscription.getCfValue(CF_RETRY_PAYMENT))) {\\r\\n                filtredListAoToPay.add(ao);\\r\\n            }\\r\\n        }\\r\\n        return filtredListAoToPay;\\r\\n    }\\r\\n\\r\\n    @SuppressWarnings(\\\"unchecked\\\")\\r\\n    private List<String> fetchRsnCodesToDontRetry(String cfKey) {\\r\\n        try {\\r\\n            Provider appProvider = providerService.getProvider();\\r\\n            log.debug(\\\" appProvider found : {} \\\", appProvider);\\r\\n            List<String> reslut = (List<String>) this.fetchCFConfigValue(appProvider, cfKey, false);\\r\\n            log.debug(\\\"fetchRsnCodesToDontRetry : {} \\\", reslut);\\r\\n            return reslut;\\r\\n        } catch (BusinessException e) {\\r\\n            log.error(e.getMessage());\\r\\n            return null;\\r\\n        }\\r\\n    }\\r\\n\\r\\n    @Override\\r\\n    public DDRejectFileInfos processSCTRejectedFile(Map<String, Object> methodContext) throws BusinessException {\\r\\n        \\r\\n        log.debug(\\\" Start processSCTRejectedFile methodContext = {} \\\", methodContext);\\r\\n        DDRejectFileInfos ddRejectFileInfos = new DDRejectFileInfos();\\r\\n        \\r\\n        try {\\r\\n            File sepaRejectedFile = (File) methodContext.get(DDRequestBuilderScript.DD_REJECT_FILE);\\r\\n            if (sepaRejectedFile == null) {\\r\\n                throw new BusinessException(\\\" Sepa CT Rejected File not found !\\\");\\r\\n            }\\r\\n            ddRejectFileInfos.setFileName(sepaRejectedFile.getName());\\r\\n            Document rejectionDoc = (Document) JAXBUtils.unmarshaller(Document.class, sepaRejectedFile);\\r\\n            List<String> listRsnCodesToDontRetry = fetchRsnCodesToDontRetry(CF_SEPA_REJECT_NO_RETRY_CODES);\\r\\n            List<AccountNotification2> listNtfctns = rejectionDoc.getBkToCstmrDbtCdtNtfctn().getNtfctn();\\r\\n            for (AccountNotification2 acctNotification : listNtfctns) {\\r\\n                for (ReportEntry2 entry : acctNotification.getNtry()) {\\r\\n                    for (EntryDetails1 entryDetails1 : entry.getNtryDtls()) {\\r\\n                        for (EntryTransaction2 entryTransaction2 : entryDetails1.getTxDtls()) {\\r\\n                            \\r\\n                            Long ddRequestItemId = null;\\r\\n                            String rsnCode = null;\\r\\n                            RemittanceInformation5 rmtInf = entryTransaction2.getRmtInf();\\r\\n                            \\r\\n                            if (rmtInf != null) { \\r\\n                                List<String> ustrd = rmtInf.getUstrd();\\r\\n                                if (CollectionUtils.isNotEmpty(ustrd)) { // TODO ask for confirmation that there will just one element inside getUstrd\\r\\n                                    ddRequestItemId = this.extractCorrelationId(ustrd.get(0));\\r\\n                                    log.debug(\\\" processSCTRejectedFile > ddRequestItemId : [{}]\\\", ddRequestItemId);\\r\\n                                    \\r\\n                                    if (ddRequestItemId != null) {\\r\\n                                        ReturnReasonInformation10 rtrInf = entryTransaction2.getRtrInf();\\r\\n                                        if (rtrInf != null) {\\r\\n                                            ReturnReason5Choice rsn = rtrInf.getRsn();\\r\\n                                            if (rsn != null) {\\r\\n                                                  rsnCode = rsn.getCd();\\r\\n                                                  ddRejectFileInfos.getListInvoiceRefsRejected().put(ddRequestItemId, rsnCode);\\r\\n                                                if (safe(listRsnCodesToDontRetry).contains(rsnCode)) {\\r\\n                                                    this.dontRetryPayments(ddRequestItemId);\\r\\n                                                }\\r\\n                                            }\\r\\n                                        }\\r\\n                                    }\\r\\n                                } \\r\\n                            }\\r\\n                            if (ddRequestItemId == null) {\\r\\n                                log.warn(\\\" processSCTRejectedFile > ddRequestItemId is empty or invalid for entryTransaction2 = [{}] \\\", entryTransaction2); \\r\\n                            }\\r\\n                            if (StringUtils.isBlank(rsnCode)) {\\r\\n                                log.warn(\\\" processSCTRejectedFile > rsnCode is empty ! for entryTransaction2 = {} \\\", entryTransaction2);\\r\\n                            }\\r\\n                        }\\r\\n                    }\\r\\n                }\\r\\n            }\\r\\n        } catch (Exception e) {\\r\\n            throw new BusinessException(\\\" Error on processDDRejectedFile \\\" + e.getMessage(), e);\\r\\n        }\\r\\n        log.debug(\\\" End processSCTRejectedFile \\\");\\r\\n        return ddRejectFileInfos;\\r\\n    \\r\\n    }\\r\\n    \\r\\n    @Override\\r\\n    public DDRejectFileInfos processSDDRejectedFile(Map<String, Object> methodContext) throws BusinessException {\\r\\n        \\r\\n        log.debug(\\\" Start processSDDRejectedFile methodContext = {} \\\", methodContext);\\r\\n        DDRejectFileInfos ddRejectFileInfos = new DDRejectFileInfos();\\r\\n        \\r\\n        try {\\r\\n            File sepaRejectedFile = (File) methodContext.get(DDRequestBuilderScript.DD_REJECT_FILE);\\r\\n            if (sepaRejectedFile == null) {\\r\\n                throw new BusinessException(\\\" Sepa DD Rejected File not found !\\\");\\r\\n            }\\r\\n            ddRejectFileInfos.setFileName(sepaRejectedFile.getName());\\r\\n            Document rejectionDoc = (Document) JAXBUtils.unmarshaller(Document.class, sepaRejectedFile);\\r\\n            List<String> listRsnCodesToDontRetry = fetchRsnCodesToDontRetry(CF_SEPA_REJECT_NO_RETRY_CODES);\\r\\n            List<AccountNotification2> listNtfctns = rejectionDoc.getBkToCstmrDbtCdtNtfctn().getNtfctn();\\r\\n            for (AccountNotification2 acctNotification : listNtfctns) {\\r\\n                for (ReportEntry2 entry : acctNotification.getNtry()) {\\r\\n                    for (EntryDetails1 entryDetails1 : entry.getNtryDtls()) {\\r\\n                        for (EntryTransaction2 entryTransaction2 : entryDetails1.getTxDtls()) {\\r\\n                            \\r\\n                            Long ddRequestItemId = null;\\r\\n                            String rsnCode = null;\\r\\n                            TransactionReferences2 refs = entryTransaction2.getRefs();\\r\\n\\r\\n                            if (refs != null) {\\r\\n                                String instrId = refs.getInstrId();\\r\\n                                log.debug(\\\" processSDDRejectedFile > instrId : [{}]\\\", instrId);\\r\\n\\r\\n                                ddRequestItemId = extractCorrelationId(instrId);\\r\\n                                if (ddRequestItemId != null) {\\r\\n                                    ReturnReasonInformation10 rtrInf = entryTransaction2.getRtrInf();\\r\\n                                    if (rtrInf != null) {\\r\\n                                        ReturnReason5Choice rsn = rtrInf.getRsn();\\r\\n                                        if (rsn != null) {\\r\\n                                            rsnCode = rsn.getCd();\\r\\n                                            if (safe(listRsnCodesToDontRetry).contains(rsnCode)) {\\r\\n                                                this.dontRetryPayments(ddRequestItemId);\\r\\n                                            }\\r\\n                                            ddRejectFileInfos.getListInvoiceRefsRejected().put(ddRequestItemId, rsnCode);\\r\\n                                        }\\r\\n                                    }\\r\\n                                }\\r\\n                            }\\r\\n                            if (ddRequestItemId == null) {\\r\\n                                log.warn(\\\" processSDDRejectedFile > ddRequestItemId is empty or invalid for entryTransaction2 = [{}] \\\", entryTransaction2); \\r\\n                            }\\r\\n                            if (StringUtils.isBlank(rsnCode)) {\\r\\n                                log.warn(\\\" processSDDRejectedFile > rsnCode is empty ! for entryTransaction2 = {} \\\", entryTransaction2);\\r\\n                            }\\r\\n                        }\\r\\n                    }\\r\\n                }\\r\\n            }\\r\\n        } catch (Exception e) {\\r\\n            throw new BusinessException(\\\" Error on processDDRejectedFile \\\" + e.getMessage(), e);\\r\\n        }\\r\\n        log.debug(\\\" End processSDDRejectedFile \\\");\\r\\n        return ddRejectFileInfos;\\r\\n    }\\r\\n\\r\\n    private void dontRetryPayments(Long ddRequestItemId) {\\r\\n        log.debug(\\\" dontRetryPayments for ddRequestItemId = {}\\\", ddRequestItemId); \\r\\n        try {\\r\\n            DDRequestItem ddRequestItem = ddRequestItemService.findById(ddRequestItemId);\\r\\n            for (AccountOperation ao : ddRequestItem.getAccountOperations()) {\\r\\n                Subscription subscription = this.getSubscription(ao);\\r\\n                if (subscription != null) {\\r\\n                    customFieldInstanceService.setCFValue(subscription, CF_RETRY_PAYMENT, \\\"NO\\\");\\r\\n                }\\r\\n            }\\r\\n        } catch (Exception e) {\\r\\n            log.error(\\\" Error on dontRetryPayments -> ddRequestItemId [{}] ({}) \\\", ddRequestItemId, e.getMessage(), e);\\r\\n        }\\r\\n    }\\r\\n\\r\\n    private Long extractCorrelationId(String correlationId) {\\r\\n        // instrId = <contractNum (having length = 12 > + <ddRequestLOT Id> , hence instrId should have length > 12\\r\\n        if (StringUtils.isEmpty(correlationId) || correlationId.length() <= 12) {\\r\\n            log.error(\\\" Error on extractCorrelationId -> correlationId not found or has invalid length : [{}] ! \\\", correlationId);\\r\\n            return null;\\r\\n        }\\r\\n        try {\\r\\n            return Long.valueOf(correlationId.substring(12).trim());\\r\\n        } catch (Exception e) {\\r\\n            log.error(\\\" Error on extractCorrelationId -> correlationId is not a valid Long value : [{}] ! \\\", correlationId.substring(12));\\r\\n            return null;\\r\\n        }\\r\\n    }\\r\\n\\r\\n    @Deprecated\\r\\n    public String getDDRejectFilePrefix(Map<String, Object> methodContext) throws BusinessException {\\r\\n        return \\\"Sage_RejectSepa\\\";\\r\\n    }\\r\\n\\r\\n    @Deprecated\\r\\n    public String getDDRejectFileExtension(Map<String, Object> methodContext) throws BusinessException {\\r\\n        return \\\"xml\\\";\\r\\n    }\\r\\n\\r\\n    public String getDDFileName(Map<String, Object> methodContext) throws BusinessException {\\r\\n        DDRequestLOT ddRequestLOT = (DDRequestLOT) methodContext.get(DDRequestBuilderScript.DD_REQUEST_LOT);\\r\\n        Provider appProvider = (Provider) methodContext.get(DDRequestBuilderScript.PROVIDER);\\r\\n        String flatFilePath = this.sageFlatFilePath(ddRequestLOT, appProvider);\\r\\n        log.debug(\\\" getDDFileName : [{}]\\\", flatFilePath);\\r\\n        return flatFilePath;\\r\\n    }\\r\\n\\r\\n    \\r\\n    \\r\\n    @Override\\r\\n    public void generateDDRequestLotFile(Map<String, Object> methodContext) throws BusinessException {\\r\\n\\r\\n        log.debug(\\\" >>> Starting generateDDRequestLotFile ... \\\");\\r\\n        Provider appProvider = (Provider) methodContext.get(DDRequestBuilderScript.PROVIDER);\\r\\n        DDRequestLOT ddRequestLOT = (DDRequestLOT) methodContext.get(DDRequestBuilderScript.DD_REQUEST_LOT);\\r\\n\\r\\n        boolean isRefund = PaymentOrRefundEnum.REFUND == ddRequestLOT.getPaymentOrRefundEnum();\\r\\n\\r\\n        // file name :\\r\\n        String flatFilePath = ddRequestLOT.getFileName();\\r\\n        if (StringUtils.isEmpty(flatFilePath)) {\\r\\n            flatFilePath = this.sageFlatFilePath(ddRequestLOT, appProvider);\\r\\n        }\\r\\n\\r\\n        try (BufferedWriter bufferedWriter = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(flatFilePath), FILE_ENCODING))) {\\r\\n\\r\\n            String dueDateCalendarCode = (String) this.fetchCFConfigValue(ddRequestLOT.getDdRequestBuilder(), CF_CAL_DDR_DUEDATE, true);\\r\\n            Calendar dueDateCalendar = calendarService.findByCode(dueDateCalendarCode);\\r\\n            if (dueDateCalendar == null) {\\r\\n                throw new BusinessException(\\\" No Calendar found having code =  \\\" + dueDateCalendarCode);\\r\\n            }\\r\\n\\r\\n            List<DDRequestItem> dDRequestItems = ddRequestLOT.getDdrequestItems();\\r\\n            if (CollectionUtils.isNotEmpty(dDRequestItems)) {\\r\\n                int nbrItemHavingErrors = 0;\\r\\n\\r\\n                Date prelevementDueDate = new Date();\\r\\n                if (!isRefund) {\\r\\n                    prelevementDueDate = dueDateCalendar.nextCalendarDate(new Date());\\r\\n                }\\r\\n\\r\\n                log.debug(\\\" >>> prelevementDueDate = {} \\\", prelevementDueDate);\\r\\n\\r\\n                Map<Seller, SellerDDItems> mapDDRequestItemsBySeller = new HashMap<>();\\r\\n\\r\\n                for (DDRequestItem ddRequestItem : dDRequestItems) {\\r\\n                    if (!ddRequestItem.hasError()) {\\r\\n                        this.groupDDRequestItemBySeller(ddRequestItem, mapDDRequestItemsBySeller);\\r\\n                    }\\r\\n                    if (ddRequestItem.hasError()) {\\r\\n                        nbrItemHavingErrors++;\\r\\n                    }\\r\\n                }\\r\\n                // If all items have erros so throw exception\\r\\n                if (nbrItemHavingErrors == dDRequestItems.size()) {\\r\\n                    throw new Exception(\\\" all DD Request Items have erros\\\");\\r\\n                }\\r\\n                // adding Operations Details Grouped By Seller (EJ) header and footer :\\r\\n                for (Seller seller : mapDDRequestItemsBySeller.keySet()) {\\r\\n                    SellerDDItems sellerDDItems = mapDDRequestItemsBySeller.get(seller);\\r\\n                    if (sellerDDItems.getTotalAmount().compareTo(BigDecimal.ZERO) != 0) {\\r\\n                        this.addOperationBlocksGroupedBySeller(seller, sellerDDItems, bufferedWriter, prelevementDueDate, isRefund);\\r\\n                    } else {\\r\\n                        log.debug(\\\" >>> The total invoices amount of the Seller [{}] = 0 !\\\", seller);\\r\\n                    }\\r\\n                }\\r\\n            }\\r\\n\\r\\n        } catch (Exception e) {\\r\\n            String msg = e.getMessage();\\r\\n            log.error(\\\" error on generateDDRequestLotFile : [flatFilePath = {}] error =  [{}]\\\", flatFilePath, msg, e);\\r\\n            this.removeFileIfAlreadyCreated(flatFilePath);\\r\\n            throw new BusinessException(msg, e);\\r\\n        }\\r\\n        log.debug(\\\" [ End of generateDDRequestLotFile , generated file : [{}]\\\", flatFilePath);\\r\\n    }\\r\\n\\r\\n    private void addOperationBlocksGroupedBySeller(Seller seller, SellerDDItems sellerDDItems, BufferedWriter bufferedWriter, Date prelevementDueDate, boolean isRefund)\\r\\n            throws BusinessException, IOException {\\r\\n        Long amountToPay = new Long(0);\\r\\n        log.debug(\\\" Start addOperationBlocksGroupedBySeller  ...\\\");\\r\\n        \\r\\n        SellerBankInfos sellerInfos = fetchSellerInfos(seller);\\r\\n        // adding Header ...\\r\\n        if (isRefund) {\\r\\n            this.addRefundSellerHeader(bufferedWriter, sellerInfos, prelevementDueDate);\\r\\n        } else {\\r\\n            this.addPaySellerHeader(bufferedWriter, sellerInfos, prelevementDueDate);\\r\\n        }\\r\\n        // adding operations ...\\r\\n        for (SimpleEntry<Subscription, DDRequestItem> entry : sellerDDItems.getListDDRequestItems()) {\\r\\n            amountToPay += addOperationDetails(bufferedWriter, customerAccountService, sellerInfos, entry, isRefund);\\r\\n        }\\r\\n        // adding Footer ...\\r\\n        this.addSellerFooter(bufferedWriter, sellerInfos, amountToPay, isRefund);\\r\\n        log.debug(\\\" End addOperationBlocksGroupedBySeller  ...\\\");\\r\\n    }\\r\\n\\r\\n    private Long addOperationDetails(BufferedWriter bufferedWriter, final CustomerAccountService customerAccountService, SellerBankInfos sellerInfos,\\r\\n            SimpleEntry<Subscription, DDRequestItem> entry, boolean isRefund) {\\r\\n        log.debug(\\\" Start addOperationBlocksGroupedBySeller  ...\\\");\\r\\n        Long amountToPay = new Long(0);\\r\\n        DDRequestItem ddRequestItem = entry.getValue();\\r\\n        Subscription subscription = entry.getKey();\\r\\n\\r\\n        try {\\r\\n            AccountOperation ao = ddRequestItem.getAccountOperations().get(0);\\r\\n            CustomerAccount customerAccount = customerAccountService.retrieveIfNotManaged(ao.getCustomerAccount());\\r\\n            PaymentMethod preferredMethod = customerAccount.getPreferredPaymentMethod();\\r\\n\\r\\n            if (preferredMethod instanceof DDPaymentMethod) {\\r\\n\\r\\n                // total amount of the ddRequestItem :\\r\\n                BigDecimal ddRequestItemAmount = ddRequestItem.getAmount();\\r\\n                if (ddRequestItemAmount.compareTo(BigDecimal.ZERO) != 0) {\\r\\n\\r\\n                    // correlation identifier :\\r\\n                    String correlationId = String.valueOf(ddRequestItem.getId());\\r\\n\\r\\n                    DDPaymentMethod ddPaymentMethod = (DDPaymentMethod) preferredMethod;\\r\\n\\r\\n                    String recipientName = getDefaultIfEmpty(getRecipientName(customerAccount), \\\"\\\");\\r\\n                    String rum = getDefaultIfEmpty(ddPaymentMethod.getMandateIdentification(), \\\"\\\");\\r\\n\\r\\n                    String mandatSignatureDate = DateUtils.formatDateWithPattern(ddPaymentMethod.getMandateDate(), \\\"ddMMyy\\\");\\r\\n\\r\\n                    BankCoordinates bankCoordinates = ddPaymentMethod.getBankCoordinates();\\r\\n                    // String domiciliation = getDefaultIfEmpty(bankCoordinates.getBankName(), \\\"\\\");\\r\\n                    // #249 : use BIC instead of domiciliation\\r\\n                    String bic = getDefaultIfEmpty(bankCoordinates.getBic(), \\\"\\\");\\r\\n                    String contractNum = getDefaultIfEmpty(this.getContractNumber(subscription), \\\"\\\");\\r\\n                    amountToPay = ddRequestItemAmount.setScale(2, RoundingMode.HALF_UP).multiply(ONE_HUNDRED).longValue();\\r\\n\\r\\n                    String iban = bankCoordinates.getIban();\\r\\n                    validateIbanSize(iban);\\r\\n\\r\\n                    String recipientBankCode = iban.substring(4, 9);\\r\\n                    String recipientBankBranchCode = iban.substring(9, 14);\\r\\n                    String recipientBankAccountNum = iban.substring(14, 25);\\r\\n\\r\\n                    log.debug(\\\"Adding detail line ...\\\");\\r\\n                    String detail = FlatContentBuilder.newInstance().addItem(LINE_DETAIL_CODE).addItem(isRefund ? REFUND_LINE_OPCODE : LINE_OPCODE).addBlank(8)\\r\\n                        .addItem(sellerInfos.issuerNationalNum, 6).addItem(ISSUER_INTERNAL_REF, 12).addItem(recipientName, 24).addItem(bic, 24).addBlank(8)\\r\\n                        .addItem(recipientBankBranchCode, 5).addItem(recipientBankAccountNum, 11).addItem(String.valueOf(amountToPay), false, 16, CHAR_TO_FILL_ZERO)\\r\\n                        .addItem(RECOGNITION_SIGN).addItem(contractNum, 12).addItem(correlationId, 18).addItem(recipientBankCode, 5).addBlank(6).buid();\\r\\n\\r\\n                    bufferedWriter.write(detail);\\r\\n                    bufferedWriter.newLine();\\r\\n\\r\\n                    if (!isRefund) {\\r\\n                        log.debug(\\\"Adding detail2 line ...\\\");\\r\\n                        // adding detail2 line\\r\\n                        String detail2 = FlatContentBuilder.newInstance().addItem(LINE_DETAIL2_CODE).addItem(LINE_DETAIL2_SEQ).addItem(rum, 35).addItem(SCHEMA_TYPE_SDD)\\r\\n                            .addItem(mandatSignatureDate).addBlank(112).addItem(FORMAT_LANGAGE).buid();\\r\\n\\r\\n                        bufferedWriter.write(detail2);\\r\\n                        bufferedWriter.newLine();\\r\\n                    }\\r\\n                } else {\\r\\n                    String errorMsg = \\\" ddRequestItemAmount should not be Zero ! \\\";\\r\\n                    log.warn(\\\" ddRequestItem id = [{}] , [{}]\\\", ddRequestItem.getId(), errorMsg);\\r\\n                    ddRequestItem.setErrorMsg(errorMsg);\\r\\n                }\\r\\n            } else {\\r\\n                String errorMsg = \\\"preferredMethod should be DDPaymentMethod\\\";\\r\\n                log.warn(\\\" ddRequestItem id = [{}] , [{}]\\\", ddRequestItem.getId(), errorMsg);\\r\\n                ddRequestItem.setErrorMsg(errorMsg);\\r\\n            }\\r\\n\\r\\n        } catch (Exception e) {\\r\\n            String msg = e.getMessage();\\r\\n            log.error(\\\" Error on addOperationDetails : [{}] \\\", msg);\\r\\n            ddRequestItem.setErrorMsg(msg);\\r\\n        }\\r\\n        log.debug(\\\" End addOperationBlocksGroupedBySeller amountToPay = {} \\\", amountToPay);\\r\\n        return amountToPay;\\r\\n    }\\r\\n\\r\\n    private void groupDDRequestItemBySeller(DDRequestItem ddRequestItem, Map<Seller, SellerDDItems> mapDDRequestItemsBySeller) {\\r\\n        try {\\r\\n            AccountOperation ao = ddRequestItem.getAccountOperations().get(0);\\r\\n            Subscription subscription = this.getSubscription(ao);\\r\\n            if (subscription == null) {\\r\\n                throw new BusinessException(\\\" No subscription found for ddRequestItem = \\\" + ddRequestItem);\\r\\n            }\\r\\n            // getting the Juridical Seller infos :\\r\\n            Seller seller = getJuridicalSeller(subscription);\\r\\n\\r\\n            SellerDDItems sellerDDItems = mapDDRequestItemsBySeller.get(seller);\\r\\n            if (sellerDDItems == null) {\\r\\n                sellerDDItems = new SellerDDItems(new ArrayList<>());\\r\\n                mapDDRequestItemsBySeller.put(seller, sellerDDItems);\\r\\n            }\\r\\n            sellerDDItems.addDDRequestItem(new SimpleEntry<Subscription, DDRequestItem>(subscription, ddRequestItem));\\r\\n\\r\\n        } catch (Exception e) {\\r\\n            String msg = e.getMessage();\\r\\n            log.error(\\\" Error on groupDDRequestItemBySeller : [{}] \\\", msg);\\r\\n            ddRequestItem.setErrorMsg(msg);\\r\\n        }\\r\\n    }\\r\\n\\r\\n    private void removeFileIfAlreadyCreated(String flatFilePath) {\\r\\n        try {\\r\\n            Files.deleteIfExists(Paths.get(flatFilePath));\\r\\n        } catch (Exception e) {\\r\\n            log.error(\\\" error on removeFileIfAlreadyCreated [{}]\\\", e.getMessage());\\r\\n        }\\r\\n    }\\r\\n\\r\\n    private void validateIbanSize(String iban) throws BusinessException {\\r\\n        if (StringUtils.isEmpty(iban) || iban.length() != 27) {\\r\\n            throw new BusinessException(String.format(\\\" Invalid iban [%s]\\\", iban));\\r\\n        }\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * \\r\\n     * @param seller\\r\\n     * @return the last 6 charachtes of the CF_S_FD_ICS CF value.\\r\\n     * @throws BusinessException\\r\\n     */\\r\\n    private String getIssuerNationalNum(Seller seller) throws BusinessException {\\r\\n        final String cfKey = \\\"CF_S_FD_ICS\\\";\\r\\n        String ics = (String) this.fetchCFConfigValue(seller, cfKey, true);\\r\\n        if (StringUtils.isNotEmpty(ics) && ics.length() >= 6) {\\r\\n            return ics.substring(ics.length() - 6);\\r\\n        } else {\\r\\n            throw new BusinessException(String.format(\\\"Missing or invalid mandatory config [%s = %s]\\\", cfKey, ics));\\r\\n        }\\r\\n    }\\r\\n\\r\\n    private Seller getJuridicalSeller(Subscription subscription) throws BusinessException {\\r\\n        try {\\r\\n            Seller seller = subscription.getSeller().getSeller();\\r\\n            if (seller == null) {\\r\\n                throw new BusinessException(\\\" Parent seller of the Subscription cannot be null,  [subscription id = {}]\\\" + subscription.getId());\\r\\n            }\\r\\n            return seller;\\r\\n        } catch (Exception e) {\\r\\n            log.error(\\\" Error on getJuridicalSeller : [{}] \\\", e.getMessage(), e);\\r\\n            throw new BusinessException(\\\" Cannot find Juridical Seller from Subscription [{}]\\\" + subscription);\\r\\n        }\\r\\n    }\\r\\n\\r\\n    private String getContractNumber(Subscription subscription) {\\r\\n        try {\\r\\n            return subscription.getCode();\\r\\n        } catch (Exception e) {\\r\\n            log.error(\\\" Error on getContractNumber : [{}] \\\", e.getMessage(), e);\\r\\n        }\\r\\n        return null;\\r\\n    }\\r\\n\\r\\n    @SuppressWarnings(\\\"unchecked\\\")\\r\\n    private Subscription getSubscription(AccountOperation ao) throws BusinessException {\\r\\n        try { \\r\\n            \\r\\n            final SubscriptionService subscriptionService = (SubscriptionService) getServiceInterface(SubscriptionService.class.getSimpleName());\\r\\n            String queryOneSubscriptionFromAo = \\\"select distinct s from Subscription s, AccountOperation ao  where ao.id =:aoId and s.userAccount.billingAccount.customerAccount = ao.customerAccount\\\";\\r\\n            Map<String, Object> queryParams = new HashMap<>();\\r\\n            queryParams.put(\\\"aoId\\\", ao.getId());\\r\\n            Object objSubscription = subscriptionService.executeSelectQuery(queryOneSubscriptionFromAo, queryParams);\\r\\n            List<Subscription> subscriptions = (List<Subscription>) objSubscription;\\r\\n            if (safe(subscriptions).isEmpty()) {\\r\\n                throw new BusinessException(\\\" No subscription found for ao = \\\" + ao);\\r\\n            }\\r\\n            \\r\\n            return subscriptions.get(0);\\r\\n        } catch (BusinessException e) {\\r\\n            log.error(\\\" Error on getSubscription : [{}] \\\", e.getMessage(), e);\\r\\n            throw e;\\r\\n        }  catch (Exception e) {\\r\\n            log.error(\\\" Error on getSubscription : [{}] \\\", e.getMessage(), e);\\r\\n            throw new BusinessException(\\\" No subscription found for ao = \\\" + ao);\\r\\n        }\\r\\n    }\\r\\n\\r\\n    private void addRefundSellerHeader(BufferedWriter bufferedWriter, SellerBankInfos sellerInfos, Date prelevementDueDate) throws IOException {\\r\\n        log.debug(\\\"Adding header line ...\\\");\\r\\n\\r\\n        if (prelevementDueDate == null) {\\r\\n            prelevementDueDate = new Date();\\r\\n        }\\r\\n        String sDueDate = DateUtils.formatDDMMY(prelevementDueDate);\\r\\n\\r\\n        String header = FlatContentBuilder.newInstance().addItem(LINE_HEADER_CODE).addItem(REFUND_LINE_OPCODE).addBlank(8).addItem(sellerInfos.issuerNationalNum, 6).addBlank(2)\\r\\n            .addItem(SOUS_CODE_REMISE).addBlank(4).addItem(sDueDate).addItem(sellerInfos.issuerName, true, 24).addBlank(7).addBlank(19).addItem(CURRENCY).addBlank(5)\\r\\n            .addItem(sellerInfos.issuerBankBranchCode, 5).addItem(sellerInfos.issuerBankAccountNum, 11).addBlank(47).addItem(sellerInfos.issuerBankCode, 5).addBlank(6).buid();\\r\\n\\r\\n        bufferedWriter.write(header);\\r\\n        bufferedWriter.newLine();\\r\\n    }\\r\\n\\r\\n    private void addPaySellerHeader(BufferedWriter bufferedWriter, SellerBankInfos sellerInfos, Date prelevementDueDate) throws IOException {\\r\\n        log.debug(\\\"Adding payment header line ...\\\");\\r\\n        if (prelevementDueDate == null) {\\r\\n            prelevementDueDate = new Date();\\r\\n        }\\r\\n        String sDueDate = DateUtils.formatDDMMY(prelevementDueDate);\\r\\n\\r\\n        String header = FlatContentBuilder.newInstance().addItem(LINE_HEADER_CODE).addItem(LINE_OPCODE).addBlank(8).addItem(sellerInfos.issuerNationalNum, 6).addBlank(7)\\r\\n            .addItem(sDueDate).addItem(sellerInfos.issuerName, true, 24).addItem(ISSUER_BATCH_REF, 7).addBlank(19).addItem(CURRENCY).addBlank(5)\\r\\n            .addItem(sellerInfos.issuerBankBranchCode, 5).addItem(sellerInfos.issuerBankAccountNum, 11).addBlank(47).addItem(sellerInfos.issuerBankCode, 5).addBlank(6).buid();\\r\\n\\r\\n        bufferedWriter.write(header);\\r\\n        bufferedWriter.newLine();\\r\\n    }\\r\\n\\r\\n    private void addSellerFooter(BufferedWriter bufferedWriter, SellerBankInfos sellerInfos, Long totalAmount, boolean isRefund) throws IOException {\\r\\n        log.debug(\\\"Adding footer line with amountToPay = [{}] \\\", totalAmount);\\r\\n        String opAmount = String.valueOf(totalAmount);\\r\\n        String footer = FlatContentBuilder.newInstance().addItem(LINE_FOOTER_CODE).addItem(isRefund ? REFUND_LINE_OPCODE : LINE_OPCODE).addBlank(8)\\r\\n            .addItem(sellerInfos.issuerNationalNum, 6).addBlank(84).addItem(opAmount, false, 16, CHAR_TO_FILL_ZERO).addBlank(42).buid();\\r\\n\\r\\n        bufferedWriter.write(footer);\\r\\n        bufferedWriter.newLine();\\r\\n    }\\r\\n\\r\\n    private String sageFlatFilePath(DDRequestLOT ddRequestLOT, Provider appProvider) {\\r\\n        ParamBeanFactory paramBeanFactory = (ParamBeanFactory) getServiceInterface(ParamBeanFactory.class.getSimpleName());\\r\\n\\r\\n        StringBuilder fileName = new StringBuilder(ArConfig.getDDRequestFileNamePrefix());\\r\\n        if (PaymentOrRefundEnum.REFUND == ddRequestLOT.getPaymentOrRefundEnum()) {\\r\\n            fileName.append(\\\"REFUND_\\\");\\r\\n        }\\r\\n        fileName.append(ddRequestLOT.getId()).append(\\\"_\\\").append(appProvider.getCode()).append(\\\"_\\\").append(DateUtils.formatDateWithPattern(new Date(), \\\"yyyyMMdd\\\"))\\r\\n            .append(ArConfig.getDDRequestFileNameExtension());\\r\\n\\r\\n        String outputDir = paramBeanFactory.getChrootDir();\\r\\n        outputDir = outputDir + File.separator + ArConfig.getDDRequestOutputDirectory();\\r\\n        outputDir = outputDir.replaceAll(\\\"\\\\\\\\..\\\", \\\"\\\");\\r\\n\\r\\n        log.info(\\\"DDRequest output directory=\\\" + outputDir);\\r\\n        File dir = new File(outputDir);\\r\\n        if (!dir.exists()) {\\r\\n            dir.mkdirs();\\r\\n        }\\r\\n        return outputDir + File.separator + fileName;\\r\\n    }\\r\\n\\r\\n    private SellerBankInfos fetchSellerInfos(Seller seller) throws BusinessException {\\r\\n        log.debug(\\\" getting the Juridical Seller infos ...\\\");\\r\\n        String issuerNationalNum = this.getIssuerNationalNum(seller);\\r\\n        // String issuerName = getDefaultIfEmpty((String) this.fetchCFConfigValue(seller, \\\"CF_S_FD_ISSUER_NAME\\\", true), \\\"\\\");\\r\\n        // => #249 :\\r\\n        String issuerName = getDefaultIfEmpty(seller.getDescription(), \\\"\\\");\\r\\n        String issuerBankBranchCode = getDefaultIfEmpty((String) this.fetchCFConfigValue(seller, \\\"CF_S_FD_BRANCH_CODE\\\", false), \\\"\\\");\\r\\n        String issuerBankAccountNum = getDefaultIfEmpty((String) this.fetchCFConfigValue(seller, \\\"CF_S_FD_ACCOUNT_NUMBER\\\", false), \\\"\\\");\\r\\n        String issuerBankCode = getDefaultIfEmpty((String) this.fetchCFConfigValue(seller, \\\"CF_S_FD_BANK_CODE\\\", false), \\\"\\\");\\r\\n        return new SellerBankInfos(issuerNationalNum, issuerName, issuerBankBranchCode, issuerBankAccountNum, issuerBankCode);\\r\\n    }\\r\\n\\r\\n    private Object fetchCFConfigValue(ICustomFieldEntity entity, String cfKey, boolean isMandatory) throws BusinessException {\\r\\n        Object cfValue = customFieldInstanceService.getCFValue(entity, cfKey);\\r\\n        if (isMandatory && (cfValue == null || (cfValue instanceof String && StringUtils.isEmpty(String.valueOf(cfValue))))) {\\r\\n            throw new BusinessException(\\\" Missing mandatory config [\\\" + cfKey + \\\"]\\\");\\r\\n        }\\r\\n        return cfValue;\\r\\n    }\\r\\n\\r\\n    private String getRecipientName(CustomerAccount ca) {\\r\\n        Name caName = ca.getName();\\r\\n        if (caName == null) {\\r\\n            log.warn(\\\" Customer Account Name is null ! id =[{}] \\\", ca.getId());\\r\\n            return \\\"\\\";\\r\\n        } else {\\r\\n            Title title = caName.getTitle();\\r\\n            String firstName = getDefaultIfEmpty(caName.getFirstName(), \\\"\\\");\\r\\n            String lastName = getDefaultIfEmpty(caName.getLastName(), \\\"\\\");\\r\\n            return new StringBuffer(title != null ? title.getDescriptionNotNull() : \\\"\\\").append(\\\" \\\").append(firstName).append(\\\" \\\").append(lastName).toString();\\r\\n        }\\r\\n    }\\r\\n\\r\\n    @SuppressWarnings(\\\"unchecked\\\")\\r\\n    public static <T> Collection<T> safe(Collection<T> collection) {\\r\\n        return collection == null ? Collections.EMPTY_LIST : collection;\\r\\n    }\\r\\n\\r\\n    private class SellerDDItems {\\r\\n        private BigDecimal totalAmount = BigDecimal.ZERO;\\r\\n        private List<SimpleEntry<Subscription, DDRequestItem>> listDDRequestItems;\\r\\n        \\r\\n        SellerDDItems(List<SimpleEntry<Subscription, DDRequestItem>> listDDRequestItems) {\\r\\n            this.listDDRequestItems = listDDRequestItems;\\r\\n        }\\r\\n        void addDDRequestItem(SimpleEntry<Subscription, DDRequestItem> item) {\\r\\n            listDDRequestItems.add(item);\\r\\n            this.totalAmount = this.totalAmount.add(item.getValue().getAmount());\\r\\n        }\\r\\n        public List<SimpleEntry<Subscription, DDRequestItem>> getListDDRequestItems() {\\r\\n            return listDDRequestItems;\\r\\n        }\\r\\n        public BigDecimal getTotalAmount() {\\r\\n            return totalAmount;\\r\\n        }\\r\\n    }\\r\\n\\r\\n    private class SellerBankInfos {\\r\\n        String issuerNationalNum;\\r\\n        String issuerName;\\r\\n        String issuerBankBranchCode;\\r\\n        String issuerBankAccountNum;\\r\\n        String issuerBankCode;\\r\\n\\r\\n        SellerBankInfos(String issuerNationalNum, String issuerName, String issuerBankBranchCode, String issuerBankAccountNum, String issuerBankCode) {\\r\\n            this.issuerNationalNum = issuerNationalNum;\\r\\n            this.issuerName = issuerName;\\r\\n            this.issuerBankBranchCode = issuerBankBranchCode;\\r\\n            this.issuerBankAccountNum = issuerBankAccountNum;\\r\\n            this.issuerBankCode = issuerBankCode;\\r\\n        }\\r\\n    }\\r\\n}\",\n    \"executionRoles\": [],\n    \"sourcingRoles\": []\n}"
						},
						"url": {
							"raw": "{{opencell.url}}/scriptInstance/createOrUpdate",
							"host": [
								"{{opencell.url}}"
							],
							"path": [
								"scriptInstance",
								"createOrUpdate"
							]
						},
						"description": "Custom script extending DDRequestBuilderScript , to be used for SEPA SAGE DD payments."
					},
					"response": []
				},
				{
					"name": "Create CurrentMonthDateRangeScript",
					"event": [
						{
							"listen": "test",
							"script": {
								"id": "6112f00a-c34b-495e-ba0e-c92ccc8d8392",
								"exec": [
									"var jsonData = JSON.parse(responseBody);",
									"tests[\"is.success\"] = jsonData.actionStatus.status === \"SUCCESS\";"
								],
								"type": "text/javascript"
							}
						}
					],
					"request": {
						"auth": {
							"type": "basic",
							"basic": [
								{
									"key": "username",
									"value": "{{opencell.username}}",
									"type": "string"
								},
								{
									"key": "password",
									"value": "{{opencell.password}}",
									"type": "string"
								}
							]
						},
						"method": "POST",
						"header": [
							{
								"key": "Content-Type",
								"value": "application/json"
							},
							{
								"key": "Proxy-Authorization",
								"type": "text",
								"value": "{{proxy.auth}}"
							}
						],
						"body": {
							"mode": "raw",
							"raw": "{\r\n    \"code\": \"org.meveo.service.script.payment.CurrentMonthDateRangeScript\",\r\n    \"description\": \"CurrentMonthDateRangeScript\",\r\n    \"type\": \"JAVA\",\r\n    \"script\": \"package org.meveo.service.script.payment;\\r\\n\\r\\nimport java.util.Calendar;\\r\\nimport java.util.Map;\\r\\n\\r\\nimport org.meveo.admin.job.DateRange;\\r\\n\\r\\npublic class CurrentMonthDateRangeScript extends DateRangeScript {\\r\\n\\r\\n    @Override\\r\\n    public DateRange computeDateRange(Map<String, Object> methodContext) {\\r\\n        \\r\\n        Calendar calFrom = Calendar.getInstance(); \\r\\n        calFrom.set(Calendar.DAY_OF_MONTH, 1);\\r\\n        calFrom.set(Calendar.HOUR_OF_DAY, 0);\\r\\n        calFrom.set(Calendar.MINUTE, 0);\\r\\n        calFrom.set(Calendar.SECOND, 0);\\r\\n        \\r\\n        Calendar calTo = Calendar.getInstance();\\r\\n        calTo.set(Calendar.DAY_OF_MONTH, calTo.getActualMaximum(Calendar.DAY_OF_MONTH) + 1); // max day of the month + 1\\r\\n        calTo.set(Calendar.HOUR_OF_DAY, 0);\\r\\n        calTo.set(Calendar.MINUTE, 0);\\r\\n        calTo.set(Calendar.SECOND, 0);\\r\\n        \\r\\n        return new DateRange(calFrom.getTime(), calTo.getTime());\\r\\n    }\\r\\n}\",\r\n    \"executionRoles\": [],\r\n    \"sourcingRoles\": []\r\n}"
						},
						"url": {
							"raw": "{{opencell.url}}/scriptInstance/createOrUpdate",
							"host": [
								"{{opencell.url}}"
							],
							"path": [
								"scriptInstance",
								"createOrUpdate"
							]
						},
						"description": "A Custom script to compute CUrrent Month Date range."
					},
					"response": []
				},
				{
					"name": "Create dd_builder_refund",
					"event": [
						{
							"listen": "test",
							"script": {
								"id": "ef4f7193-250f-41e7-aaf2-b78fb9600f48",
								"exec": [
									"var jsonData = JSON.parse(responseBody);",
									"tests[\"is.success\"] = jsonData.actionStatus.status === \"SUCCESS\";"
								],
								"type": "text/javascript"
							}
						}
					],
					"request": {
						"auth": {
							"type": "basic",
							"basic": [
								{
									"key": "username",
									"value": "{{opencell.username}}",
									"type": "string"
								},
								{
									"key": "password",
									"value": "{{opencell.password}}",
									"type": "string"
								}
							]
						},
						"method": "POST",
						"header": [
							{
								"key": "Content-Type",
								"value": "application/json"
							},
							{
								"key": "Proxy-Authorization",
								"type": "text",
								"value": "{{proxy.auth}}"
							}
						],
						"body": {
							"mode": "raw",
							"raw": "{\r\n    \"code\": \"dd_builder_refund\",\r\n    \"description\": \"DD builder for sepa refunds.\",\r\n    \"type\" : \"CUSTOM\" , \r\n    \"scriptInstanceCode\" : \"org.meveo.service.script.payment.SageDDRequestBuilderScript\", \r\n    \"paymentLevel\" : \"CA\"\r\n    \r\n}"
						},
						"url": {
							"raw": "{{opencell.url}}/payment/ddRequestBuilder/createOrUpdate",
							"host": [
								"{{opencell.url}}"
							],
							"path": [
								"payment",
								"ddRequestBuilder",
								"createOrUpdate"
							]
						}
					},
					"response": []
				},
				{
					"name": "Create Refund DDRequestLotOp",
					"event": [
						{
							"listen": "test",
							"script": {
								"id": "7d567b54-4e2c-40ae-b654-71e7f7fba5f6",
								"exec": [
									"var jsonData = JSON.parse(responseBody);",
									"tests[\"is.success\"] = jsonData.status === \"SUCCESS\";"
								],
								"type": "text/javascript"
							}
						}
					],
					"request": {
						"auth": {
							"type": "basic",
							"basic": [
								{
									"key": "username",
									"value": "{{opencell.username}}",
									"type": "string"
								},
								{
									"key": "password",
									"value": "{{opencell.password}}",
									"type": "string"
								}
							]
						},
						"method": "POST",
						"header": [
							{
								"key": "Content-Type",
								"value": "application/json"
							},
							{
								"key": "Proxy-Authorization",
								"value": "{{proxy.auth}}",
								"type": "text"
							}
						],
						"body": {
							"mode": "raw",
							"raw": "{\r\n    \"recurrent\": true,\r\n    \"dueDateRageScriptCode\" : \"org.meveo.service.script.payment.CurrentMonthDateRangeScript\",\r\n    \"paymentOrRefundEnum\" : \"REFUND\",\r\n    \"ddRequestBuilderCode\" : \"dd_builder_refund\"\r\n}"
						},
						"url": {
							"raw": "{{opencell.url}}/payment/ddrequestLotOp",
							"host": [
								"{{opencell.url}}"
							],
							"path": [
								"payment",
								"ddrequestLotOp"
							]
						}
					},
					"response": []
				},
				{
					"name": "Create RefundSepa_Job",
					"event": [
						{
							"listen": "test",
							"script": {
								"id": "18e9580b-c21e-42bc-8b1f-3ad70b6b75ba",
								"exec": [
									"var jsonData = JSON.parse(responseBody);",
									"tests[\"is.success\"] = jsonData.status === \"SUCCESS\";"
								],
								"type": "text/javascript"
							}
						}
					],
					"request": {
						"auth": {
							"type": "basic",
							"basic": [
								{
									"key": "username",
									"value": "{{opencell.username}}",
									"type": "string"
								},
								{
									"key": "password",
									"value": "{{opencell.password}}",
									"type": "string"
								}
							]
						},
						"method": "POST",
						"header": [
							{
								"key": "Content-Type",
								"value": "application/json"
							},
							{
								"key": "Proxy-Authorization",
								"type": "text",
								"value": "{{proxy.auth}}"
							}
						],
						"body": {
							"mode": "raw",
							"raw": "{\r\n    \"code\": \"RefundSepa_Job\",\r\n    \"description\": \"Refund for Sepa Job\",\r\n    \"jobCategory\": \"ACCOUNT_RECEIVABLES\",\r\n    \"jobTemplate\": \"SepaDirectDebitJob\" , \r\n    \"customFields\" : {\r\n    \t\"customField\": [ \r\n    \t\t{ \r\n    \t\t   \"code\":\"SepaJob_ddRequestBuilder\", \r\n    \t\t   \"entityReferenceValue\" : {\r\n    \t\t        \"classname\" : \"org.meveo.model.payments.DDRequestBuilder\" ,\r\n    \t\t        \"code\" : \"dd_builder_refund\"\r\n    \t\t   }\r\n    \t\t} , \r\n    \t\t{  \r\n    \t\t   \"code\":\"SepaJob_paymentOrRefund\", \r\n    \t\t   \"stringValue\" : \"REFUND\"\r\n    \t\t}\r\n    \t] \r\n    }\r\n}"
						},
						"url": {
							"raw": "{{opencell.url}}/jobInstance/createOrUpdate",
							"host": [
								"{{opencell.url}}"
							],
							"path": [
								"jobInstance",
								"createOrUpdate"
							]
						}
					},
					"response": []
				},
				{
					"name": "Create RejectSepaJob",
					"event": [
						{
							"listen": "test",
							"script": {
								"id": "55b2a78a-5fc7-4b6e-9066-3f60c6973ca7",
								"exec": [
									"var jsonData = JSON.parse(responseBody);",
									"tests[\"is.success\"] = jsonData.status === \"SUCCESS\";"
								],
								"type": "text/javascript"
							}
						}
					],
					"request": {
						"auth": {
							"type": "basic",
							"basic": [
								{
									"key": "username",
									"value": "{{opencell.username}}",
									"type": "string"
								},
								{
									"key": "password",
									"value": "{{opencell.password}}",
									"type": "string"
								}
							]
						},
						"method": "POST",
						"header": [
							{
								"key": "Content-Type",
								"value": "application/json"
							},
							{
								"key": "Proxy-Authorization",
								"type": "text",
								"value": "{{proxy.auth}}"
							}
						],
						"body": {
							"mode": "raw",
							"raw": "{\r\n    \"code\": \"RejectSepaJob\",\r\n    \"description\": \"Rejet Sepa direct debit Job\",\r\n    \"jobCategory\": \"ACCOUNT_RECEIVABLES\",\r\n    \"jobTemplate\": \"SepaRejectedTransactionsJob\" , \r\n    \"customFields\" : {\r\n    \t\"customField\": [ \r\n    \t\t{ \r\n    \t\t   \"code\":\"RejectSepaJob_inputDir\", \r\n    \t\t   \"stringValue\" : \"/finance/rejet/sdd\"\r\n    \t\t} , \r\n    \t\t{ \r\n    \t\t   \"code\":\"RejectSepaJob_fileNamePrefix\", \r\n    \t\t   \"stringValue\" : \"REJ_SDD\"\r\n    \t\t} , \r\n    \t\t{ \r\n    \t\t   \"code\":\"RejectSepaJob_fileNameExtension\", \r\n    \t\t   \"stringValue\" : \"xml\"\r\n    \t\t} , \r\n    \t\t\r\n    \t\t{ \r\n    \t\t   \"code\":\"RejectSepaJob_creditOrDebit\", \r\n    \t\t   \"stringValue\" : \"Credit\"\r\n    \t\t} , \r\n    \t\t{ \r\n    \t\t   \"code\":\"RejectSepaJob_ddRequestBuilder\", \r\n    \t\t   \"entityReferenceValue\" : {\r\n    \t\t        \"classname\" : \"org.meveo.model.payments.DDRequestBuilder\" ,\r\n    \t\t        \"code\" : \"dd_builder_reject\"\r\n    \t\t   }\r\n    \t\t}\r\n    \t] \r\n    }\r\n}"
						},
						"url": {
							"raw": "{{opencell.url}}/jobInstance/createOrUpdate",
							"host": [
								"{{opencell.url}}"
							],
							"path": [
								"jobInstance",
								"createOrUpdate"
							]
						}
					},
					"response": []
				},
				{
					"name": "Create RejectRefundSepaJob",
					"event": [
						{
							"listen": "test",
							"script": {
								"id": "3627b2d8-312b-4b23-b596-3e36ccf1994e",
								"exec": [
									"var jsonData = JSON.parse(responseBody);",
									"tests[\"is.success\"] = jsonData.status === \"SUCCESS\";"
								],
								"type": "text/javascript"
							}
						}
					],
					"request": {
						"auth": {
							"type": "basic",
							"basic": [
								{
									"key": "username",
									"value": "{{opencell.username}}",
									"type": "string"
								},
								{
									"key": "password",
									"value": "{{opencell.password}}",
									"type": "string"
								}
							]
						},
						"method": "POST",
						"header": [
							{
								"key": "Content-Type",
								"value": "application/json"
							},
							{
								"key": "Proxy-Authorization",
								"type": "text",
								"value": "{{proxy.auth}}"
							}
						],
						"body": {
							"mode": "raw",
							"raw": "{\r\n    \"code\": \"RejectRefundSepaJob\",\r\n    \"description\": \"Rejet Sepa direct debit Job\",\r\n    \"jobCategory\": \"ACCOUNT_RECEIVABLES\",\r\n    \"jobTemplate\": \"SepaRejectedTransactionsJob\" , \r\n    \"customFields\" : {\r\n    \t\"customField\": [ \r\n    \t\t{ \r\n    \t\t   \"code\":\"RejectSepaJob_inputDir\", \r\n    \t\t   \"stringValue\" : \"/finance/rejet/sct\"\r\n    \t\t} , \r\n    \t\t{ \r\n    \t\t   \"code\":\"RejectSepaJob_fileNamePrefix\", \r\n    \t\t   \"stringValue\" : \"REJ_SCT\"\r\n    \t\t} , \r\n    \t\t{ \r\n    \t\t   \"code\":\"RejectSepaJob_fileNameExtension\", \r\n    \t\t   \"stringValue\" : \"xml\"\r\n    \t\t} , \r\n    \t\t{ \r\n    \t\t   \"code\":\"RejectSepaJob_creditOrDebit\", \r\n    \t\t   \"stringValue\" : \"Debit\"\r\n    \t\t} ,\r\n    \t\t{ \r\n    \t\t   \"code\":\"RejectSepaJob_ddRequestBuilder\", \r\n    \t\t   \"entityReferenceValue\" : {\r\n    \t\t        \"classname\" : \"org.meveo.model.payments.DDRequestBuilder\" ,\r\n    \t\t        \"code\" : \"dd_builder_reject\"\r\n    \t\t   }\r\n    \t\t}\r\n    \t] \r\n    }\r\n}"
						},
						"url": {
							"raw": "{{opencell.url}}/jobInstance/createOrUpdate",
							"host": [
								"{{opencell.url}}"
							],
							"path": [
								"jobInstance",
								"createOrUpdate"
							]
						}
					},
					"response": []
				}
			],
			"event": [
				{
					"listen": "prerequest",
					"script": {
						"id": "1b0ae977-1a29-4be9-a4df-6f772fdd2cd8",
						"type": "text/javascript",
						"exec": [
							""
						]
					}
				},
				{
					"listen": "test",
					"script": {
						"id": "a7991502-7e2e-463d-a590-dc87985513f9",
						"type": "text/javascript",
						"exec": [
							""
						]
					}
				}
			]
		},
		{
			"name": "#489 - #550",
			"item": [
				{
					"name": "Setup",
					"item": [
						{
							"name": "Settings",
							"item": [
								{
									"name": "Global settings",
									"item": [
										{
											"name": "Scripts",
											"item": [
												{
													"name": "Invoice Scripts",
													"item": [
														{
															"name": "Invoice Xml Script",
															"event": [
																{
																	"listen": "test",
																	"script": {
																		"id": "72c2aba1-772d-4d0f-904c-79804d8151bb",
																		"exec": [
																			"var jsonData = JSON.parse(responseBody);",
																			"tests[\"is.success\"] = jsonData.actionStatus.status === \"SUCCESS\";",
																			"tests[\"is.compiled\"] = jsonData.compilationErrors.length === 0;",
																			""
																		],
																		"type": "text/javascript"
																	}
																}
															],
															"request": {
																"auth": {
																	"type": "basic",
																	"basic": [
																		{
																			"key": "username",
																			"value": "{{opencell.username}}",
																			"type": "string"
																		},
																		{
																			"key": "password",
																			"value": "{{opencell.password}}",
																			"type": "string"
																		},
																		{
																			"key": "saveHelperData",
																			"value": true,
																			"type": "boolean"
																		},
																		{
																			"key": "showPassword",
																			"value": false,
																			"type": "boolean"
																		}
																	]
																},
																"method": "POST",
																"header": [
																	{
																		"key": "Proxy-Authorization",
																		"value": "{{proxy.auth}}"
																	},
																	{
																		"key": "Content-Type",
																		"value": "application/json"
																	},
																	{
																		"key": "Authorization",
																		"value": "Basic b3BlbmNlbGwuYWRtaW46b3BlbmNlbGwuYWRtaW4="
																	}
																],
																"body": {
																	"mode": "raw",
																	"raw": "{\r\n    \"code\": \"org.meveo.service.script.InvoiceXmlScript\",\r\n    \"description\": \"Invoice Xml Script\",\r\n    \"type\": \"JAVA\",\r\n    \"script\": \"package org.meveo.service.script;\\r\\n\\r\\nimport org.meveo.admin.exception.BusinessException;\\r\\nimport org.meveo.commons.utils.ParamBean;\\r\\nimport org.meveo.commons.utils.StringUtils;\\r\\nimport org.meveo.model.ICustomFieldEntity;\\r\\nimport org.meveo.model.admin.Seller;\\r\\nimport org.meveo.model.billing.ChargeInstance;\\r\\nimport org.meveo.model.billing.Country;\\r\\nimport org.meveo.model.billing.Invoice;\\r\\nimport org.meveo.model.billing.InvoiceConfiguration;\\r\\nimport org.meveo.model.billing.OneShotChargeInstance;\\r\\nimport org.meveo.model.billing.RatedTransaction;\\r\\nimport org.meveo.model.billing.RecurringChargeInstance;\\r\\nimport org.meveo.model.billing.ServiceInstance;\\r\\nimport org.meveo.model.billing.Subscription;\\r\\nimport org.meveo.model.billing.UsageChargeInstance;\\r\\nimport org.meveo.model.billing.WalletOperation;\\r\\nimport org.meveo.model.catalog.OfferServiceTemplate;\\r\\nimport org.meveo.model.catalog.OfferTemplate;\\r\\nimport org.meveo.model.crm.CustomFieldTemplate;\\r\\nimport org.meveo.model.crm.Provider;\\r\\nimport org.meveo.model.payments.OperationCategoryEnum;\\r\\nimport org.meveo.model.shared.ContactInformation;\\r\\nimport org.meveo.model.shared.DateUtils;\\r\\nimport org.meveo.service.admin.impl.SellerService;\\r\\nimport org.meveo.service.billing.impl.RatedTransactionService;\\r\\nimport org.meveo.service.billing.impl.SubscriptionService;\\r\\nimport org.meveo.service.billing.impl.XMLInvoiceCreator;\\r\\nimport org.meveo.service.catalog.impl.OfferTemplateService;\\r\\nimport org.meveo.service.crm.impl.CustomFieldInstanceService;\\r\\nimport org.meveo.service.crm.impl.CustomFieldTemplateService;\\r\\nimport org.meveo.service.crm.impl.ProviderService;\\r\\nimport org.meveo.service.script.Script;\\r\\nimport org.w3c.dom.Document;\\r\\nimport org.w3c.dom.Element;\\r\\nimport org.w3c.dom.Node;\\r\\nimport org.w3c.dom.NodeList;\\r\\nimport org.w3c.dom.Text;\\r\\n\\r\\nimport javax.xml.xpath.XPath;\\r\\nimport javax.xml.xpath.XPathConstants;\\r\\nimport javax.xml.xpath.XPathExpression;\\r\\nimport javax.xml.xpath.XPathExpressionException;\\r\\nimport javax.xml.xpath.XPathFactory;\\r\\nimport java.io.File;\\r\\nimport java.math.BigDecimal;\\r\\nimport java.math.RoundingMode;\\r\\nimport java.text.DecimalFormat;\\r\\nimport java.text.DecimalFormatSymbols;\\r\\nimport java.text.SimpleDateFormat;\\r\\nimport java.util.ArrayList;\\r\\nimport java.util.Comparator;\\r\\nimport java.util.Date;\\r\\nimport java.util.List;\\r\\nimport java.util.Locale;\\r\\nimport java.util.Map;\\r\\nimport java.util.stream.Collectors;\\r\\n\\r\\n/**\\r\\n * @author Abdellatif BARI\\r\\n */\\r\\npublic class InvoiceXmlScript extends Script {\\r\\n\\r\\n    private OfferTemplateService offerTemplateService = (OfferTemplateService) getServiceInterface(\\\"OfferTemplateService\\\");\\r\\n    private SellerService sellerService = (SellerService) getServiceInterface(\\\"SellerService\\\");\\r\\n    private RatedTransactionService ratedTransactionService = (RatedTransactionService) getServiceInterface(\\\"RatedTransactionService\\\");\\r\\n    private SubscriptionService subscriptionService = (SubscriptionService) getServiceInterface(\\\"SubscriptionService\\\");\\r\\n    private CustomFieldInstanceService cfiService = (CustomFieldInstanceService) getServiceInterface(\\\"CustomFieldInstanceService\\\");\\r\\n    private CustomFieldTemplateService cftService = (CustomFieldTemplateService) getServiceInterface(\\\"CustomFieldTemplateService\\\");\\r\\n    private Provider provider = ((ProviderService) getServiceInterface(\\\"ProviderService\\\")).getProvider();\\r\\n\\r\\n    /**\\r\\n     * The custom field of Serenity offer code.\\r\\n     */\\r\\n    private final String CF_PROV_FD_SERENITY_OFFERS_CATEGORY = (String) cfiService.getCFValue(provider, \\\"CF_PROV_FD_SERENITY_OFFERS_CATEGORY\\\");\\r\\n\\r\\n    /**\\r\\n     * The custom field of fnac card offer code.\\r\\n     */\\r\\n    private final String CF_PROV_FD_FNAC_OFFER_CATEGORY = (String) cfiService.getCFValue(provider, \\\"CF_PROV_FD_FNAC_OFFER_CATEGORY\\\");\\r\\n\\r\\n    /**\\r\\n     * The custom field of charges promotions sub category code.\\r\\n     */\\r\\n    private final String CF_PROV_FD_DISCOUNTS_PROMOTIONS_SUB_CATEGORY_CODE = (String) cfiService.getCFValue(provider, \\\"CF_PROV_FD_DISCOUNTS_PROMOTIONS_SUB_CATEGORY_CODE\\\");\\r\\n\\r\\n    /**\\r\\n     * The custom field of discounts promotions sub category label.\\r\\n     */\\r\\n    private final String CF_PROV_FD_DISCOUNTS_PROMOTIONS_SUB_CATEGORY_LABEL = (String) cfiService.getCFValue(provider, \\\"CF_PROV_FD_DISCOUNTS_PROMOTIONS_SUB_CATEGORY_LABEL\\\");\\r\\n\\r\\n    /**\\r\\n     * The custom field of repayment duration.\\r\\n     */\\r\\n    private final Long CF_PROV_FD_REPAYMENT_DURATION = (Long) cfiService.getCFValue(provider, \\\"CF_PROV_FD_REPAYMENT_DURATION\\\");\\r\\n\\r\\n    /**\\r\\n     * The custom field of agreement duration.\\r\\n     */\\r\\n    private final static String CF_OF_SU_FD_TRY_DURATION = \\\"CF_OF_SU_FD_TRY_DURATION\\\";\\r\\n\\r\\n    /**\\r\\n     * default date format.\\r\\n     */\\r\\n    private static String DEFAULT_DATE_PATTERN = ParamBean.getInstance().getProperty(\\\"invoice.dateFormat\\\", \\\"dd/MM/yyyy\\\");\\r\\n\\r\\n    /**\\r\\n     * date format.\\r\\n     */\\r\\n    public static String DATE_TIME_PATTERN = \\\"yyyy-MM-dd'T'hh:mm:ss\\\";\\r\\n\\r\\n    /**\\r\\n     * Round a number\\r\\n     *\\r\\n     * @param amount the amount\\r\\n     * @param scale  the scale\\r\\n     * @return the rounded number\\r\\n     */\\r\\n    private BigDecimal round(BigDecimal amount, Integer scale) {\\r\\n        if (amount == null) {\\r\\n            return null;\\r\\n        }\\r\\n        if (scale == null) {\\r\\n            scale = 2;\\r\\n        }\\r\\n\\r\\n        amount = amount.setScale(scale, RoundingMode.HALF_UP);\\r\\n        return amount;\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * Round a number in string format.\\r\\n     *\\r\\n     * @param amount the amount\\r\\n     * @param scale  the scale\\r\\n     * @return the rounded number\\r\\n     */\\r\\n    private String roundToString(BigDecimal amount, Integer scale) {\\r\\n        amount = round(amount, scale);\\r\\n        if (amount != null) {\\r\\n            return amount.toPlainString();\\r\\n        }\\r\\n        return null;\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * Get the child element\\r\\n     *\\r\\n     * @param parent the parent element\\r\\n     * @param name   the element name\\r\\n     * @return the child element\\r\\n     */\\r\\n    private static Element getChild(Element parent, String name) {\\r\\n        for (Node child = parent.getFirstChild(); child != null; child = child.getNextSibling()) {\\r\\n            if (child instanceof Element && name.equals(child.getNodeName()))\\r\\n                return (Element) child;\\r\\n        }\\r\\n        return null;\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * remove all node children\\r\\n     *\\r\\n     * @param node the node\\r\\n     */\\r\\n    public void removeChildNodes(Node node) {\\r\\n        NodeList children = node.getChildNodes();\\r\\n        int nodeCount = children.getLength();\\r\\n\\r\\n        for (int i = 0; i < nodeCount; i++) {\\r\\n            node.removeChild(children.item(0));\\r\\n        }\\r\\n\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * remove child node\\r\\n     *\\r\\n     * @param node\\r\\n     * @param nameElementToRemove\\r\\n     */\\r\\n    public void removeChildNode(Node node, String nameElementToRemove) {\\r\\n        Element elementToRemove = getChild((Element) node, nameElementToRemove);\\r\\n        if (elementToRemove != null) {\\r\\n            node.removeChild(elementToRemove);\\r\\n        }\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * add node list to node\\r\\n     *\\r\\n     * @param node     the node\\r\\n     * @param nodeList the node list\\r\\n     */\\r\\n    public void addChildNodes(Node node, List<Element> nodeList) {\\r\\n        for (Element element : nodeList) {\\r\\n            node.appendChild(element);\\r\\n        }\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * Get the iso 23 language\\r\\n     *\\r\\n     * @param langIso3 the iso 3 language\\r\\n     * @return the iso 23 language\\r\\n     */\\r\\n    private String getLangIso1FromLangIso23(String langIso3) {\\r\\n        String[] languages = Locale.getISOLanguages();\\r\\n        for (String language : languages) {\\r\\n            Locale locale = new Locale(language);\\r\\n            if (locale.getISO3Language().toUpperCase().equals(langIso3)) {\\r\\n                return language;\\r\\n            }\\r\\n        }\\r\\n        return null;\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * format the amount\\r\\n     *\\r\\n     * @param amount   the amount\\r\\n     * @param language the language\\r\\n     * @return the string format of amount\\r\\n     */\\r\\n    private String format(BigDecimal amount, String language) {\\r\\n        if (amount != null) {\\r\\n            String patern = \\\"###,##0.00\\\";\\r\\n            DecimalFormat df = null;\\r\\n            if (StringUtils.isBlank(language)) {\\r\\n                DecimalFormatSymbols formatSymbols = new DecimalFormatSymbols(new Locale(language));\\r\\n                df = new DecimalFormat(patern, formatSymbols);\\r\\n            } else {\\r\\n                df = new DecimalFormat(patern);\\r\\n            }\\r\\n            return df.format(amount.doubleValue());\\r\\n        }\\r\\n        return null;\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * addDaysToDate\\r\\n     *\\r\\n     * @param date the date\\r\\n     * @param days the days\\r\\n     * @return the date plus the number of days\\r\\n     */\\r\\n    private String addDaysToDate(String date, Integer days) {\\r\\n        Date newDate = DateUtils.parseDateWithPattern(date, DEFAULT_DATE_PATTERN);\\r\\n        if (newDate != null && days != null) {\\r\\n            String resultDate = DateUtils.formatDateWithPattern(DateUtils.addDaysToDate(newDate, days), DEFAULT_DATE_PATTERN);\\r\\n            if (!StringUtils.isBlank(resultDate)) {\\r\\n                return resultDate;\\r\\n            }\\r\\n        }\\r\\n        return date;\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * date comparator\\r\\n     *\\r\\n     * @param line1    the line element\\r\\n     * @param line2    the line element\\r\\n     * @param dateName the date name to compare\\r\\n     * @return the result of comparator\\r\\n     */\\r\\n    private int dateComparator(Element line1, Element line2, String dateName) {\\r\\n        if (line1.getAttribute(dateName) == null) {\\r\\n            return -1;\\r\\n        }\\r\\n        if (line2.getAttribute(dateName) == null) {\\r\\n            return 1;\\r\\n        }\\r\\n        return DateUtils.parseDateWithPattern(line1.getAttribute(dateName), DEFAULT_DATE_PATTERN)\\r\\n                .compareTo(DateUtils.parseDateWithPattern(line2.getAttribute(dateName), DEFAULT_DATE_PATTERN));\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * label comparator\\r\\n     *\\r\\n     * @param line1 the line element\\r\\n     * @param line2 the line element\\r\\n     * @return the result of comparator\\r\\n     */\\r\\n    private int labelComparator(Element line1, Element line2) {\\r\\n        if (getChild(line1, \\\"label\\\") == null || StringUtils.isBlank(getChild(line1, \\\"label\\\").getNodeValue())) {\\r\\n            return -1;\\r\\n        }\\r\\n        if (getChild(line2, \\\"label\\\") == null || StringUtils.isBlank(getChild(line2, \\\"label\\\").getNodeValue())) {\\r\\n            return 1;\\r\\n        }\\r\\n        return getChild(line1, \\\"label\\\").getNodeValue().compareTo(getChild(line2, \\\"label\\\").getNodeValue());\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * get amount from string\\r\\n     *\\r\\n     * @param amountString the amount string\\r\\n     * @return\\r\\n     */\\r\\n    private BigDecimal getAmount(String amountString) {\\r\\n        BigDecimal amount;\\r\\n        try {\\r\\n            amount = new BigDecimal(amountString);\\r\\n        } catch (NumberFormatException nfe) {\\r\\n            log.debug(\\\"invalid amount\\\");\\r\\n            amount = BigDecimal.ZERO;\\r\\n        }\\r\\n        return amount;\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * get amount attribute\\r\\n     *\\r\\n     * @param element             the element\\r\\n     * @param amountAttributeName the amount attribute name\\r\\n     * @return\\r\\n     */\\r\\n    private BigDecimal getAmountAttribute(Element element, String amountAttributeName) {\\r\\n        BigDecimal amount;\\r\\n        try {\\r\\n            amount = new BigDecimal(element.getAttribute(amountAttributeName));\\r\\n        } catch (NumberFormatException nfe) {\\r\\n            log.debug(\\\"invalid amount {} of element {}\\\", element.getAttribute(amountAttributeName), element.getAttribute(\\\"code\\\"));\\r\\n            amount = BigDecimal.ZERO;\\r\\n        }\\r\\n        return amount;\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * reset amounts attributes\\r\\n     *\\r\\n     * @param element the element node\\r\\n     */\\r\\n    private void resetAmountsAttributes(Element element) {\\r\\n        if (element != null) {\\r\\n            element.setAttribute(\\\"amountWithoutTax\\\", roundToString(BigDecimal.ZERO, null));\\r\\n            element.setAttribute(\\\"amountWithTax\\\", roundToString(BigDecimal.ZERO, null));\\r\\n        }\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * set amounts attributes\\r\\n     *\\r\\n     * @param element          the element node\\r\\n     * @param amountWithoutTax the amount without tax\\r\\n     * @param amountWithTax    the amount with tax\\r\\n     */\\r\\n    private void setAmountsAttributes(Element element, BigDecimal amountWithoutTax, BigDecimal amountWithTax) {\\r\\n        if (element != null) {\\r\\n            element.setAttribute(\\\"amountWithoutTax\\\", roundToString(amountWithoutTax, null));\\r\\n            element.setAttribute(\\\"amountWithTax\\\", roundToString(amountWithTax, null));\\r\\n        }\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * update amounts attributes\\r\\n     *\\r\\n     * @param element    the element\\r\\n     * @param subElement the sub element\\r\\n     */\\r\\n    private void updateAmountsAttributes(Element element, Element subElement) {\\r\\n        if (element != null && subElement != null) {\\r\\n\\r\\n            BigDecimal amountWithoutTax = getAmountAttribute(element, \\\"amountWithoutTax\\\");\\r\\n            amountWithoutTax = amountWithoutTax.add(getAmountAttribute(subElement, \\\"amountWithoutTax\\\"));\\r\\n            element.setAttribute(\\\"amountWithoutTax\\\", roundToString(amountWithoutTax, null));\\r\\n\\r\\n            BigDecimal amountWithTax = getAmountAttribute(element, \\\"amountWithTax\\\");\\r\\n            amountWithTax = amountWithTax.add(getAmountAttribute(subElement, \\\"amountWithTax\\\"));\\r\\n            element.setAttribute(\\\"amountWithTax\\\", roundToString(amountWithTax, null));\\r\\n        }\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * update amounts elements\\r\\n     *\\r\\n     * @param element the element\\r\\n     */\\r\\n    private void resetAmountsElements(Element element) {\\r\\n        if (element != null) {\\r\\n\\r\\n            // amountWithoutTax\\r\\n            Element amountWithoutTaxElement = getChild(element, \\\"amountWithoutTax\\\");\\r\\n            if (amountWithoutTaxElement != null) {\\r\\n                amountWithoutTaxElement.setTextContent(roundToString(BigDecimal.ZERO, null));\\r\\n            }\\r\\n\\r\\n            // amountWithTax\\r\\n            Element amountWithTaxElement = getChild(element, \\\"amountWithTax\\\");\\r\\n            if (amountWithTaxElement != null) {\\r\\n                amountWithTaxElement.setTextContent(roundToString(BigDecimal.ZERO, null));\\r\\n            }\\r\\n\\r\\n            //netToPay\\r\\n            Element netToPayElement = getChild(element, \\\"netToPay\\\");\\r\\n            if (netToPayElement != null) {\\r\\n                netToPayElement.setTextContent(roundToString(BigDecimal.ZERO, null));\\r\\n            }\\r\\n        }\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * update amounts elements\\r\\n     *\\r\\n     * @param element    the element\\r\\n     * @param subElement the sub element\\r\\n     */\\r\\n    private void updateAmountsElements(Element element, Element subElement) {\\r\\n        if (element != null && subElement != null) {\\r\\n\\r\\n            // amountWithoutTax\\r\\n            Element amountWithoutTaxElement = getChild(element, \\\"amountWithoutTax\\\");\\r\\n            if (amountWithoutTaxElement != null) {\\r\\n                String amountAttributeName = \\\"amountWithoutTax\\\";\\r\\n                if (subElement.hasAttribute(\\\"discountAmountWithoutTax\\\")) {\\r\\n                    amountAttributeName = \\\"discountAmountWithoutTax\\\";\\r\\n                }\\r\\n                BigDecimal amountWithoutTax = getAmount(amountWithoutTaxElement.getTextContent());\\r\\n                amountWithoutTax = amountWithoutTax.add(getAmountAttribute(subElement, amountAttributeName));\\r\\n                amountWithoutTaxElement.setTextContent(roundToString(amountWithoutTax, null));\\r\\n            }\\r\\n\\r\\n            // amountWithTax\\r\\n            Element amountWithTaxElement = getChild(element, \\\"amountWithTax\\\");\\r\\n            BigDecimal amountWithTax = BigDecimal.ZERO;\\r\\n            if (amountWithTaxElement != null) {\\r\\n                String amountAttributeName = \\\"amountWithTax\\\";\\r\\n                if (subElement.hasAttribute(\\\"discountAmountWithTax\\\")) {\\r\\n                    amountAttributeName = \\\"discountAmountWithTax\\\";\\r\\n                }\\r\\n                amountWithTax = getAmount(amountWithTaxElement.getTextContent());\\r\\n                amountWithTax = amountWithTax.add(getAmountAttribute(subElement, amountAttributeName));\\r\\n                amountWithTaxElement.setTextContent(roundToString(amountWithTax, null));\\r\\n            }\\r\\n\\r\\n            //netToPay\\r\\n            Element netToPayElement = getChild(element, \\\"netToPay\\\");\\r\\n            if (netToPayElement != null) {\\r\\n                netToPayElement.setTextContent(roundToString(amountWithTax, null));\\r\\n            }\\r\\n        }\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * @param entity given entity to find CFs\\r\\n     * @param doc    root DOM document\\r\\n     * @param parent parent node\\r\\n     */\\r\\n    private void addCustomFields(ICustomFieldEntity entity, Document doc, Element parent) {\\r\\n        addCustomFields(entity, doc, parent, false);\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * @param entity                  given entity to find CFs\\r\\n     * @param doc                     root DOM document\\r\\n     * @param parent                  parent node\\r\\n     * @param includeParentCFEntities true/false which defines the need for parent CFs\\r\\n     */\\r\\n    private void addCustomFields(ICustomFieldEntity entity, Document doc, Element parent, boolean includeParentCFEntities) {\\r\\n        InvoiceConfiguration invoiceConfiguration = provider.getInvoiceConfiguration();\\r\\n        if (invoiceConfiguration != null && invoiceConfiguration.getDisplayCfAsXML() != null && invoiceConfiguration.getDisplayCfAsXML()) {\\r\\n            Element customFieldsTag = cfiService.getCFValuesAsDomElement(entity, doc, includeParentCFEntities);\\r\\n            if (customFieldsTag.hasChildNodes()) {\\r\\n                parent.appendChild(customFieldsTag);\\r\\n            }\\r\\n        } else {\\r\\n            String json = cfiService.getCFValuesAsJson(entity, includeParentCFEntities);\\r\\n            if (json != null && json.length() > 0) {\\r\\n                parent.setAttribute(\\\"customFields\\\", json);\\r\\n            }\\r\\n        }\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * Add seller address to seller tag\\r\\n     *\\r\\n     * @param seller       instance of entity\\r\\n     * @param doc          document\\r\\n     * @param parent       parent node\\r\\n     * @param languageCode code of language\\r\\n     * @author akadid abdelmounaim\\r\\n     * @lastModifiedVersion 5.0\\r\\n     */\\r\\n    public void addAdress(Seller seller, Document doc, Element parent, String languageCode) {\\r\\n        log.debug(\\\"add address to seller\\\");\\r\\n\\r\\n        Element addressTag = doc.createElement(\\\"address\\\");\\r\\n        Element address1 = doc.createElement(\\\"address1\\\");\\r\\n        if (seller.getAddress() != null && seller.getAddress().getAddress1() != null) {\\r\\n            Text adress1Txt = doc.createTextNode(seller.getAddress().getAddress1());\\r\\n            address1.appendChild(adress1Txt);\\r\\n        }\\r\\n        addressTag.appendChild(address1);\\r\\n\\r\\n        Element address2 = doc.createElement(\\\"address2\\\");\\r\\n        if (seller.getAddress() != null && seller.getAddress().getAddress2() != null) {\\r\\n            Text adress2Txt = doc.createTextNode(seller.getAddress().getAddress2());\\r\\n            address2.appendChild(adress2Txt);\\r\\n        }\\r\\n        addressTag.appendChild(address2);\\r\\n\\r\\n        Element address3 = doc.createElement(\\\"address3\\\");\\r\\n        if (seller.getAddress() != null && seller.getAddress().getAddress3() != null) {\\r\\n            Text adress3Txt = doc.createTextNode(seller.getAddress().getAddress3() != null ? seller.getAddress().getAddress3() : \\\"\\\");\\r\\n            address3.appendChild(adress3Txt);\\r\\n        }\\r\\n        addressTag.appendChild(address3);\\r\\n\\r\\n        Element city = doc.createElement(\\\"city\\\");\\r\\n        if (seller.getAddress() != null && seller.getAddress().getCity() != null) {\\r\\n            Text cityTxt = doc.createTextNode(seller.getAddress().getCity() != null ? seller.getAddress().getCity() : \\\"\\\");\\r\\n            city.appendChild(cityTxt);\\r\\n        }\\r\\n        addressTag.appendChild(city);\\r\\n\\r\\n        Element postalCode = doc.createElement(\\\"postalCode\\\");\\r\\n        if (seller.getAddress() != null && seller.getAddress().getZipCode() != null) {\\r\\n            Text postalCodeTxt = doc.createTextNode(seller.getAddress().getZipCode() != null ? seller.getAddress().getZipCode() : \\\"\\\");\\r\\n            postalCode.appendChild(postalCodeTxt);\\r\\n        }\\r\\n        addressTag.appendChild(postalCode);\\r\\n\\r\\n        Element state = doc.createElement(\\\"state\\\");\\r\\n        addressTag.appendChild(state);\\r\\n\\r\\n        Element country = doc.createElement(\\\"country\\\");\\r\\n        Element countryName = doc.createElement(\\\"countryName\\\");\\r\\n        if (seller.getAddress() != null && seller.getAddress().getCountry() != null) {\\r\\n            Text countryTxt = doc.createTextNode(seller.getAddress().getCountry() != null ? seller.getAddress().getCountry().getCountryCode() : \\\"\\\");\\r\\n            country.appendChild(countryTxt);\\r\\n            Country countryEntity = seller.getAddress().getCountry();\\r\\n            Text countryNameTxt;\\r\\n            if (countryEntity.getDescriptionI18n() != null && countryEntity.getDescriptionI18n().get(languageCode) != null) {\\r\\n                // get country description by language code\\r\\n                countryNameTxt = doc.createTextNode(countryEntity.getDescriptionI18n().get(languageCode));\\r\\n            } else {\\r\\n                countryNameTxt = doc.createTextNode(countryEntity.getDescription());\\r\\n            }\\r\\n            countryName.appendChild(countryNameTxt);\\r\\n        }\\r\\n        addressTag.appendChild(country);\\r\\n        addressTag.appendChild(countryName);\\r\\n        parent.appendChild(addressTag);\\r\\n    }\\r\\n\\r\\n    public Element toContactTag(Document doc, ContactInformation contactInfo) {\\r\\n        Element contactTag = doc.createElement(\\\"contact\\\");\\r\\n        if (contactInfo != null) {\\r\\n            contactTag.setAttribute(\\\"email\\\", contactInfo.getEmail() == null ? \\\"\\\" : contactInfo.getEmail());\\r\\n            contactTag.setAttribute(\\\"fax\\\", contactInfo.getFax() == null ? \\\"\\\" : contactInfo.getFax());\\r\\n            contactTag.setAttribute(\\\"mobile\\\", contactInfo.getMobile() == null ? \\\"\\\" : contactInfo.getMobile());\\r\\n            contactTag.setAttribute(\\\"phone\\\", contactInfo.getPhone() == null ? \\\"\\\" : contactInfo.getPhone());\\r\\n        }\\r\\n        return contactTag;\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * Get the OfferServiceTemplate\\r\\n     *\\r\\n     * @param ratedTransaction the rated transaction\\r\\n     * @return the OfferServiceTemplate\\r\\n     */\\r\\n    private OfferServiceTemplate getOfferServiceTemplate(RatedTransaction ratedTransaction) {\\r\\n\\r\\n        OfferTemplate offerTemplate = offerTemplateService.findByCode(ratedTransaction.getOfferCode());\\r\\n        List<OfferServiceTemplate> offerServiceTemplates = offerTemplate.getOfferServiceTemplates();\\r\\n\\r\\n        for (OfferServiceTemplate offerServiceTemplate : offerServiceTemplates) {\\r\\n            if (offerServiceTemplate.getServiceTemplate().getServiceChargeTemplateSubscriptionByChargeCode(ratedTransaction.getCode()) != null) {\\r\\n                return offerServiceTemplate;\\r\\n            }\\r\\n            if (offerServiceTemplate.getServiceTemplate().getServiceChargeTemplateTerminationByChargeCode(ratedTransaction.getCode()) != null) {\\r\\n                return offerServiceTemplate;\\r\\n            }\\r\\n            if (offerServiceTemplate.getServiceTemplate().getServiceChargeTemplateUsageByChargeCode(ratedTransaction.getCode()) != null) {\\r\\n                return offerServiceTemplate;\\r\\n            }\\r\\n            if (offerServiceTemplate.getServiceTemplate().getServiceRecurringChargeByChargeCode(ratedTransaction.getCode()) != null) {\\r\\n                return offerServiceTemplate;\\r\\n            }\\r\\n        }\\r\\n\\r\\n        return null;\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * Get the ServiceInstance\\r\\n     *\\r\\n     * @param ratedTransaction the rated transaction\\r\\n     * @return the ServiceInstance\\r\\n     */\\r\\n    private ServiceInstance getServiceInstance(RatedTransaction ratedTransaction) {\\r\\n        ServiceInstance serviceInstance = null;\\r\\n        WalletOperation walletOperation = ratedTransaction.getWalletOperation();\\r\\n        if (walletOperation != null) {\\r\\n            // Retrieve Service Instance\\r\\n            ChargeInstance chargeInstance = walletOperation.getChargeInstance();\\r\\n\\r\\n            if (chargeInstance instanceof RecurringChargeInstance) {\\r\\n                serviceInstance = ((RecurringChargeInstance) walletOperation.getChargeInstance()).getServiceInstance();\\r\\n            } else if (chargeInstance instanceof UsageChargeInstance) {\\r\\n                serviceInstance = ((UsageChargeInstance) walletOperation.getChargeInstance()).getServiceInstance();\\r\\n            } else if (chargeInstance instanceof OneShotChargeInstance) {\\r\\n                serviceInstance = ((OneShotChargeInstance) walletOperation.getChargeInstance()).getSubscriptionServiceInstance();\\r\\n                if (serviceInstance == null) {\\r\\n                    ((OneShotChargeInstance) walletOperation.getChargeInstance()).getTerminationServiceInstance();\\r\\n                }\\r\\n            }\\r\\n\\r\\n        }\\r\\n        return serviceInstance;\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * find the rated transaction by code\\r\\n     *\\r\\n     * @param code the rated transaction code\\r\\n     * @returnthe rated transaction\\r\\n     */\\r\\n    private RatedTransaction findRatedTransactionByCode(String code) {\\r\\n        List<RatedTransaction> ratedTransactions = ratedTransactionService.findByCodeLike(code);\\r\\n        for (RatedTransaction rt : ratedTransactions) {\\r\\n            if (rt.getCode().equals(code)) {\\r\\n                return rt;\\r\\n            }\\r\\n        }\\r\\n        return null;\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * set invoicing threshold\\r\\n     *\\r\\n     * @param invoice    the invoice\\r\\n     * @param document   the xml document\\r\\n     * @param headerNode the header node\\r\\n     */\\r\\n    private void setInvoicingThreshold(Invoice invoice, Document document, Node headerNode) {\\r\\n        if (invoice != null && invoice.getBillingAccount() != null) {\\r\\n            Element invoicingThresholdElement = document.createElement(\\\"invoicingThreshold\\\");\\r\\n            BigDecimal invoicingThreshold = invoice.getBillingAccount().getInvoicingThreshold() == null && invoice.getBillingAccount().getBillingCycle() != null ?\\r\\n                    invoice.getBillingAccount().getBillingCycle().getInvoicingThreshold() : invoice.getBillingAccount().getInvoicingThreshold();\\r\\n            if (invoicingThreshold != null) {\\r\\n                invoicingThresholdElement.setTextContent(roundToString(invoicingThreshold, null));\\r\\n                headerNode.appendChild(invoicingThresholdElement);\\r\\n            }\\r\\n        }\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * set unMatching amount\\r\\n     *\\r\\n     * @param invoice    the invoice\\r\\n     * @param document   the xml document\\r\\n     * @param headerNode the header node\\r\\n     */\\r\\n    private void setUnMatchingAmount(Invoice invoice, Document document, Node headerNode) {\\r\\n        if (invoice != null && invoice.getBillingAccount() != null) {\\r\\n            List<Invoice> invoices = invoice.getBillingAccount().getInvoices();\\r\\n            BigDecimal unMatchingAmount = null;\\r\\n            if (invoices != null && !invoices.isEmpty()) {\\r\\n                unMatchingAmount = BigDecimal.ZERO;\\r\\n                for (Invoice currentInvoice : invoices) {\\r\\n                    //exclude current invoice\\r\\n                    if (!currentInvoice.getId().equals(invoice.getId())) {\\r\\n                        if (currentInvoice.getRecordedInvoice() != null && currentInvoice.getRecordedInvoice().getUnMatchingAmount() != null) {\\r\\n                            if (currentInvoice.getRecordedInvoice().getTransactionCategory() == OperationCategoryEnum.CREDIT) {\\r\\n                                unMatchingAmount = unMatchingAmount.add(currentInvoice.getRecordedInvoice().getUnMatchingAmount().negate());\\r\\n                            } else {\\r\\n                                unMatchingAmount = unMatchingAmount.add(currentInvoice.getRecordedInvoice().getUnMatchingAmount());\\r\\n                            }\\r\\n                        }\\r\\n                    }\\r\\n                }\\r\\n            }\\r\\n\\r\\n            if (unMatchingAmount != null) {\\r\\n                Element unMatchingAmountElement = document.createElement(\\\"unMatchingAmount\\\");\\r\\n                unMatchingAmountElement.setTextContent(roundToString(unMatchingAmount, null));\\r\\n                headerNode.appendChild(unMatchingAmountElement);\\r\\n            }\\r\\n\\r\\n        }\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * set repayment date\\r\\n     *\\r\\n     * @param document   the xml document\\r\\n     * @param xpath      the xpath object\\r\\n     * @param headerNode the header node\\r\\n     * @throws BusinessException the business exception\\r\\n     */\\r\\n    private void setRepaymentDate(Document document, XPath xpath, Node headerNode) throws BusinessException {\\r\\n\\r\\n        Element dueDateElement = (Element) geDueDate(document, xpath);\\r\\n        if (dueDateElement != null) {\\r\\n            String dueDate = dueDateElement.getTextContent();\\r\\n            if (!StringUtils.isBlank(dueDate)) {\\r\\n                String repaymentDate = CF_PROV_FD_REPAYMENT_DURATION != null ? addDaysToDate(dueDate, CF_PROV_FD_REPAYMENT_DURATION.intValue()) : dueDate;\\r\\n                if (!StringUtils.isBlank(repaymentDate)) {\\r\\n                    Element repaymentDateElement = document.createElement(\\\"repaymentDate\\\");\\r\\n                    repaymentDateElement.setTextContent(repaymentDate);\\r\\n                    headerNode.appendChild(repaymentDateElement);\\r\\n                }\\r\\n            }\\r\\n        }\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * set engagement start date\\r\\n     *\\r\\n     * @param document            the xml document\\r\\n     * @param headerNode          the header node\\r\\n     * @param subscriptionElement the subscription element\\r\\n     * @param subscription        the subscription\\r\\n     * @throws BusinessException the business exception\\r\\n     */\\r\\n    private void setEngagementStartDate(Document document, Node headerNode, Element subscriptionElement, Subscription subscription) throws BusinessException {\\r\\n\\r\\n        Element subscriptionDateElement = getChild(subscriptionElement, \\\"subscriptionDate\\\");\\r\\n        if (subscriptionDateElement != null) {\\r\\n            String subscriptionDate = subscriptionDateElement.getTextContent();\\r\\n\\r\\n            if (!StringUtils.isBlank(subscriptionDate)) {\\r\\n                Long tryDuration = (Long) cfiService.getCFValue(subscription, CF_OF_SU_FD_TRY_DURATION);\\r\\n                String engagementStartDate = tryDuration != null ? addDaysToDate(subscriptionDate, tryDuration.intValue()) : subscriptionDate;\\r\\n                if (!StringUtils.isBlank(engagementStartDate)) {\\r\\n                    Element engagementStartDateElement = document.createElement(\\\"engagementStartDate\\\");\\r\\n                    engagementStartDateElement.setTextContent(engagementStartDate);\\r\\n                    headerNode.appendChild(engagementStartDateElement);\\r\\n                }\\r\\n            }\\r\\n        }\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * set end agreement date\\r\\n     *\\r\\n     * @param subscriptionElement the subscription element\\r\\n     */\\r\\n    private void setEndAgreementDate(Element subscriptionElement) {\\r\\n        Element endAgreementDateElement = getChild(subscriptionElement, \\\"endAgreementDate\\\");\\r\\n        if (endAgreementDateElement != null) {\\r\\n            String endAgreementDate = endAgreementDateElement.getTextContent();\\r\\n            if (!StringUtils.isBlank(endAgreementDate)) {\\r\\n                SimpleDateFormat sdf = new SimpleDateFormat(DEFAULT_DATE_PATTERN);\\r\\n                Date endAgreement = DateUtils.parseDateWithPattern(endAgreementDate, DATE_TIME_PATTERN);\\r\\n                if (endAgreement != null) {\\r\\n                    endAgreementDateElement.setTextContent(sdf.format(endAgreement));\\r\\n                }\\r\\n            }\\r\\n        }\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * create seller\\r\\n     *\\r\\n     * @param document   the xml document\\r\\n     * @param parentNode the parent node\\r\\n     * @param seller\\r\\n     * @param language\\r\\n     * @return\\r\\n     */\\r\\n    private Element createSeller(Document document, Node parentNode, Seller seller, String language) {\\r\\n        Element sellerElement = null;\\r\\n        if (seller != null) {\\r\\n            sellerElement = document.createElement(\\\"seller\\\");\\r\\n            sellerElement.setAttribute(\\\"code\\\", seller.getCode() != null ? seller.getCode() : \\\"\\\");\\r\\n            sellerElement.setAttribute(\\\"description\\\", seller.getDescription() != null ? seller.getDescription() : \\\"\\\");\\r\\n            addCustomFields(seller, document, sellerElement);\\r\\n            addAdress(seller, document, sellerElement, language);\\r\\n            sellerElement.appendChild(toContactTag(document, seller.getContactInformation()));\\r\\n            parentNode.appendChild(sellerElement);\\r\\n        }\\r\\n        return sellerElement;\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * set seller\\r\\n     *\\r\\n     * @param document   the xml document\\r\\n     * @param xpath      the xpath object\\r\\n     * @param headerNode the header node\\r\\n     * @param language   the language\\r\\n     * @throws BusinessException the business exception\\r\\n     */\\r\\n    private void setSeller(Document document, XPath xpath, Node headerNode, String language) throws BusinessException {\\r\\n\\r\\n        Element sellerElement = (Element) getSeller(document, xpath);\\r\\n        if (sellerElement != null) {\\r\\n            String sellerCode = sellerElement.getAttribute(\\\"code\\\");\\r\\n            if (!StringUtils.isBlank(sellerCode)) {\\r\\n                Seller sellerLevel2 = sellerService.findByCode(sellerCode);\\r\\n                Seller sellerLevel1 = null;\\r\\n                if (sellerLevel2 != null) {\\r\\n                    sellerLevel1 = sellerLevel2.getSeller();\\r\\n                }\\r\\n                Seller sellerLevel0 = null;\\r\\n                if (sellerLevel1 != null) {\\r\\n                    sellerLevel0 = sellerLevel1.getSeller();\\r\\n                }\\r\\n\\r\\n                if (sellerLevel0 != null) {\\r\\n                    Element sellerLevel0Element = createSeller(document, headerNode, sellerLevel0, language);\\r\\n                    createSeller(document, sellerLevel0Element, sellerLevel1, language);\\r\\n                    headerNode.removeChild(sellerElement);\\r\\n                }\\r\\n            }\\r\\n        }\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * set subscriptions\\r\\n     *\\r\\n     * @param document   the xml document\\r\\n     * @param xpath      the xpath object\\r\\n     * @param headerNode the header node element\\r\\n     * @throws BusinessException the business exception\\r\\n     */\\r\\n    private void setSubscriptions(Document document, XPath xpath, Node headerNode) throws BusinessException {\\r\\n        NodeList domSubscriptions = getSubscriptions(document, xpath);\\r\\n        if (domSubscriptions != null && domSubscriptions.getLength() > 0) {\\r\\n            for (int i = 0; i < domSubscriptions.getLength(); i++) {\\r\\n                Element subscriptionElement = (Element) domSubscriptions.item(i);\\r\\n                Long idSubscription = Long.valueOf(subscriptionElement.getAttribute(\\\"id\\\"));\\r\\n                Subscription subscription = subscriptionService.findById(idSubscription);\\r\\n                subscriptionElement.setAttribute(\\\"status\\\", String.valueOf(subscription.getStatus().getId()));\\r\\n                setEngagementStartDate(document, headerNode, subscriptionElement, subscription);\\r\\n                setEndAgreementDate(subscriptionElement);\\r\\n            }\\r\\n        }\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * set offer Type\\r\\n     *\\r\\n     * @param document the xml document\\r\\n     * @param xpath    the xpath object\\r\\n     * @throws BusinessException the business exception\\r\\n     */\\r\\n    private void setOfferType(Document document, XPath xpath) throws BusinessException {\\r\\n        NodeList domOffers = getOffers(document, xpath);\\r\\n        if (domOffers != null && domOffers.getLength() > 0) {\\r\\n            for (int i = 0; i < domOffers.getLength(); i++) {\\r\\n                Element offer = (Element) domOffers.item(i);\\r\\n                Long idOffer = Long.valueOf(offer.getAttribute(\\\"id\\\"));\\r\\n                OfferTemplate offerTemplate = offerTemplateService.findById(idOffer);\\r\\n                for (org.meveo.model.catalog.OfferTemplateCategory offerTemplateCategory : offerTemplate.getOfferTemplateCategories()) {\\r\\n                    if (offerTemplateCategory.getCode().equalsIgnoreCase(CF_PROV_FD_SERENITY_OFFERS_CATEGORY)) {\\r\\n                        offer.setAttribute(\\\"type\\\", CF_PROV_FD_SERENITY_OFFERS_CATEGORY);\\r\\n                        break;\\r\\n                    }\\r\\n                    if (offerTemplateCategory.getCode().equalsIgnoreCase(CF_PROV_FD_FNAC_OFFER_CATEGORY)) {\\r\\n                        offer.setAttribute(\\\"type\\\", CF_PROV_FD_FNAC_OFFER_CATEGORY);\\r\\n                        break;\\r\\n                    }\\r\\n                }\\r\\n            }\\r\\n        }\\r\\n    }\\r\\n\\r\\n\\r\\n    /**\\r\\n     * Set the invoice period\\r\\n     *\\r\\n     * @param document   the xml document\\r\\n     * @param xpath      the xpath object\\r\\n     * @param headerNode the header node element\\r\\n     * @throws BusinessException the business exception\\r\\n     */\\r\\n    private void setInvoicePeriod(Document document, XPath xpath, Node headerNode) throws BusinessException {\\r\\n        // get all recurring lines\\r\\n        NodeList domLines = getRecurringSubCategoriesLines(document, xpath);\\r\\n\\r\\n        if (domLines != null && domLines.getLength() > 0) {\\r\\n            List<Element> lines = new ArrayList<>();\\r\\n            for (int i = 0; i < domLines.getLength(); i++) {\\r\\n                lines.add((Element) domLines.item(i));\\r\\n            }\\r\\n\\r\\n            Comparator<Element> comparator1 = (line1, line2) -> DateUtils.parseDateWithPattern(line1.getAttribute(\\\"periodStartDate\\\"), DEFAULT_DATE_PATTERN)\\r\\n                    .compareTo(DateUtils.parseDateWithPattern(line2.getAttribute(\\\"periodStartDate\\\"), DEFAULT_DATE_PATTERN));\\r\\n            Comparator<Element> comparator2 = (line1, line2) -> DateUtils.parseDateWithPattern(line1.getAttribute(\\\"periodEndDate\\\"), DEFAULT_DATE_PATTERN)\\r\\n                    .compareTo(DateUtils.parseDateWithPattern(line2.getAttribute(\\\"periodEndDate\\\"), DEFAULT_DATE_PATTERN));\\r\\n\\r\\n            // Sorting the list by periodStartDate asc\\r\\n            lines = lines.stream().sorted(comparator1).collect(Collectors.toList());\\r\\n\\r\\n            // get the min periodStartDate --> periodStartDate invoice\\r\\n\\r\\n            Element periodStartDateElement = document.createElement(\\\"periodStartDate\\\");\\r\\n            periodStartDateElement.setTextContent(lines.get(0).getAttribute(\\\"periodStartDate\\\"));\\r\\n            headerNode.appendChild(periodStartDateElement);\\r\\n\\r\\n            // Sorting the list by periodEndDate desc\\r\\n            lines = lines.stream().sorted(comparator2.reversed()).collect(Collectors.toList());\\r\\n\\r\\n            // get the max periodEndDate --> periodEndDate invoice\\r\\n            String periodEndDate = lines.get(0).getAttribute(\\\"periodEndDate\\\");\\r\\n            if (!StringUtils.isBlank(periodEndDate)) {\\r\\n                String resultDate = addDaysToDate(periodEndDate, -1);\\r\\n                if (!StringUtils.isBlank(resultDate)) {\\r\\n                    Element periodEndDateElement = document.createElement(\\\"periodEndDate\\\");\\r\\n                    periodEndDateElement.setTextContent(resultDate);\\r\\n                    headerNode.appendChild(periodEndDateElement);\\r\\n                }\\r\\n            }\\r\\n        }\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * get provider\\r\\n     *\\r\\n     * @param document the xml document\\r\\n     * @param xpath    the xpath object\\r\\n     * @return the provider\\r\\n     * @throws BusinessException the business exception\\r\\n     */\\r\\n    private Node getProvider(Document document, XPath xpath) throws BusinessException {\\r\\n        try {\\r\\n            XPathExpression providerExpression = xpath\\r\\n                    .compile(\\\"/invoice/header/provider\\\");\\r\\n            return (Node) providerExpression.evaluate(document, XPathConstants.NODE);\\r\\n        } catch (XPathExpressionException e) {\\r\\n            log.error(\\\"getProvider fail\\\", e);\\r\\n            throw new BusinessException(e.getMessage());\\r\\n        }\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * get invoice amount\\r\\n     *\\r\\n     * @param document the xml document\\r\\n     * @param xpath    the xpath object\\r\\n     * @return the invoice amount\\r\\n     * @throws BusinessException the business exception\\r\\n     */\\r\\n    private Node getInvoiceAmount(Document document, XPath xpath) throws BusinessException {\\r\\n        try {\\r\\n            XPathExpression invoiceAmountExpression = xpath\\r\\n                    .compile(\\\"/invoice/amount\\\");\\r\\n            return (Node) invoiceAmountExpression.evaluate(document, XPathConstants.NODE);\\r\\n        } catch (XPathExpressionException e) {\\r\\n            log.error(\\\"getInvoiceAmount fail\\\", e);\\r\\n            throw new BusinessException(e.getMessage());\\r\\n        }\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * get offers\\r\\n     *\\r\\n     * @param document the xml document\\r\\n     * @param xpath    the xpath object\\r\\n     * @return the offers list\\r\\n     * @throws BusinessException the business exception\\r\\n     */\\r\\n    private NodeList getOffers(Document document, XPath xpath) throws BusinessException {\\r\\n        try {\\r\\n            XPathExpression offersExpression = xpath\\r\\n                    .compile(\\\"/invoice/offers/offer\\\");\\r\\n            return (NodeList) offersExpression.evaluate(document, XPathConstants.NODESET);\\r\\n        } catch (XPathExpressionException e) {\\r\\n            log.error(\\\"getOffers fail\\\", e);\\r\\n            throw new BusinessException(e.getMessage());\\r\\n        }\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * get seller\\r\\n     *\\r\\n     * @param document the xml document\\r\\n     * @param xpath    the xpath object\\r\\n     * @return the seller\\r\\n     * @throws BusinessException the business exception\\r\\n     */\\r\\n    private Node getSeller(Document document, XPath xpath) throws BusinessException {\\r\\n        try {\\r\\n            XPathExpression sellerExpression = xpath\\r\\n                    .compile(\\\"/invoice/header/seller\\\");\\r\\n            return (Node) sellerExpression.evaluate(document, XPathConstants.NODE);\\r\\n        } catch (XPathExpressionException e) {\\r\\n            log.error(\\\"getSeller fail\\\", e);\\r\\n            throw new BusinessException(e.getMessage());\\r\\n        }\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * ge due date\\r\\n     *\\r\\n     * @param document the xml document\\r\\n     * @param xpath    the xpath object\\r\\n     * @return the due date\\r\\n     * @throws BusinessException the business exception\\r\\n     */\\r\\n    private Node geDueDate(Document document, XPath xpath) throws BusinessException {\\r\\n        try {\\r\\n            XPathExpression headerCategoriesExpression = xpath.compile(\\\"/invoice/header/dueDate\\\");\\r\\n            return (Node) headerCategoriesExpression.evaluate(document, XPathConstants.NODE);\\r\\n        } catch (XPathExpressionException e) {\\r\\n            log.error(\\\"geDueDate fail\\\", e);\\r\\n            throw new BusinessException(e.getMessage());\\r\\n        }\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * get header categories list\\r\\n     *\\r\\n     * @param document the xml document\\r\\n     * @param xpath    the xpath object\\r\\n     * @return header categories list\\r\\n     * @throws BusinessException the business exception\\r\\n     */\\r\\n    private NodeList getHeaderCategories(Document document, XPath xpath) throws BusinessException {\\r\\n        try {\\r\\n            XPathExpression headerCategoriesExpression = xpath\\r\\n                    .compile(\\\"/invoice/header/categories/category\\\");\\r\\n            return (NodeList) headerCategoriesExpression.evaluate(document, XPathConstants.NODESET);\\r\\n        } catch (XPathExpressionException e) {\\r\\n            log.error(\\\"getHeaderCategories fail\\\", e);\\r\\n            throw new BusinessException(e.getMessage());\\r\\n        }\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * get user accounts\\r\\n     *\\r\\n     * @param document the xml document\\r\\n     * @param xpath    the xpath object\\r\\n     * @return user accounts\\r\\n     * @throws BusinessException the business exception\\r\\n     */\\r\\n    private NodeList getUserAccounts(Document document, XPath xpath) throws BusinessException {\\r\\n        try {\\r\\n            XPathExpression userAccountsExpression = xpath.compile(\\\"/invoice/detail/userAccounts/userAccount\\\");\\r\\n            return (NodeList) userAccountsExpression.evaluate(document, XPathConstants.NODESET);\\r\\n        } catch (XPathExpressionException e) {\\r\\n            log.error(\\\"getUserAccounts fail\\\", e);\\r\\n            throw new BusinessException(e.getMessage());\\r\\n        }\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * get the subscriptions\\r\\n     *\\r\\n     * @param document the xml document\\r\\n     * @param xpath    the xpath object\\r\\n     * @return subscriptions\\r\\n     * @throws BusinessException the business exception\\r\\n     */\\r\\n    private NodeList getSubscriptions(Document document, XPath xpath) throws BusinessException {\\r\\n        try {\\r\\n            XPathExpression subscriptionsExpression = xpath.compile(\\\"/invoice/detail/userAccounts/userAccount/subscriptions/subscription\\\");\\r\\n            return (NodeList) subscriptionsExpression.evaluate(document, XPathConstants.NODESET);\\r\\n        } catch (XPathExpressionException e) {\\r\\n            log.error(\\\"getSubscriptions fail\\\", e);\\r\\n            throw new BusinessException(e.getMessage());\\r\\n        }\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * get user account subCategories list\\r\\n     *\\r\\n     * @param document        the xml document\\r\\n     * @param xpath           the xpath object\\r\\n     * @param subCategoryCode the subCategory code\\r\\n     * @return user account subCategories list\\r\\n     * @throws BusinessException the business exception\\r\\n     */\\r\\n    private NodeList getUserAccountSubCategories(Document document, XPath xpath, String subCategoryCode) throws BusinessException {\\r\\n        try {\\r\\n            XPathExpression userAccountSubCategoriesExpression = xpath\\r\\n                    .compile(\\\"/invoice/detail/userAccounts/userAccount/categories/category/subCategories/subCategory[@code = '\\\" + subCategoryCode + \\\"']\\\");\\r\\n            return (NodeList) userAccountSubCategoriesExpression.evaluate(document, XPathConstants.NODESET);\\r\\n        } catch (XPathExpressionException e) {\\r\\n            log.error(\\\"getUserAccountSubCategories fail\\\", e);\\r\\n            throw new BusinessException(e.getMessage());\\r\\n        }\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * get categories list\\r\\n     *\\r\\n     * @param document the xml document\\r\\n     * @param xpath    the xpath object\\r\\n     * @return categories list\\r\\n     * @throws BusinessException the business exception\\r\\n     */\\r\\n    private NodeList getCategories(Document document, XPath xpath) throws BusinessException {\\r\\n        try {\\r\\n            XPathExpression categoriesExpression = xpath\\r\\n                    .compile(\\\"/invoice/detail/userAccounts/userAccount/categories/category\\\");\\r\\n            return (NodeList) categoriesExpression.evaluate(document, XPathConstants.NODESET);\\r\\n        } catch (XPathExpressionException e) {\\r\\n            log.error(\\\"getCategories fail\\\", e);\\r\\n            throw new BusinessException(e.getMessage());\\r\\n        }\\r\\n    }\\r\\n\\r\\n\\r\\n    /**\\r\\n     * Get the recurring subCategories.\\r\\n     *\\r\\n     * @param document the xml document\\r\\n     * @param xpath    the xpath object\\r\\n     * @return recurring subCategories list\\r\\n     * @throws BusinessException the business exception\\r\\n     */\\r\\n    private NodeList getRecurringSubCategories(Document document, XPath xpath) throws BusinessException {\\r\\n        try {\\r\\n            XPathExpression recurringSubCategoriesExpression = xpath\\r\\n                    .compile(\\\"/invoice/detail/userAccounts/userAccount/categories/category/subCategories/subCategory\\\" +\\r\\n                            \\\"[not(@code = '\\\" + CF_PROV_FD_DISCOUNTS_PROMOTIONS_SUB_CATEGORY_CODE + \\\"') and line[string(@periodStartDate) and string(@periodEndDate)]]\\\");\\r\\n            return (NodeList) recurringSubCategoriesExpression.evaluate(document, XPathConstants.NODESET);\\r\\n        } catch (XPathExpressionException e) {\\r\\n            log.error(\\\"getRecurringSubCategories fail\\\", e);\\r\\n            throw new BusinessException(e.getMessage());\\r\\n        }\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * Get the recurring subCategories lines.\\r\\n     *\\r\\n     * @param document the xml document\\r\\n     * @param xpath    the xpath object\\r\\n     * @return recurring subCategories lines.\\r\\n     * @throws BusinessException\\r\\n     */\\r\\n    private NodeList getRecurringSubCategoriesLines(Document document, XPath xpath) throws BusinessException {\\r\\n        try {\\r\\n            XPathExpression recurringlinesExpression = xpath.compile(\\\"/invoice/detail/userAccounts/userAccount/categories/category/subCategories/\\\" +\\r\\n                    \\\"subCategory[not(@code = '\\\" + CF_PROV_FD_DISCOUNTS_PROMOTIONS_SUB_CATEGORY_CODE + \\\"')]/line[string(@periodStartDate) and string(@periodEndDate)]\\\");\\r\\n            return (NodeList) recurringlinesExpression.evaluate(document, XPathConstants.NODESET);\\r\\n        } catch (XPathExpressionException e) {\\r\\n            log.error(\\\"getRecurringSubCategoriesLines fail\\\", e);\\r\\n            throw new BusinessException(e.getMessage());\\r\\n        }\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * get promotions subCategories list\\r\\n     *\\r\\n     * @param document    the xml document\\r\\n     * @param xpath       the xpath object\\r\\n     * @param userAccount the user account element\\r\\n     * @return promotions subCategories list\\r\\n     * @throws BusinessException the business exception\\r\\n     */\\r\\n    private NodeList getPromotionsSubCategories(Document document, XPath xpath, Element userAccount) throws BusinessException {\\r\\n        try {\\r\\n            String userAccountCode = userAccount.getAttribute(\\\"code\\\");\\r\\n            if (!StringUtils.isBlank(userAccountCode)) {\\r\\n                XPathExpression promotionsSubCategoriesExpression = xpath\\r\\n                        .compile(\\\"/invoice/detail/userAccounts/userAccount[@code = '\\\" + userAccountCode + \\\"']/categories/category/subCategories/subCategory[@code = '\\\" +\\r\\n                                CF_PROV_FD_DISCOUNTS_PROMOTIONS_SUB_CATEGORY_CODE + \\\"']\\\");\\r\\n                return (NodeList) promotionsSubCategoriesExpression.evaluate(document, XPathConstants.NODESET);\\r\\n            }\\r\\n            return null;\\r\\n        } catch (XPathExpressionException e) {\\r\\n            log.error(\\\"getPromotionsSubCategories fail\\\", e);\\r\\n            throw new BusinessException(e.getMessage());\\r\\n        }\\r\\n    }\\r\\n\\r\\n\\r\\n    /**\\r\\n     * Get the discounts promotions node.\\r\\n     *\\r\\n     * @param document        the xml document\\r\\n     * @param xpath           the xpath object\\r\\n     * @param userAccountCode the user account code\\r\\n     * @return discounts promotions node\\r\\n     * @throws BusinessException the business exception\\r\\n     */\\r\\n    private Node getDiscountsPromotionsNode(Document document, XPath xpath, String userAccountCode) throws BusinessException {\\r\\n        try {\\r\\n            if (!StringUtils.isBlank(userAccountCode)) {\\r\\n                XPathExpression discountsPromotionsExpression = xpath.compile(\\\"/invoice/detail/userAccounts/userAccount[@code='\\\" + userAccountCode + \\\"']/discountsPromotions\\\");\\r\\n                return (Node) discountsPromotionsExpression.evaluate(document, XPathConstants.NODE);\\r\\n            }\\r\\n            return null;\\r\\n        } catch (XPathExpressionException e) {\\r\\n            log.error(\\\"getDiscountsPromotionsNode fail\\\", e);\\r\\n            throw new BusinessException(e.getMessage());\\r\\n        }\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * set date pattern\\r\\n     *\\r\\n     * @param document   the xml document\\r\\n     * @param headerNode the header node\\r\\n     */\\r\\n    private void setDatePattern(Document document, Node headerNode) {\\r\\n        Element datePatternElement = document.createElement(\\\"datePattern\\\");\\r\\n        datePatternElement.setTextContent(DEFAULT_DATE_PATTERN);\\r\\n        headerNode.appendChild(datePatternElement);\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * set provider\\r\\n     *\\r\\n     * @param document the xml document\\r\\n     * @param xpath    the xpath object\\r\\n     * @throws BusinessException the business exception\\r\\n     */\\r\\n    private void setProvider(Document document, XPath xpath) throws BusinessException {\\r\\n        Element providerElement = (Element) getProvider(document, xpath);\\r\\n        if (providerElement != null) {\\r\\n            if (provider.getCfValues() != null) {\\r\\n                Element customFieldsTag = document.createElement(\\\"customFields\\\");\\r\\n                Map<String, CustomFieldTemplate> cfts = cftService.findByAppliesTo(provider);\\r\\n                for (Map.Entry<String, CustomFieldTemplate> entry : cfts.entrySet()) {\\r\\n                    CustomFieldTemplate cft = entry.getValue();\\r\\n                    Text customFieldText = null;\\r\\n                    if (entry.getKey().equalsIgnoreCase(\\\"CF_PROV_FD_SERENITY_OFFERS_CATEGORY\\\")) {\\r\\n                        customFieldText = document.createTextNode(CF_PROV_FD_SERENITY_OFFERS_CATEGORY);\\r\\n                    }\\r\\n                    if (entry.getKey().equalsIgnoreCase(\\\"CF_PROV_FD_FNAC_OFFER_CATEGORY\\\")) {\\r\\n                        customFieldText = document.createTextNode(CF_PROV_FD_FNAC_OFFER_CATEGORY);\\r\\n                    }\\r\\n                    if (entry.getKey().equalsIgnoreCase(\\\"CF_PROV_FD_DISCOUNTS_PROMOTIONS_SUB_CATEGORY_CODE\\\")) {\\r\\n                        customFieldText = document.createTextNode(CF_PROV_FD_DISCOUNTS_PROMOTIONS_SUB_CATEGORY_CODE);\\r\\n                    }\\r\\n                    if (entry.getKey().equalsIgnoreCase(\\\"CF_PROV_FD_DISCOUNTS_PROMOTIONS_SUB_CATEGORY_LABEL\\\")) {\\r\\n                        customFieldText = document.createTextNode(CF_PROV_FD_DISCOUNTS_PROMOTIONS_SUB_CATEGORY_LABEL);\\r\\n                    }\\r\\n                    if (entry.getKey().equalsIgnoreCase(\\\"CF_PROV_FD_REPAYMENT_DURATION\\\")) {\\r\\n                        customFieldText = document.createTextNode(String.valueOf(CF_PROV_FD_REPAYMENT_DURATION));\\r\\n                    }\\r\\n                    if (customFieldText != null) {\\r\\n                        Element customFieldTag = document.createElement(\\\"customField\\\");\\r\\n                        customFieldTag.setAttribute(\\\"code\\\", entry.getKey());\\r\\n                        customFieldTag.setAttribute(\\\"description\\\", cft != null ? cft.getDescription() : \\\"\\\");\\r\\n                        customFieldsTag.appendChild(customFieldTag);\\r\\n                        customFieldTag.appendChild(customFieldText);\\r\\n                    }\\r\\n                }\\r\\n                providerElement.appendChild(customFieldsTag);\\r\\n            }\\r\\n            //addCustomFields(provider, document, providerElement);\\r\\n        }\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * update subCategory amounts\\r\\n     *\\r\\n     * @param document    the xml document\\r\\n     * @param subCategory the subCategory element\\r\\n     */\\r\\n    private void updateSubCategoryAmounts(Document document, Element subCategory) {\\r\\n\\r\\n        NodeList domLines = subCategory.getChildNodes();\\r\\n        if (domLines != null && domLines.getLength() > 0) {\\r\\n            BigDecimal amountWithoutTax = BigDecimal.ZERO;\\r\\n            BigDecimal amountWithTax = BigDecimal.ZERO;\\r\\n            for (int i = 0; i < domLines.getLength(); i++) {\\r\\n                Element lineElement = (Element) domLines.item(i);\\r\\n\\r\\n                // amountWithoutTax\\r\\n                Element amountWithoutTaxElement = getChild(lineElement, \\\"amountWithoutTax\\\");\\r\\n                if (amountWithoutTaxElement != null) {\\r\\n                    amountWithoutTax = amountWithoutTax.add(getAmount(amountWithoutTaxElement.getTextContent()));\\r\\n                }\\r\\n\\r\\n                // amountWithTax\\r\\n                createAmountWithTax(document, subCategory, lineElement);\\r\\n                Element amountWithTaxElement = getChild(lineElement, \\\"amountWithTax\\\");\\r\\n                if (amountWithTaxElement != null) {\\r\\n                    amountWithTax = amountWithTax.add(getAmount(amountWithTaxElement.getTextContent()));\\r\\n                }\\r\\n\\r\\n                if (lineElement.hasAttribute(\\\"periodEndDate\\\") && !StringUtils.isBlank(lineElement.getAttribute(\\\"periodEndDate\\\"))) {\\r\\n\\r\\n                    String periodEndDate = lineElement.getAttribute(\\\"periodEndDate\\\");\\r\\n                    if (!StringUtils.isBlank(periodEndDate)) {\\r\\n                        String resultDate = addDaysToDate(periodEndDate, -1);\\r\\n                        if (!StringUtils.isBlank(resultDate)) {\\r\\n                            lineElement.setAttribute(\\\"periodEndDate\\\", resultDate);\\r\\n                        }\\r\\n                    }\\r\\n                }\\r\\n            }\\r\\n            setAmountsAttributes(subCategory, amountWithoutTax, amountWithTax);\\r\\n        }\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * update line amounts\\r\\n     *\\r\\n     * @param lineElement          the line element\\r\\n     * @param unitAmountWithoutTax the unit amount without tax\\r\\n     * @param amountWithoutTax     the amount without tax\\r\\n     * @param amountWithTax        the amount with tax\\r\\n     * @param quantity             the quantity\\r\\n     */\\r\\n    private void updateLineAmounts(Element lineElement, BigDecimal unitAmountWithoutTax, BigDecimal amountWithoutTax,\\r\\n                                   BigDecimal amountWithTax, BigDecimal quantity) {\\r\\n\\r\\n        // unitAmountWithoutTax\\r\\n        Element unitAmountWithoutTaxElement = getChild(lineElement, \\\"unitAmountWithoutTax\\\");\\r\\n        if (unitAmountWithoutTaxElement != null) {\\r\\n            unitAmountWithoutTaxElement.setTextContent(roundToString(unitAmountWithoutTax, null));\\r\\n        }\\r\\n\\r\\n        // amountWithoutTax\\r\\n        Element amountWithoutTaxElement = getChild(lineElement, \\\"amountWithoutTax\\\");\\r\\n        if (amountWithoutTaxElement != null) {\\r\\n            amountWithoutTaxElement.setTextContent(roundToString(amountWithoutTax, null));\\r\\n        }\\r\\n\\r\\n        // amountWithTax\\r\\n        Element amountWithTaxElement = getChild(lineElement, \\\"amountWithTax\\\");\\r\\n        if (amountWithTaxElement != null) {\\r\\n            amountWithTaxElement.setTextContent(roundToString(amountWithTax, null));\\r\\n        }\\r\\n\\r\\n        // quantity\\r\\n        Element quantityElement = getChild(lineElement, \\\"quantity\\\");\\r\\n        if (quantityElement != null) {\\r\\n            quantityElement.setTextContent(roundToString(quantity, null));\\r\\n        }\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * get amount with tax\\r\\n     *\\r\\n     * @param subCategory      the subCategory element\\r\\n     * @param amountWithoutTax the amount without tax\\r\\n     * @return the amount with tax\\r\\n     */\\r\\n    private BigDecimal getAmountWithTax(Element subCategory, BigDecimal amountWithoutTax) {\\r\\n        BigDecimal amountWithTax = BigDecimal.ZERO;\\r\\n        String taxPercent = subCategory.getAttribute(\\\"taxPercent\\\");\\r\\n        if (!StringUtils.isBlank(taxPercent)) {\\r\\n            amountWithTax = amountWithoutTax.add(amountWithoutTax.multiply(getAmount(taxPercent).divide(BigDecimal.valueOf(100), 2, RoundingMode.HALF_UP)));\\r\\n        } else {\\r\\n            amountWithTax = amountWithoutTax;\\r\\n        }\\r\\n        return amountWithTax;\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * Map the line element\\r\\n     *\\r\\n     * @param entry       the entry map\\r\\n     * @param comparator1 the date comparator\\r\\n     * @param comparator3 the label comparator\\r\\n     * @return the maped line element\\r\\n     */\\r\\n    private Element map(Map.Entry<String, List<Element>> entry, Comparator<Element> comparator1, Comparator<Element> comparator3) {\\r\\n\\r\\n        // Sort the lines list to Get line with the minimum periodStartDate\\r\\n        List<Element> linesEndDate = entry.getValue().stream().sorted(comparator1.thenComparing(comparator3)).collect(Collectors.toList());\\r\\n\\r\\n        BigDecimal unitAmountWithoutTax = BigDecimal.ZERO;\\r\\n        BigDecimal amountWithoutTax = BigDecimal.ZERO;\\r\\n        BigDecimal amountWithTax = BigDecimal.ZERO;\\r\\n        BigDecimal quantity = BigDecimal.ZERO;\\r\\n\\r\\n\\r\\n        //keep a single line with the smallest periodStartDate. and update its amounts by the sum of the amounts of the other lines\\r\\n        for (int i = 0; i < linesEndDate.size(); i++) {\\r\\n            Element element = linesEndDate.get(i);\\r\\n\\r\\n            // unitAmountWithoutTax\\r\\n            Element unitAmountWithoutTaxElement = getChild(element, \\\"unitAmountWithoutTax\\\");\\r\\n            if (unitAmountWithoutTaxElement != null) {\\r\\n                unitAmountWithoutTax = unitAmountWithoutTax.add(getAmount(unitAmountWithoutTaxElement.getTextContent()));\\r\\n            }\\r\\n\\r\\n            // amountWithoutTax\\r\\n            Element amountWithoutTaxElement = getChild(element, \\\"amountWithoutTax\\\");\\r\\n            if (amountWithoutTaxElement != null) {\\r\\n                amountWithoutTax = amountWithoutTax.add(getAmount(amountWithoutTaxElement.getTextContent()));\\r\\n            }\\r\\n\\r\\n            // amountWithTax\\r\\n            Element amountWithTaxElement = getChild(element, \\\"amountWithTax\\\");\\r\\n            if (amountWithTaxElement != null) {\\r\\n                amountWithTax = amountWithTax.add(getAmount(amountWithTaxElement.getTextContent()));\\r\\n            }\\r\\n\\r\\n            // quantity\\r\\n            Element quantityElement = getChild(element, \\\"quantity\\\");\\r\\n            if (quantityElement != null) {\\r\\n                quantity = quantity.add(getAmount(quantityElement.getTextContent()));\\r\\n            }\\r\\n        }\\r\\n        Element lineElement = linesEndDate.get(0);\\r\\n        updateLineAmounts(lineElement, unitAmountWithoutTax, amountWithoutTax, amountWithTax, quantity);\\r\\n        return lineElement;\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * Map the line element\\r\\n     *\\r\\n     * @param line the line element to map\\r\\n     * @return the mapped line element\\r\\n     */\\r\\n    private Element map(Element line) {\\r\\n\\r\\n        String code = line.getAttribute(\\\"code\\\");\\r\\n        RatedTransaction ratedTransaction = findRatedTransactionByCode(code);\\r\\n        if (ratedTransaction != null) {\\r\\n            OfferServiceTemplate offerServiceTemplate = null;\\r\\n            offerServiceTemplate = getOfferServiceTemplate(ratedTransaction);\\r\\n            if (offerServiceTemplate != null && offerServiceTemplate.isMandatory()) {\\r\\n                ServiceInstance serviceInstance = getServiceInstance(ratedTransaction);\\r\\n                if (serviceInstance != null) {\\r\\n                    line.setAttribute(\\\"engagementStartDate\\\", DateUtils.formatDateWithPattern(serviceInstance.getSubscriptionDate(), DEFAULT_DATE_PATTERN));\\r\\n                    line.setAttribute(\\\"engagementEndDate\\\", DateUtils.formatDateWithPattern(serviceInstance.getTerminationDate(), DEFAULT_DATE_PATTERN));\\r\\n                }\\r\\n            }\\r\\n        }\\r\\n        return line;\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * Set the recurring charges lines.\\r\\n     *\\r\\n     * @param subCategory the subCategory element\\r\\n     * @throws BusinessException the business exception\\r\\n     */\\r\\n    private void setRecurringChargesLines(Element subCategory) throws BusinessException {\\r\\n        NodeList domLines = subCategory.getChildNodes();\\r\\n        if (domLines != null && domLines.getLength() > 0) {\\r\\n\\r\\n            List<Element> lines = new ArrayList<>();\\r\\n            for (int i = 0; i < domLines.getLength(); i++) {\\r\\n                lines.add((Element) domLines.item(i));\\r\\n            }\\r\\n\\r\\n            Comparator<Element> comparator1 = (line1, line2) -> dateComparator(line1, line2, \\\"periodStartDate\\\");\\r\\n            Comparator<Element> comparator2 = (line1, line2) -> dateComparator(line1, line2, \\\"periodEndDate\\\");\\r\\n            Comparator<Element> comparator3 = (line1, line2) -> labelComparator(line1, line2);\\r\\n\\r\\n            // Grouping the list by periodEndDate\\r\\n            List<Element> groupedLines = lines.stream().collect(Collectors.groupingBy(line -> line.getAttribute(\\\"periodEndDate\\\"))).entrySet().stream()\\r\\n                    .map(entry -> map(entry, comparator1, comparator3)).collect(Collectors.toList());\\r\\n\\r\\n            // Sorting the list by periodStartDate, periodEndDate and label, and add other attributes per line.\\r\\n            try {\\r\\n                groupedLines = groupedLines.stream().sorted(comparator1.thenComparing(comparator2).thenComparing(comparator3)).map(line -> {\\r\\n                    try {\\r\\n                        map(line);\\r\\n                    } catch (Exception e) {\\r\\n                        throw new RuntimeException(e);\\r\\n                    }\\r\\n                    return line;\\r\\n                }).collect(Collectors.toList());\\r\\n            } catch (RuntimeException e) {\\r\\n                throw (BusinessException) e.getCause();\\r\\n            }\\r\\n            removeChildNodes(subCategory);\\r\\n            addChildNodes(subCategory, groupedLines);\\r\\n        }\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * Get the discounts.\\r\\n     *\\r\\n     * @param document the xml document\\r\\n     * @param xpath    the xpath object\\r\\n     * @return discounts list\\r\\n     * @throws BusinessException the business exception\\r\\n     */\\r\\n    private NodeList getDiscounts(Document document, XPath xpath) throws BusinessException {\\r\\n        try {\\r\\n            XPathExpression discountsExpression = xpath.compile(\\\"/invoice/header/discounts/discount\\\");\\r\\n            return (NodeList) discountsExpression.evaluate(document, XPathConstants.NODESET);\\r\\n        } catch (XPathExpressionException e) {\\r\\n            log.error(\\\"getDiscounts fail\\\", e);\\r\\n            throw new BusinessException(e.getMessage());\\r\\n        }\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * Set the recurring charges lines.\\r\\n     *\\r\\n     * @param document the xml document\\r\\n     * @param xpath    the xpath object\\r\\n     * @throws BusinessException the business exception\\r\\n     */\\r\\n    private void setRecurringChargesLines(Document document, XPath xpath) throws BusinessException {\\r\\n\\r\\n        NodeList domSubCategories = getRecurringSubCategories(document, xpath);\\r\\n        if (domSubCategories != null && domSubCategories.getLength() > 0) {\\r\\n            for (int i = 0; i < domSubCategories.getLength(); i++) {\\r\\n                Element subCategory = (Element) domSubCategories.item(i);\\r\\n                setRecurringChargesLines(subCategory);\\r\\n            }\\r\\n        }\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * Get discountsPromotionsElement element\\r\\n     *\\r\\n     * @param document    the xml document\\r\\n     * @param xpath       the xpath object\\r\\n     * @param userAccount the user account element\\r\\n     * @return discountsPromotionsElement element\\r\\n     * @throws BusinessException BusinessException the business exception\\r\\n     */\\r\\n    private Element getDiscountsPromotionsElement(Document document, XPath xpath, Element userAccount) throws BusinessException {\\r\\n        Element discountsPromotionsElement = null;\\r\\n        String userAccountCode = userAccount.getAttribute(\\\"code\\\");\\r\\n        if (!StringUtils.isBlank(userAccountCode)) {\\r\\n            discountsPromotionsElement = (Element) getDiscountsPromotionsNode(document, xpath, userAccountCode);\\r\\n\\r\\n            if (discountsPromotionsElement == null) {\\r\\n                discountsPromotionsElement = document.createElement(\\\"discountsPromotions\\\");\\r\\n                discountsPromotionsElement.setAttribute(\\\"label\\\", CF_PROV_FD_DISCOUNTS_PROMOTIONS_SUB_CATEGORY_LABEL);\\r\\n                discountsPromotionsElement.setAttribute(\\\"amountWithoutTax\\\", roundToString(BigDecimal.ZERO, null));\\r\\n                discountsPromotionsElement.setAttribute(\\\"amountWithTax\\\", roundToString(BigDecimal.ZERO, null));\\r\\n                userAccount.appendChild(discountsPromotionsElement);\\r\\n            }\\r\\n        }\\r\\n        return discountsPromotionsElement;\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * create the discountPromotion element\\r\\n     *\\r\\n     * @param document                   the xml document\\r\\n     * @param discountsPromotionsElement the discountsPromotions node element\\r\\n     * @param element                    the source node element from where we copy the data into discountPromotion element\\r\\n     */\\r\\n    private void createDiscountPromotionElement(Document document, Element discountsPromotionsElement, Element element) {\\r\\n\\r\\n        String label = null;\\r\\n        BigDecimal amountWithoutTax = BigDecimal.ZERO;\\r\\n        BigDecimal amountWithTax = BigDecimal.ZERO;\\r\\n\\r\\n        // discount case.\\r\\n        if (element.hasAttribute(\\\"discountAmountWithoutTax\\\")) {\\r\\n            label = element.getAttribute(\\\"discountPlanDescription\\\");\\r\\n            amountWithoutTax = getAmountAttribute(element, \\\"discountAmountWithoutTax\\\");\\r\\n            amountWithTax = getAmountAttribute(element, \\\"discountAmountWithTax\\\");\\r\\n        } else {\\r\\n            Element labelElement = getChild(element, \\\"label\\\");\\r\\n            if (labelElement != null) {\\r\\n                label = labelElement.getTextContent();\\r\\n            }\\r\\n\\r\\n            // amountWithoutTax\\r\\n            Element amountWithoutTaxElement = getChild(element, \\\"amountWithoutTax\\\");\\r\\n            if (amountWithoutTaxElement != null) {\\r\\n                amountWithoutTax = getAmount(amountWithoutTaxElement.getTextContent());\\r\\n            }\\r\\n\\r\\n            // amountWithTax\\r\\n            Element amountWithTaxElement = getChild(element, \\\"amountWithTax\\\");\\r\\n            if (amountWithTaxElement != null) {\\r\\n                amountWithTax = getAmount(amountWithTaxElement.getTextContent());\\r\\n            }\\r\\n        }\\r\\n\\r\\n        Element discountPromotionElement = document.createElement(\\\"discountPromotion\\\");\\r\\n        discountPromotionElement.setAttribute(\\\"label\\\", label);\\r\\n        discountPromotionElement.setAttribute(\\\"amountWithoutTax\\\", roundToString(amountWithoutTax, null));\\r\\n        discountPromotionElement.setAttribute(\\\"amountWithTax\\\", roundToString(amountWithTax, null));\\r\\n        discountsPromotionsElement.appendChild(discountPromotionElement);\\r\\n\\r\\n        //Re-calculate totals\\r\\n        updateAmountsAttributes(discountsPromotionsElement, discountPromotionElement);\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * create amount with tax\\r\\n     *\\r\\n     * @param document    the xml document\\r\\n     * @param subCategory the subCategory element\\r\\n     * @param line        the line element\\r\\n     */\\r\\n    private void createAmountWithTax(Document document, Element subCategory, Element line) {\\r\\n        // amountWithoutTax\\r\\n        BigDecimal amountWithoutTax = BigDecimal.ZERO;\\r\\n        Element amountWithoutTaxElement = getChild(line, \\\"amountWithoutTax\\\");\\r\\n        if (amountWithoutTaxElement != null) {\\r\\n            amountWithoutTax = getAmount(amountWithoutTaxElement.getTextContent());\\r\\n        }\\r\\n\\r\\n        // amountWithTax\\r\\n        Element amountWithTaxElement = getChild(line, \\\"amountWithTax\\\");\\r\\n        if (amountWithTaxElement == null) {\\r\\n            amountWithTaxElement = document.createElement(\\\"amountWithTax\\\");\\r\\n            amountWithTaxElement.setTextContent(roundToString(getAmountWithTax(subCategory, amountWithoutTax), null));\\r\\n            line.appendChild(amountWithTaxElement);\\r\\n        }\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * Add promotions type charge to XML document if exists.\\r\\n     *\\r\\n     * @param document    the xml document\\r\\n     * @param xpath       the xpath object\\r\\n     * @param userAccount the user account element\\r\\n     * @throws BusinessException BusinessException the business exception\\r\\n     */\\r\\n    private void setChargesPromotions(Document document, XPath xpath, Element userAccount) throws BusinessException {\\r\\n        NodeList domSubCategories = getPromotionsSubCategories(document, xpath, userAccount);\\r\\n        if (domSubCategories != null && domSubCategories.getLength() > 0) {\\r\\n            for (int i = 0; i < domSubCategories.getLength(); i++) {\\r\\n                Element subCategory = (Element) domSubCategories.item(i);\\r\\n\\r\\n                Element discountsPromotionsElement = getDiscountsPromotionsElement(document, xpath, userAccount);\\r\\n\\r\\n                if (discountsPromotionsElement != null) {\\r\\n                    String label = discountsPromotionsElement.getAttribute(\\\"label\\\");\\r\\n                    if (StringUtils.isBlank(label)) {\\r\\n                        String subCategoryLabel = subCategory.getAttribute(\\\"label\\\");\\r\\n                        if (!StringUtils.isBlank(subCategoryLabel)) {\\r\\n                            discountsPromotionsElement.setAttribute(\\\"label\\\", subCategoryLabel);\\r\\n                        }\\r\\n                    }\\r\\n\\r\\n                    NodeList domLines = subCategory.getChildNodes();\\r\\n                    if (domLines != null && domLines.getLength() > 0) {\\r\\n                        for (int j = 0; j < domLines.getLength(); j++) {\\r\\n                            Element line = (Element) domLines.item(j);\\r\\n                            createAmountWithTax(document, subCategory, line);\\r\\n                            createDiscountPromotionElement(document, discountsPromotionsElement, line);\\r\\n                        }\\r\\n                    }\\r\\n                }\\r\\n            }\\r\\n        }\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * Add promotions type discount and discount plan to XML document if exists.\\r\\n     *\\r\\n     * @param document    the xml document\\r\\n     * @param xpath       the xpath object\\r\\n     * @param userAccount the user account element\\r\\n     * @throws BusinessException BusinessException the business exception\\r\\n     */\\r\\n    private void setDiscountsPromotions(Document document, XPath xpath, Element userAccount) throws BusinessException {\\r\\n        NodeList domDiscounts = getDiscounts(document, xpath);\\r\\n        if (domDiscounts != null && domDiscounts.getLength() > 0) {\\r\\n            Element discountsPromotionsElement = getDiscountsPromotionsElement(document, xpath, userAccount);\\r\\n            if (discountsPromotionsElement != null) {\\r\\n                for (int i = 0; i < domDiscounts.getLength(); i++) {\\r\\n                    Element discount = (Element) domDiscounts.item(i);\\r\\n                    createDiscountPromotionElement(document, discountsPromotionsElement, discount);\\r\\n                }\\r\\n            }\\r\\n        }\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * Add promotions type charge and/or discount and/or discount plan to XML document if exists.\\r\\n     *\\r\\n     * @param document the xml document\\r\\n     * @param xpath    the xpath object\\r\\n     * @throws BusinessException BusinessException the business exception\\r\\n     */\\r\\n    private void setDiscountsAndPromotions(Document document, XPath xpath) throws BusinessException {\\r\\n\\r\\n        NodeList domUserAccounts = getUserAccounts(document, xpath);\\r\\n        if (domUserAccounts != null && domUserAccounts.getLength() > 0) {\\r\\n            for (int i = 0; i < domUserAccounts.getLength(); i++) {\\r\\n                Element userAccount = (Element) domUserAccounts.item(i);\\r\\n\\r\\n                // Set the invoice promotions (charge type or discount type).\\r\\n                setChargesPromotions(document, xpath, userAccount);\\r\\n\\r\\n                // Set the invoice discount plans.\\r\\n                setDiscountsPromotions(document, xpath, userAccount);\\r\\n            }\\r\\n        }\\r\\n\\r\\n\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * set invoice amounts\\r\\n     *\\r\\n     * @param invoiceAmount the invoice amount\\r\\n     * @param nodeList      the node list\\r\\n     */\\r\\n    private void setInvoiceAmounts(Element invoiceAmount, NodeList nodeList) {\\r\\n        if (nodeList != null && nodeList.getLength() > 0) {\\r\\n            for (int i = 0; i < nodeList.getLength(); i++) {\\r\\n                Element node = (Element) nodeList.item(i);\\r\\n                updateAmountsElements(invoiceAmount, node);\\r\\n            }\\r\\n        }\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * Set categories amounts\\r\\n     *\\r\\n     * @param document the xml document\\r\\n     * @param xpath    the xpath object\\r\\n     * @throws BusinessException the business exception\\r\\n     */\\r\\n    private void setCategoriesAmounts(Document document, XPath xpath) throws BusinessException {\\r\\n        NodeList domCategories = getCategories(document, xpath);\\r\\n        if (domCategories != null && domCategories.getLength() > 0) {\\r\\n            for (int i = 0; i < domCategories.getLength(); i++) {\\r\\n                Element category = (Element) domCategories.item(i);\\r\\n                // Remove amountWithoutTax element from category element.\\r\\n                removeChildNode(category, \\\"amountWithoutTax\\\");\\r\\n                resetAmountsAttributes(category);\\r\\n\\r\\n                Element subCategories = getChild(category, \\\"subCategories\\\");\\r\\n                if (subCategories != null) {\\r\\n                    NodeList domSubCategories = subCategories.getChildNodes();\\r\\n                    if (domSubCategories != null && domSubCategories.getLength() > 0) {\\r\\n                        for (int j = 0; j < domSubCategories.getLength(); j++) {\\r\\n                            Element subCategory = (Element) domSubCategories.item(j);\\r\\n                            updateSubCategoryAmounts(document, subCategory);\\r\\n                            updateAmountsAttributes(category, subCategory);\\r\\n                        }\\r\\n                    }\\r\\n                }\\r\\n\\r\\n            }\\r\\n        }\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * Set subCategory amounts\\r\\n     *\\r\\n     * @param document    the xml document\\r\\n     * @param xpath       the xpath object\\r\\n     * @param subCategory the subCategory element\\r\\n     * @throws BusinessException the business exception\\r\\n     */\\r\\n    private void setHeaderSubCategoryAmounts(Document document, XPath xpath, Element subCategory) throws BusinessException {\\r\\n        resetAmountsAttributes(subCategory);\\r\\n        String subCategoryCode = subCategory.getAttribute(\\\"code\\\");\\r\\n        if (!StringUtils.isBlank(subCategoryCode)) {\\r\\n            NodeList domUserAccountSubCategories = getUserAccountSubCategories(document, xpath, subCategoryCode);\\r\\n            if (domUserAccountSubCategories != null && domUserAccountSubCategories.getLength() > 0) {\\r\\n                for (int i = 0; i < domUserAccountSubCategories.getLength(); i++) {\\r\\n                    Element userAccountSubCategory = (Element) domUserAccountSubCategories.item(i);\\r\\n                    updateAmountsAttributes(subCategory, userAccountSubCategory);\\r\\n                }\\r\\n            }\\r\\n        }\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * Set category amounts\\r\\n     *\\r\\n     * @param document the xml document\\r\\n     * @param xpath    the xpath object\\r\\n     * @param category the category element\\r\\n     * @throws BusinessException the business exception\\r\\n     */\\r\\n    private void setHeaderCategoryAmounts(Document document, XPath xpath, Element category) throws BusinessException {\\r\\n        // Remove amountWithoutTax element from category element.\\r\\n        removeChildNode(category, \\\"amountWithoutTax\\\");\\r\\n        resetAmountsAttributes(category);\\r\\n        Element subCategories = getChild(category, \\\"subCategories\\\");\\r\\n        if (subCategories != null) {\\r\\n            NodeList domSubCategories = subCategories.getChildNodes();\\r\\n            if (domSubCategories != null && domSubCategories.getLength() > 0) {\\r\\n                for (int i = 0; i < domSubCategories.getLength(); i++) {\\r\\n                    Element subCategory = (Element) domSubCategories.item(i);\\r\\n                    setHeaderSubCategoryAmounts(document, xpath, subCategory);\\r\\n                    updateAmountsAttributes(category, subCategory);\\r\\n                }\\r\\n            }\\r\\n        }\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * Set categories amounts\\r\\n     *\\r\\n     * @param document the xml document\\r\\n     * @param xpath    the xpath object\\r\\n     * @throws BusinessException the business exception\\r\\n     */\\r\\n    private void setHeaderCategoriesAmounts(Document document, XPath xpath) throws BusinessException {\\r\\n        NodeList domHeaderCategories = getHeaderCategories(document, xpath);\\r\\n        if (domHeaderCategories != null && domHeaderCategories.getLength() > 0) {\\r\\n            for (int i = 0; i < domHeaderCategories.getLength(); i++) {\\r\\n                Element category = (Element) domHeaderCategories.item(i);\\r\\n                setHeaderCategoryAmounts(document, xpath, category);\\r\\n            }\\r\\n        }\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * update invoice amounts\\r\\n     *\\r\\n     * @param document the xml document\\r\\n     * @param xpath    the xpath object\\r\\n     * @throws BusinessException the business exception\\r\\n     */\\r\\n    private void setInvoiceAmounts(Document document, XPath xpath) throws BusinessException {\\r\\n\\r\\n        // Set user accounts categories and subCategories amounts\\r\\n        setCategoriesAmounts(document, xpath);\\r\\n\\r\\n        // Set header categories and subCategories amounts\\r\\n        setHeaderCategoriesAmounts(document, xpath);\\r\\n\\r\\n        // Get invoice amount element.\\r\\n        Element invoiceAmount = (Element) getInvoiceAmount(document, xpath);\\r\\n\\r\\n        // Reset invoice amount.\\r\\n        resetAmountsElements(invoiceAmount);\\r\\n\\r\\n        // add categories amounts to invoice\\r\\n        setInvoiceAmounts(invoiceAmount, getHeaderCategories(document, xpath));\\r\\n\\r\\n        // add discounts promotions amounts to invoice\\r\\n        setInvoiceAmounts(invoiceAmount, getDiscounts(document, xpath));\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * Customize the xml document\\r\\n     *\\r\\n     * @param invoice   the invoice\\r\\n     * @param isVirtual true or false\\r\\n     * @param document  the xml document\\r\\n     * @throws BusinessException the business exception\\r\\n     */\\r\\n    public void customizeDocument(Invoice invoice, boolean isVirtual, Document document) throws BusinessException {\\r\\n        try {\\r\\n\\r\\n            String language = getLangIso1FromLangIso23(invoice.getBillingAccount().getTradingLanguage().getLanguageCode());\\r\\n            if (StringUtils.isBlank(language)) {\\r\\n                log.warn(\\\"Cant get language Iso1 code from :\\\" + invoice.getBillingAccount().getTradingLanguage().getLanguageCode());\\r\\n            }\\r\\n\\r\\n            XPathFactory xpf = XPathFactory.newInstance();\\r\\n            XPath xpath = xpf.newXPath();\\r\\n\\r\\n            XPathExpression headerExpression = xpath.compile(\\\"/invoice/header\\\");\\r\\n            Node headerNode = (Node) headerExpression.evaluate(document, XPathConstants.NODE);\\r\\n\\r\\n            // Set date pattern\\r\\n            setDatePattern(document, headerNode);\\r\\n\\r\\n            // Set provider\\r\\n            setProvider(document, xpath);\\r\\n\\r\\n            // Set seller\\r\\n            setSeller(document, xpath, headerNode, language);\\r\\n\\r\\n            // Invoicing Threshold\\r\\n            setInvoicingThreshold(invoice, document, headerNode);\\r\\n\\r\\n            // UnMatching Amount\\r\\n            setUnMatchingAmount(invoice, document, headerNode);\\r\\n\\r\\n            // Repayment date\\r\\n            setRepaymentDate(document, xpath, headerNode);\\r\\n\\r\\n            // Set subscriptions status and engagement start date\\r\\n            setSubscriptions(document, xpath, headerNode);\\r\\n\\r\\n            // Set invoice period.\\r\\n            setInvoicePeriod(document, xpath, headerNode);\\r\\n\\r\\n            // Set offer type\\r\\n            setOfferType(document, xpath);\\r\\n\\r\\n            // Set the lines of recurring charges.\\r\\n            setRecurringChargesLines(document, xpath);\\r\\n\\r\\n            // Set promotions (type charge or discount) and/or discounts plan to XML document if exists.\\r\\n            setDiscountsAndPromotions(document, xpath);\\r\\n\\r\\n            // no change to apply on other charges\\r\\n\\r\\n            // Set invoice amounts\\r\\n            setInvoiceAmounts(document, xpath);\\r\\n\\r\\n        } catch (Exception e) {\\r\\n            log.error(\\\"customize XML Document fail\\\", e);\\r\\n            throw new BusinessException(e.getMessage());\\r\\n        }\\r\\n\\r\\n    }\\r\\n\\r\\n    @Override\\r\\n    public void execute(Map<String, Object> methodContext) throws BusinessException {\\r\\n\\r\\n        try {\\r\\n            XMLInvoiceCreator xmlInvoiceCreator = (XMLInvoiceCreator) methodContext.get(\\\"XMLInvoiceCreator\\\");\\r\\n            Invoice invoice = (Invoice) methodContext.get(Script.CONTEXT_ENTITY);\\r\\n\\r\\n            Boolean isVirtual = (Boolean) methodContext.get(\\\"isVirtual\\\");\\r\\n            Document document = xmlInvoiceCreator.createDocument(invoice, isVirtual.booleanValue());\\r\\n\\r\\n            customizeDocument(invoice, isVirtual, document);\\r\\n\\r\\n            File file = xmlInvoiceCreator.createFile(document, invoice);\\r\\n            methodContext.put(Script.RESULT_VALUE, file);\\r\\n        } catch (Exception e) {\\r\\n            log.error(\\\"execute invoice XML script fail\\\", e);\\r\\n            throw new BusinessException(e.getMessage());\\r\\n        }\\r\\n    }\\r\\n}\",\r\n    \"executionRoles\": [],\r\n    \"sourcingRoles\": []\r\n}"
																},
																"url": {
																	"raw": "{{opencell.url}}/scriptInstance/createOrUpdate",
																	"host": [
																		"{{opencell.url}}"
																	],
																	"path": [
																		"scriptInstance",
																		"createOrUpdate"
																	]
																}
															},
															"response": []
														}
													],
													"_postman_isSubFolder": true
												}
											],
											"_postman_isSubFolder": true
										}
									],
									"_postman_isSubFolder": true
								},
								{
									"name": "Invoice settings",
									"item": [
										{
											"name": "Invoice types",
											"item": [
												{
													"name": "ADJ",
													"event": [
														{
															"listen": "test",
															"script": {
																"id": "ad1976de-94b9-4355-8b25-5d3f1f77555e",
																"exec": [
																	"var jsonData = JSON.parse(responseBody);",
																	"tests[\"is.success\"] = jsonData.status === \"SUCCESS\";"
																],
																"type": "text/javascript"
															}
														}
													],
													"request": {
														"auth": {
															"type": "basic",
															"basic": [
																{
																	"key": "username",
																	"value": "{{opencell.username}}",
																	"type": "string"
																},
																{
																	"key": "password",
																	"value": "{{opencell.password}}",
																	"type": "string"
																},
																{
																	"key": "showPassword",
																	"value": false,
																	"type": "boolean"
																}
															]
														},
														"method": "POST",
														"header": [
															{
																"key": "Proxy-Authorization",
																"value": "{{proxy.auth}}"
															},
															{
																"key": "Content-Type",
																"value": "application/json"
															},
															{
																"key": "Authorization",
																"value": "Basic b3BlbmNlbGwuYWRtaW46b3BlbmNlbGwuYWRtaW4="
															}
														],
														"body": {
															"mode": "raw",
															"raw": "{\r\n\t\"code\": \"ADJ\",\r\n\t\"description\": \"Invoice\",\r\n\t\"billingTemplateName\": null,\r\n\t\"occTemplateCode\": \"INV_STD\",\r\n\t\"occTemplateNegativeCode\": \"INV_CRN\",\r\n\t\"sequenceDto\": {\r\n\t\t\"prefixEL\": \"ADJ-\",\r\n\t\t\"sequenceSize\": 10\r\n\t},\r\n\t\"pdfFilenameEL\": \"#{ invoice.invoiceNumber != null ? invoice.invoiceNumber : invoice.temporaryInvoiceNumber }_#{ mv:formatDate(invoice.getInvoiceDate(),'yyyyMMdd') }_#{ invoice.billingAccount.usersAccounts[0].subscriptions[0].code}\",\r\n\t\"xmlFilenameEL\": \"#{ invoice.invoiceNumber != null ? invoice.invoiceNumber : invoice.temporaryInvoiceNumber }_#{ mv:formatDate(invoice.getInvoiceDate(),'yyyyMMdd') }_#{ invoice.billingAccount.usersAccounts[0].subscriptions[0].code}\",\r\n\t\"sellerSequence\": null,\r\n\t\"appliesTo\": [\r\n\t\t\"COM\",\r\n\t\t\"ADJ\"\r\n\t],\r\n\t\"matchingAuto\": false\r\n}\r\n"
														},
														"url": {
															"raw": "{{opencell.url}}/invoiceType/createOrUpdate",
															"host": [
																"{{opencell.url}}"
															],
															"path": [
																"invoiceType",
																"createOrUpdate"
															]
														}
													},
													"response": []
												},
												{
													"name": "COM",
													"event": [
														{
															"listen": "test",
															"script": {
																"id": "c405b5cd-023f-48a5-af8f-a92c8451950f",
																"exec": [
																	"var jsonData = JSON.parse(responseBody);",
																	"tests[\"is.success\"] = jsonData.status === \"SUCCESS\";",
																	""
																],
																"type": "text/javascript"
															}
														}
													],
													"request": {
														"auth": {
															"type": "basic",
															"basic": [
																{
																	"key": "username",
																	"value": "{{opencell.username}}",
																	"type": "string"
																},
																{
																	"key": "password",
																	"value": "{{opencell.password}}",
																	"type": "string"
																},
																{
																	"key": "showPassword",
																	"value": false,
																	"type": "boolean"
																}
															]
														},
														"method": "POST",
														"header": [
															{
																"key": "Proxy-Authorization",
																"value": "{{proxy.auth}}"
															},
															{
																"key": "Content-Type",
																"value": "application/json"
															},
															{
																"key": "Authorization",
																"value": "Basic b3BlbmNlbGwuYWRtaW46b3BlbmNlbGwuYWRtaW4="
															}
														],
														"body": {
															"mode": "raw",
															"raw": "{\r\n\t\"code\": \"COM\",\r\n\t\"description\": \"Invoice\",\r\n\t\"billingTemplateName\": null,\r\n\t\"occTemplateCode\": \"INV_STD\",\r\n\t\"occTemplateNegativeCode\": \"INV_CRN\",\r\n\t\"useSelfSequence\": true,\r\n\t\"sequenceDto\": {\r\n\t\t\"prefixEL\": \"#{invoice.seller.seller.code}\",\r\n\t\t\"sequenceSize\": 10\r\n\t},\r\n\t\"pdfFilenameEL\": \"#{ invoice.invoiceNumber != null ? invoice.invoiceNumber : invoice.temporaryInvoiceNumber }_#{ mv:formatDate(invoice.getInvoiceDate(),'yyyyMMdd') }_#{ invoice.billingAccount.usersAccounts[0].subscriptions[0].code}\",\r\n\t\"xmlFilenameEL\": \"#{ invoice.invoiceNumber != null ? invoice.invoiceNumber : invoice.temporaryInvoiceNumber }_#{ mv:formatDate(invoice.getInvoiceDate(),'yyyyMMdd') }_#{ invoice.billingAccount.usersAccounts[0].subscriptions[0].code}\",\r\n\t\"sellerSequence\": null,\r\n\t\"appliesTo\": [\r\n\t\t\"COM\",\r\n\t\t\"ADJ\"\r\n\t],\r\n\t\"matchingAuto\": false,\r\n\t\"customInvoiceXmlScriptInstanceCode\": \"org.meveo.service.script.InvoiceXmlScript\"\r\n}\r\n"
														},
														"url": {
															"raw": "{{opencell.url}}/invoiceType/createOrUpdate",
															"host": [
																"{{opencell.url}}"
															],
															"path": [
																"invoiceType",
																"createOrUpdate"
															]
														}
													},
													"response": []
												},
												{
													"name": "DRAFT",
													"event": [
														{
															"listen": "test",
															"script": {
																"id": "c405b5cd-023f-48a5-af8f-a92c8451950f",
																"exec": [
																	"var jsonData = JSON.parse(responseBody);",
																	"tests[\"is.success\"] = jsonData.status === \"SUCCESS\";",
																	""
																],
																"type": "text/javascript"
															}
														}
													],
													"request": {
														"auth": {
															"type": "basic",
															"basic": [
																{
																	"key": "username",
																	"value": "{{opencell.username}}",
																	"type": "string"
																},
																{
																	"key": "password",
																	"value": "{{opencell.password}}",
																	"type": "string"
																},
																{
																	"key": "showPassword",
																	"value": false,
																	"type": "boolean"
																}
															]
														},
														"method": "POST",
														"header": [
															{
																"key": "Proxy-Authorization",
																"value": "{{proxy.auth}}"
															},
															{
																"key": "Content-Type",
																"value": "application/json"
															},
															{
																"key": "Authorization",
																"value": "Basic b3BlbmNlbGwuYWRtaW46b3BlbmNlbGwuYWRtaW4="
															}
														],
														"body": {
															"mode": "raw",
															"raw": "{\r\n\t\"code\": \"DRAFT\",\r\n\t\"description\": \"Draft invoice\",\r\n\t\"billingTemplateName\": null,\r\n\t\"occTemplateCode\": \"INV_STD\",\r\n\t\"sequenceDto\": {\r\n\t\t\"prefixEL\": \"DRAFT_\",\r\n\t\t\"sequenceSize\": 10\r\n\t},\r\n\t\"pdfFilenameEL\": \"DRAFT_#{ mv:formatDate(invoice.getInvoiceDate(),'yyyyMMdd') }_#{ invoice.billingAccount.usersAccounts[0].subscriptions[0].code}\",\r\n\t\"xmlFilenameEL\": \"DRAFT_#{ mv:formatDate(invoice.getInvoiceDate(),'yyyyMMdd') }_#{ invoice.billingAccount.usersAccounts[0].subscriptions[0].code}\",\r\n\t\"sellerSequence\": null,\r\n\t\"matchingAuto\": false\r\n}\r\n"
														},
														"url": {
															"raw": "{{opencell.url}}/invoiceType/createOrUpdate",
															"host": [
																"{{opencell.url}}"
															],
															"path": [
																"invoiceType",
																"createOrUpdate"
															]
														}
													},
													"response": []
												}
											],
											"_postman_isSubFolder": true
										}
									],
									"_postman_isSubFolder": true
								}
							],
							"_postman_isSubFolder": true
						}
					],
					"_postman_isSubFolder": true
				}
			]
		},
		{
			"name": "#412 : SetNoRetryAndExtractSubsInvalidCBScript",
			"item": [
				{
					"name": "Create SetNoRetryAndExtractSubsInvalidCBScript",
					"event": [
						{
							"listen": "prerequest",
							"script": {
								"id": "fa5fd29c-c722-468c-93f5-be48a13a16c2",
								"exec": [
									"const escapeJava = (data) =>  {",
									"  ",
									"  data = data.replace(/\\\\/g, '\\\\\\\\');",
									"  data = data.replace(/(\\n)/g, '\\\\n');",
									"  data = data.replace(/(\\t)/g, '\\\\t');",
									"  data = data.replace(/(\\r)/g, '\\\\r');",
									"  data = data.replace(/\"/g, '\\\\\"');",
									"  ",
									" // console.log('escapeJava -> data : ', data);",
									"  return data;",
									"};",
									"",
									"let script = `package org.meveo.service.script;",
									"",
									"import java.io.BufferedWriter;",
									"import java.io.File;",
									"import java.io.FileWriter;",
									"import java.io.IOException;",
									"import java.math.BigInteger;",
									"import java.nio.file.Files;",
									"import java.nio.file.Paths;",
									"import java.util.Date;",
									"import java.util.HashMap;",
									"import java.util.List;",
									"import java.util.Map;",
									"import java.util.stream.Collectors;",
									"",
									"import org.apache.commons.collections4.CollectionUtils;",
									"import org.apache.commons.lang3.StringUtils;",
									"import org.meveo.admin.exception.BusinessException;",
									"import org.meveo.commons.utils.ParamBeanFactory;",
									"import org.meveo.model.billing.Subscription;",
									"import org.meveo.model.payments.CustomerAccount;",
									"import org.meveo.model.shared.DateUtils;",
									"import org.meveo.service.crm.impl.CustomFieldInstanceService;",
									"import org.meveo.service.payments.impl.CustomerAccountService;",
									"",
									"/**",
									" * Script for : - setting RETRY = NO for all subscriptions having Invalid CB - extracting the so treated subscriptions.",
									" * ",
									" * @author Said RAMLI",
									" */",
									"public class SetNoRetryAndExtractSubsInvalidCBScript extends Script {",
									"",
									"    private final CustomFieldInstanceService customFieldInstanceService = (CustomFieldInstanceService) getServiceInterface(CustomFieldInstanceService.class.getSimpleName());",
									"    private final CustomerAccountService caService = (CustomerAccountService) getServiceInterface(CustomerAccountService.class.getSimpleName());",
									"    private final ParamBeanFactory paramBeanFactory = (ParamBeanFactory) getServiceInterface(ParamBeanFactory.class.getSimpleName());",
									"    private static final String CF_RETRY_PAYMENT = \"CF_RETRY_PAYMENT\";",
									"",
									"    @Override",
									"    public void execute(Map<String, Object> methodContext) throws BusinessException {",
									"",
									"        log.debug(\" UpdateRetryAndExtractInvalidCBScript >>> methodContext = {} \", methodContext);",
									"        String outputDir = String.valueOf(methodContext.get(\"OUTPUT_DIR\"));",
									"        outputDir = StringUtils.defaultIfEmpty(outputDir, \"/batch/UpdateRetryAndExtractInvalidCBScript_Job\");",
									"        outputDir = paramBeanFactory.getChrootDir() + outputDir;",
									"",
									"        log.debug(\"outputDir = {} \", outputDir);",
									"        File dir = new File(outputDir);",
									"        if (!dir.exists()) {",
									"            dir.mkdirs();",
									"        }",
									"",
									"        String flatFilePath = outputDir + File.separator + \"invalid_CB_subscriptions_\" + DateUtils.formatDateWithPattern(new Date(), \"yyyy-MM-dd-HHmmss.SSS\") + \".csv\";",
									"        log.info(\"output flatFilePath=\" + flatFilePath);",
									"        this.processSubscriptionsWithInvalidCB(flatFilePath, methodContext);",
									"    }",
									"",
									"    private void processSubscriptionsWithInvalidCB(String flatFilePath, Map<String, Object> methodContext) throws BusinessException {",
									"",
									"        log.debug(\" Start processSubscriptionsWithInvalidCB : flatFilePath = {} \", flatFilePath);",
									"        int count = 0;",
									"      ",
									"        try (FileWriter fileWriter = new FileWriter(flatFilePath); BufferedWriter bufferedWriter = new BufferedWriter(fileWriter)) {",
									"",
									"            StringBuilder caQuery = new StringBuilder(\"select customer_account_id as id from ar_payment_token\").append(\" where token_type = 'CARD'\").append(\" and is_default = 1\")",
									"                .append(\" and to_date ('20' || year_expiration || case when month_expiration < 10 then '-0' else '-' end || month_expiration  || '-01' , 'yyyy-MM-dd') < now()\");",
									"",
									"           ",
									"            List<Map<String, Object>> result = caService.executeNativeSelectQuery(caQuery.toString(), new HashMap<>());",
									"",
									"            if (CollectionUtils.isNotEmpty(result)) {",
									"                ",
									"                List<Long> caIds = result.stream().map(item -> (( BigInteger ) item.get(\"id\")).longValue()).collect(Collectors.toList());",
									"                for (Long caId : caIds) {",
									"                   CustomerAccount ca = caService.findById(caId);",
									"                   try {",
									"                       Subscription subscription =  ca.getBillingAccounts().get(0).getUsersAccounts().get(0).getSubscriptions().get(0);",
									"                       if (subscription != null && !\"NO\".equals(subscription.getCfValue(CF_RETRY_PAYMENT))) {",
									"                           log.debug(\" subscription found = {} \", subscription);",
									"                           count++;",
									"                           this.customFieldInstanceService.setCFValue(subscription, CF_RETRY_PAYMENT, \"NO\");",
									"                           bufferedWriter.write(String.valueOf(subscription.getCode()));",
									"                           bufferedWriter.newLine();   ",
									"                       }",
									"                    } catch (Exception e) {",
									"                        log.error(\" error getting Subscription from [ca = {}]\",caId , e);",
									"                    }",
									"                }",
									"                ",
									"            } ",
									"            ",
									"        } catch (Exception e) {",
									"            log.error(\" error on processSubscriptionsWithInvalidCB  [{}]\", e.getMessage(), e);",
									"            throw new BusinessException(\"error on processSubscriptionsWithInvalidCB : \" + e.getMessage(), e);",
									"        } finally {",
									"           if (count == 0) {",
									"               final String msg = \"No Subscription found having Retry = 'Yes' and Invalid CB \";",
									"               log.debug(msg);",
									"               methodContext.put(Script.JOB_RESULT_REPORT, msg);",
									"               this.deleteIfExists(flatFilePath);",
									"            } else {",
									"               log.debug(String.format(\" End processSubscriptionsWithInvalidCB : [%d Subscriptions found ]\", count));",
									"            }   ",
									"        }",
									"    }",
									"    ",
									"     private void deleteIfExists(String filePath) {",
									"        try {",
									"            Files.deleteIfExists(Paths.get(filePath));",
									"        } catch (IOException e) {",
									"            log.error(\" Cannot delete file {} \", filePath, e);",
									"        }",
									"    }",
									"",
									"}`",
									"pm.variables.set('SetNoRetryAndExtractSubsInvalidCBScript', escapeJava(script));"
								],
								"type": "text/javascript"
							}
						},
						{
							"listen": "test",
							"script": {
								"id": "d8bbfea6-ef08-4bf0-bfb0-873e022cfee0",
								"exec": [
									"var jsonData = JSON.parse(responseBody);",
									"tests[\"is.success\"] = jsonData.actionStatus.status === \"SUCCESS\";"
								],
								"type": "text/javascript"
							}
						}
					],
					"request": {
						"auth": {
							"type": "basic",
							"basic": [
								{
									"key": "username",
									"value": "{{opencell.username}}",
									"type": "string"
								},
								{
									"key": "password",
									"value": "{{opencell.password}}",
									"type": "string"
								}
							]
						},
						"method": "POST",
						"header": [
							{
								"key": "Content-Type",
								"value": "application/json"
							},
							{
								"key": "Proxy-Authorization",
								"type": "text",
								"value": "{{proxy.auth}}"
							}
						],
						"body": {
							"mode": "raw",
							"raw": "{\n    \"code\": \"org.meveo.service.script.SetNoRetryAndExtractSubsInvalidCBScript\",\n    \"description\": \"SetNoRetryAndExtractSubsInvalidCBScript\",\n    \"type\": \"JAVA\",\n    \"script\": \"{{SetNoRetryAndExtractSubsInvalidCBScript}}\",\n    \"executionRoles\": [],\n    \"sourcingRoles\": []\n}"
						},
						"url": {
							"raw": "{{opencell.url}}/scriptInstance/createOrUpdate",
							"host": [
								"{{opencell.url}}"
							],
							"path": [
								"scriptInstance",
								"createOrUpdate"
							]
						},
						"description": "- Deploy 5.4.X core version.\n- Install Fnac collection.\n- Import attached collection and run the two requests under \"Release : scripts + Jobs\" folder.\n- Now Prepare a Subscription (create or reuse an existing one) having theses conditions : \n   + Flag retry = Yes\n   + The subscription should be related to a CA having CB as prefered payment method\n   + CB of the said CA should be expired\n  \nPS : \nA trick to get CB expired as required is to run such sql request \n\"update ar_payment_token  set month_expiration = 12 , year_expiration = 18 where token_type = 'CARD' and customer_account_id = {Your CA id}\""
					},
					"response": []
				},
				{
					"name": "Create SetNoRetryAndExtractSubsInvalidCB_Job",
					"request": {
						"auth": {
							"type": "basic",
							"basic": [
								{
									"key": "username",
									"value": "{{opencell.username}}",
									"type": "string"
								},
								{
									"key": "password",
									"value": "{{opencell.password}}",
									"type": "string"
								}
							]
						},
						"method": "POST",
						"header": [
							{
								"key": "Content-Type",
								"value": "application/json"
							},
							{
								"key": "Proxy-Authorization",
								"type": "text",
								"value": "{{proxy.auth}}"
							}
						],
						"body": {
							"mode": "raw",
							"raw": "{\n    \"code\": \"SetNoRetryAndExtractSubsInvalidCB_Job\",\n    \"description\": \"SetNoRetryAndExtractSubsInvalidCB_Job\",\n    \"jobCategory\": \"MEDIATION\",\n    \"jobTemplate\": \"ScriptingJob\",\n    \"customFields\": {\n        \"customField\": [\n            {\n                \"code\": \"ScriptingJob_script\",\n                \"entityReferenceValue\": {\n                    \"classname\": \"org.meveo.model.scripts.ScriptInstance\",\n                    \"code\": \"org.meveo.service.script.SetNoRetryAndExtractSubsInvalidCBScript\"\n                } \n            } ,\n            {\n                \"code\": \"ScriptingJob_variables\",\n                \"mapValue\": {\n                    \"OUTPUT_DIR\": {\n                        \"value\": \"/batch/payment/output/cb-invalid\"\n                    }\n                }\n            }\n        ]\n    }\n}"
						},
						"url": {
							"raw": "{{opencell.url}}/jobInstance/createOrUpdate",
							"host": [
								"{{opencell.url}}"
							],
							"path": [
								"jobInstance",
								"createOrUpdate"
							]
						}
					},
					"response": []
				}
			]
		},
		{
			"name": "#567 - WS fin de parcours de souscription",
			"item": [
				{
					"name": "SubscriptionScript",
					"event": [
						{
							"listen": "test",
							"script": {
								"id": "652a0fa2-7a3f-4257-8db6-58d37a63eb75",
								"exec": [
									""
								],
								"type": "text/javascript"
							}
						}
					],
					"request": {
						"auth": {
							"type": "basic",
							"basic": [
								{
									"key": "password",
									"value": "{{opencell.password}}",
									"type": "string"
								},
								{
									"key": "username",
									"value": "{{opencell.username}}",
									"type": "string"
								}
							]
						},
						"method": "POST",
						"header": [
							{
								"key": "Content-Type",
								"value": "application/json"
							},
							{
								"key": "Proxy-Authorization",
								"type": "text",
								"value": "{{proxy.auth}}"
							}
						],
						"body": {
							"mode": "raw",
							"raw": "{\n    \"code\": \"org.meveo.service.script.SubscriptionScript\",\n    \"description\": \"SubscriptionScript\",\n    \"type\": \"JAVA\",\n    \"script\": \"package org.meveo.service.script;\\r\\n\\r\\nimport org.meveo.admin.exception.BusinessException;\\r\\nimport org.meveo.commons.utils.StringUtils;\\r\\nimport org.meveo.model.billing.Subscription;\\r\\nimport org.meveo.model.billing.SubscriptionStatusEnum;\\r\\nimport org.meveo.model.crm.Provider;\\r\\nimport org.meveo.service.billing.impl.SubscriptionService;\\r\\nimport org.meveo.service.crm.impl.ProviderService;\\r\\n\\r\\nimport javax.persistence.NoResultException;\\r\\nimport javax.persistence.Query;\\r\\nimport javax.persistence.Table;\\r\\nimport javax.persistence.metamodel.EntityType;\\r\\nimport javax.persistence.metamodel.Metamodel;\\r\\nimport java.io.Serializable;\\r\\nimport java.util.*;\\r\\nimport java.util.stream.Collectors;\\r\\n\\r\\n/**\\r\\n * The Class SubscriptionScript.\\r\\n *\\r\\n * @author Abdellatif BARI\\r\\n * @author Julien LEBOUTEILLER\\r\\n */\\r\\npublic class SubscriptionScript extends Script {\\r\\n\\r\\n    private SubscriptionService subscriptionService = (SubscriptionService) getServiceInterface(SubscriptionService.class.getSimpleName());\\r\\n    private ProviderService providerService = (ProviderService) getServiceInterface(ProviderService.class.getSimpleName());\\r\\n\\r\\n    private Provider appProvider = providerService.getProvider();\\r\\n\\r\\n    /**\\r\\n     * The custom field of external transaction id.\\r\\n     */\\r\\n    private static final String CF_EXTERNAL_TRANSACTION_ID = \\\"CF_SU_FD_TRANSACTION_ID\\\";\\r\\n\\r\\n    /**\\r\\n     * The custom field of external provider code.\\r\\n     */\\r\\n    private static final String CF_EXTERNAL_PROVIDER_CODE = \\\"CF_SU_FD_ENSEIGNE\\\";\\r\\n\\r\\n    /**\\r\\n     * The custom field of card number.\\r\\n     */\\r\\n    private static final String CF_EXTERNAL_CARD_NUMBER = \\\"CF_SU_FD_CARD_NUMBER\\\";\\r\\n\\r\\n    /**\\r\\n     * The custom field of mapping\\r\\n     */\\r\\n    private static final String CF_PROVIDER_MAPPING = \\\"CF_PROV_FD_OFFER_CODE_MAPPING\\\";\\r\\n\\r\\n    @Override\\r\\n    public void execute(Map<String, Object> methodContext) throws BusinessException {\\r\\n        String transaction = (String) methodContext.get(\\\"idTransaction\\\");\\r\\n        String provider = (String) methodContext.get(\\\"enseigne\\\");\\r\\n\\r\\n        // Clear methodContext (remove all unnecessary results)\\r\\n        methodContext.clear();\\r\\n\\r\\n        if (!StringUtils.isBlank(transaction) && !StringUtils.isBlank(provider)) {\\r\\n            Map<String, List<String>> customFieldValues = new HashMap<>();\\r\\n            customFieldValues.put(CF_EXTERNAL_TRANSACTION_ID, Collections.singletonList(transaction));\\r\\n            //customFieldValues.put(CF_EXTERNAL_PROVIDER_CODE, Collections.singletonList(provider));\\r\\n\\r\\n            //find list of subscriptions by CFs (transaction && provider)\\r\\n            List<Subscription> subscriptions = findByCustomFieldValues(customFieldValues);\\r\\n\\r\\n            methodContext.put(\\\"idTransaction\\\", transaction);\\r\\n            methodContext.put(\\\"codeRetour\\\", \\\"OK\\\");\\r\\n\\r\\n            //Map list of subscriptions to Response DTO\\r\\n            mapSubscriptionsListToDTO(subscriptions, methodContext);\\r\\n        } else {\\r\\n            methodContext.put(\\\"codeRetour\\\", \\\"KO\\\");\\r\\n            methodContext.put(\\\"message\\\", \\\"Les param\\u00E8tres `idTransaction` et `enseigne` sont obligatoires.\\\");\\r\\n        }\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * Map list of Subscription Entity to list of SubscriptionTransactionDto.\\r\\n     *\\r\\n     * @param subscriptions list of Subscription Entity\\r\\n     * @param methodContext Method variables in a form of a map where CONTEXT_ENTITY=entity to process\\r\\n     */\\r\\n    private void mapSubscriptionsListToDTO(List<Subscription> subscriptions, Map<String, Object> methodContext) {\\r\\n        if (subscriptions != null && !subscriptions.isEmpty()) {\\r\\n            List<SubscriptionTransactionDto> subscriptionsList = new ArrayList<>();\\r\\n            for (Subscription subscription : subscriptions) {\\r\\n                SubscriptionTransactionDto subscriptionDto = mapSubscriptionToDTO(subscription);\\r\\n                if (subscriptionDto != null) {\\r\\n                    subscriptionsList.add(subscriptionDto);\\r\\n                }\\r\\n            }\\r\\n\\r\\n            //return a SubscriptionsTransactionDto result as response.\\r\\n            methodContext.put(\\\"souscriptions\\\", subscriptionsList);\\r\\n        }\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * Map Subscription Entity to SubscriptionTransactionDto.\\r\\n     *\\r\\n     * @param subscription Subscription Entity\\r\\n     * @return the subscription transaction DTO\\r\\n     */\\r\\n    private SubscriptionTransactionDto mapSubscriptionToDTO(Subscription subscription) {\\r\\n        SubscriptionTransactionDto subscriptionDto = null;\\r\\n        if (subscription != null) {\\r\\n            subscriptionDto = new SubscriptionTransactionDto();\\r\\n            subscriptionDto.setNumContrat(subscription.getCode());\\r\\n            subscriptionDto.setOffre(retrieveOfferCode(subscription.getOffer().getCode()));\\r\\n            subscriptionDto.setNumCarte((String) subscription.getCfValue(CF_EXTERNAL_CARD_NUMBER));\\r\\n            if (subscription.getStatus().equals(SubscriptionStatusEnum.ACTIVE) || subscription.getStatus().equals(SubscriptionStatusEnum.CREATED)) {\\r\\n                subscriptionDto.setStatut(\\\"OK\\\");\\r\\n            } else {\\r\\n                subscriptionDto.setStatut(\\\"KO\\\");\\r\\n            }\\r\\n        }\\r\\n        return subscriptionDto;\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * Find entity by code - strict match.\\r\\n     *\\r\\n     * @param customFieldValues map of custom field names and their values\\r\\n     * @return A list of business entity\\r\\n     */\\r\\n    private List<Subscription> findByCustomFieldValues(Map<String, List<String>> customFieldValues) {\\r\\n        if (customFieldValues == null || customFieldValues.isEmpty()) {\\r\\n            return null;\\r\\n        }\\r\\n\\r\\n        //Check if the specified class is present in the metamodel.\\r\\n        Class<Subscription> entityClass = Subscription.class;\\r\\n        Metamodel meta = subscriptionService.getEntityManager().getMetamodel();\\r\\n        EntityType<Subscription> entityType = meta.entity(entityClass);\\r\\n\\r\\n        //Check whether @Table annotation is present on the class.\\r\\n        Table t = entityClass.getAnnotation(Table.class);\\r\\n\\r\\n        String tableName = (t == null) ? entityType.getName() : t.name();\\r\\n        String tableAlias = \\\"be\\\";\\r\\n\\r\\n        StringBuilder whereBuilder = new StringBuilder();\\r\\n        StringBuilder orderByBuilder = new StringBuilder();\\r\\n\\r\\n        for (Map.Entry<String, List<String>> entry : customFieldValues.entrySet()) {\\r\\n            if (whereBuilder.length() > 0) {\\r\\n                whereBuilder.append(\\\" and \\\");\\r\\n            }\\r\\n            if (orderByBuilder.length() == 0) {\\r\\n                orderByBuilder.append(\\\" order by \\\");\\r\\n            } else {\\r\\n                orderByBuilder.append(\\\", \\\");\\r\\n            }\\r\\n            whereBuilder.append(tableAlias).append(\\\".cf_values\\\\\\\\:\\\\\\\\:JSON->'\\\").append(entry.getKey()).append(\\\"'->0->>'string' in (\\\")\\r\\n                    .append(entry.getValue().stream().map(elem -> \\\"'\\\" + elem + \\\"'\\\").collect(Collectors.joining(\\\",\\\"))).append(\\\") \\\");\\r\\n            orderByBuilder.append(tableAlias).append(\\\".cf_values\\\\\\\\:\\\\\\\\:JSON->'\\\").append(entry.getKey()).append(\\\"'->0->>'string' asc\\\");\\r\\n        }\\r\\n\\r\\n        String queryBuilder = \\\"select \\\" + tableAlias + \\\".* from \\\" + tableName + \\\" \\\" + tableAlias + \\\" where \\\" +\\r\\n                whereBuilder.toString() + orderByBuilder.toString();\\r\\n        Query query = subscriptionService.getEntityManager().createNativeQuery(queryBuilder, entityClass);\\r\\n\\r\\n        try {\\r\\n            return query.getResultList();\\r\\n        } catch (NoResultException e) {\\r\\n            return null;\\r\\n        }\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * Retrieve offer code from application settings by tech offer code\\r\\n     *\\r\\n     * @return offer code\\r\\n     */\\r\\n    private String retrieveOfferCode(String techOfferCode) {\\r\\n        LinkedHashMap<String, String> mapping = (LinkedHashMap<String, String>) appProvider.getCfValue(CF_PROVIDER_MAPPING);\\r\\n\\r\\n        return mapping.entrySet()\\r\\n                .stream()\\r\\n                .filter(entry -> Objects.equals(entry.getValue(), techOfferCode))\\r\\n                .map(Map.Entry::getKey).findFirst().orElse(\\\"\\\");\\r\\n    }\\r\\n\\r\\n    /**\\r\\n     * The Class SubscriptionTransactionDto.\\r\\n     *\\r\\n     * @author Abdellatif BARI\\r\\n     */\\r\\n    class SubscriptionTransactionDto implements Serializable {\\r\\n\\r\\n        /**\\r\\n         * The Constant serialVersionUID.\\r\\n         */\\r\\n        private static final long serialVersionUID = 2061642844072496160L;\\r\\n\\r\\n        /**\\r\\n         * The subscription code.\\r\\n         */\\r\\n        private String numContrat;\\r\\n\\r\\n        /**\\r\\n         * The offer code.\\r\\n         */\\r\\n        private String offre;\\r\\n\\r\\n        /**\\r\\n         * The card number.\\r\\n         */\\r\\n        private String numCarte;\\r\\n\\r\\n        /**\\r\\n         * The status of subscription\\r\\n         */\\r\\n        private String statut;\\r\\n\\r\\n        /**\\r\\n         * Instantiates a new SubscriptionTransactionDto.\\r\\n         */\\r\\n        SubscriptionTransactionDto() {\\r\\n            super();\\r\\n        }\\r\\n\\r\\n        /**\\r\\n         * Gets the subscription code.\\r\\n         *\\r\\n         * @return the subscription code\\r\\n         */\\r\\n        public String getNumContrat() {\\r\\n            return numContrat;\\r\\n        }\\r\\n\\r\\n        /**\\r\\n         * Sets the subscription code.\\r\\n         *\\r\\n         * @param numContrat the subscription code to set\\r\\n         */\\r\\n        public void setNumContrat(String numContrat) {\\r\\n            this.numContrat = numContrat;\\r\\n        }\\r\\n\\r\\n        /**\\r\\n         * Gets the offer code.\\r\\n         *\\r\\n         * @return the offer code\\r\\n         */\\r\\n        public String getOffre() {\\r\\n            return offre;\\r\\n        }\\r\\n\\r\\n        /**\\r\\n         * Sets the offer code.\\r\\n         *\\r\\n         * @param offre the offer code to set\\r\\n         */\\r\\n        public void setOffre(String offre) {\\r\\n            this.offre = offre;\\r\\n        }\\r\\n\\r\\n        /**\\r\\n         * Gets the card number.\\r\\n         *\\r\\n         * @return the card number\\r\\n         */\\r\\n        public String getNumCarte() {\\r\\n            return numCarte;\\r\\n        }\\r\\n\\r\\n        /**\\r\\n         * Sets the card number.\\r\\n         *\\r\\n         * @param numCarte the card number to set\\r\\n         */\\r\\n        public void setNumCarte(String numCarte) {\\r\\n            this.numCarte = numCarte;\\r\\n        }\\r\\n\\r\\n        public String getStatut() {\\r\\n            return statut;\\r\\n        }\\r\\n\\r\\n        public void setStatut(String statut) {\\r\\n            this.statut = statut;\\r\\n        }\\r\\n\\r\\n        /* (non-Javadoc)\\r\\n         * @see java.lang.Object#toString()\\r\\n         */\\r\\n        @Override\\r\\n        public String toString() {\\r\\n            return \\\"SubscriptionTransactionDto [numcontrat=\\\" + numContrat + \\\", offre=\\\" + offre + \\\", numcarte=\\\" + numCarte + \\\"]\\\";\\r\\n        }\\r\\n    }\\r\\n}\",\n    \"executionRoles\": [],\n    \"sourcingRoles\": []\n}"
						},
						"url": {
							"raw": "{{opencell.url}}/scriptInstance/createOrUpdate",
							"host": [
								"{{opencell.url}}"
							],
							"path": [
								"scriptInstance",
								"createOrUpdate"
							]
						}
					},
					"response": []
				}
			]
		},
		{
			"name": "CF_PROV_PROVIDER_VERSION",
			"event": [
				{
					"listen": "test",
					"script": {
						"id": "533db33d-45ae-448e-bc6a-114c52d19a0d",
						"exec": [
							"var jsonData = JSON.parse(responseBody);",
							"tests[\"is.success\"] = jsonData.status === \"SUCCESS\";"
						],
						"type": "text/javascript"
					}
				}
			],
			"request": {
				"auth": {
					"type": "basic",
					"basic": [
						{
							"key": "username",
							"value": "{{opencell.username}}",
							"type": "string"
						},
						{
							"key": "password",
							"value": "{{opencell.password}}",
							"type": "string"
						},
						{
							"key": "saveHelperData",
							"value": true,
							"type": "boolean"
						},
						{
							"key": "showPassword",
							"value": false,
							"type": "boolean"
						}
					]
				},
				"method": "POST",
				"header": [
					{
						"key": "Authorization",
						"value": "Basic b3BlbmNlbGwuYWRtaW46b3BlbmNlbGwuYWRtaW4="
					},
					{
						"key": "Content-Type",
						"value": "application/json"
					}
				],
				"body": {
					"mode": "raw",
					"raw": "{\r\n    \"code\": \"{{request.label}}_{{$timestamp}}\",\r\n    \"description\": \"{{project.code}} {{project.type}} {{project.version}}\",\r\n    \"fieldType\": \"STRING\",\r\n    \"appliesTo\": \"PROVIDER\",\r\n    \"defaultValue\": \"{{timestamp.iso}}\",\r\n    \"storageType\": \"SINGLE\",\r\n    \"valueRequired\": false,\r\n    \"versionable\": false,\r\n    \"allowEdit\": false,\r\n    \"hideOnNew\": false,\r\n    \"cacheValue\": false,\r\n    \"guiPosition\": \"tab:Project versions:999\"\r\n}\r\n"
				},
				"url": {
					"raw": "{{opencell.url}}/customFieldTemplate/createOrUpdate",
					"host": [
						"{{opencell.url}}"
					],
					"path": [
						"customFieldTemplate",
						"createOrUpdate"
					]
				}
			},
			"response": []
		}
	],
	"event": [
		{
			"listen": "prerequest",
			"script": {
				"id": "351bba63-d110-4a17-aa31-5dd5e01e03f9",
				"type": "text/javascript",
				"exec": [
					"pm.globals.set(\"timestamp.iso\", (new Date()).toISOString());",
					"pm.globals.set(\"request.label\", pm.info.requestName);",
					"",
					"var parts = pm.info.requestName.split(\"|\");",
					"",
					"for(let i=0; i<parts.length; i++) {",
					"    pm.globals.set(\"request.label.\"+i, parts[i]);",
					"}",
					""
				]
			}
		},
		{
			"listen": "test",
			"script": {
				"id": "41a93d89-7b80-42da-a5d0-75de0101172b",
				"type": "text/javascript",
				"exec": [
					""
				]
			}
		}
	],
	"variable": [
		{
			"id": "d4fc5b74-bcee-4ab6-bdc8-edd08fb172ca",
			"key": "template.code",
			"value": "FD",
			"type": "string"
		},
		{
			"id": "1570f7e8-7e00-4a4f-b00b-ab83dfce1c69",
			"key": "template.label",
			"value": "Fnac-Darty",
			"type": "string"
		},
		{
			"id": "6ef763f3-29af-4fae-8b1e-da4692cc2483",
			"key": "provider.code",
			"value": "ABO",
			"type": "string"
		},
		{
			"id": "3d8b0541-d899-4a26-bcc2-959f28fb63c4",
			"key": "project.code",
			"value": "FnacDarty-370",
			"type": "string"
		},
		{
			"id": "e253a42b-fb24-423d-85b6-db39f0b949d5",
			"key": "project.description",
			"value": "Fnac-Darty Abo",
			"type": "string"
		},
		{
			"id": "58e23fd0-dc1a-4609-bbdd-d7f089f71651",
			"key": "project.type",
			"value": "Patch",
			"type": "string"
		},
		{
			"id": "b8100312-3227-4b14-bdb5-1517b1104d81",
			"key": "project.version",
			"value": "20190327_1",
			"type": "string"
		}
	]
}