UNPKG

mastercard-mastercom

Version:

Core functionality for MasterCard API

245 lines (223 loc) 10 kB
/* * Copyright (c) 2013 - 2016, MasterCard International Incorporated * All rights reserved. * * Redistribution and use in source and binary forms, with or without modification, are * permitted provided that the following conditions are met: * * Redistributions of source code must retain the above copyright notice, this list of * conditions and the following disclaimer. * Redistributions in binary form must reproduce the above copyright notice, this list of * conditions and the following disclaimer in the documentation and/or other materials * provided with the distribution. * Neither the name of the MasterCard International Incorporated nor the names of its * contributors may be used to endorse or promote products derived from this software * without specific prior written permission. * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT * SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED * TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER * IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * */ var MasterCardAPI = require('mastercard-api-core'); var ResourceConfig = require('./resourceconfig'); var Chargebacks = {}; var operationConfigs = {}; /** * Initialize Chargebacks * @private */ var _init = function() { operationConfigs["5efb732c-8a22-4d40-8061-cc49ee874f51"] = new MasterCardAPI.OperationConfig("/mastercom/v6/chargebacks/acknowledge", "update", [""], [""]); operationConfigs["c16dbdfb-b26a-4d05-b29c-cb43c856f860"] = new MasterCardAPI.OperationConfig("/mastercom/v6/claims/{claim-id}/chargebacks", "create", [""], [""]); operationConfigs["3552eee5-14d2-4515-82bd-b9437fbc08d6"] = new MasterCardAPI.OperationConfig("/mastercom/v6/claims/{claim-id}/chargebacks/{chargeback-id}/reversal", "create", [""], [""]); operationConfigs["a11bd64c-1a61-4021-b33b-9f02691068a0"] = new MasterCardAPI.OperationConfig("/mastercom/v6/claims/{claim-id}/chargebacks/{chargeback-id}/documents", "query", ["format"], [""]); operationConfigs["4e9ed2ab-58d0-4945-9307-ea6f4ac41589"] = new MasterCardAPI.OperationConfig("/mastercom/v6/claims/{claim-id}/chargebacks/loaddataforchargebacks", "create", [""], [""]); operationConfigs["92d79b45-8025-4c7a-aa08-c4643433373d"] = new MasterCardAPI.OperationConfig("/mastercom/v6/chargebacks/imagestatus", "update", [""], [""]); operationConfigs["9644cd45-8e5e-4071-ace4-0b58d97a9e8c"] = new MasterCardAPI.OperationConfig("/mastercom/v6/chargebacks/status", "update", [""], [""]); operationConfigs["c832f209-6f29-457f-8cc3-e2acbf5802d3"] = new MasterCardAPI.OperationConfig("/mastercom/v6/claims/{claim-id}/chargebacks/{chargeback-id}", "update", [""], [""]); }; _init(); /** * Private function to get operation config * @returns Object operation config * @private */ var _getOperationConfig = function(operationUUID) { var operationConfig = operationConfigs[operationUUID]; if(!MasterCardAPI.isSet(operationConfig)) { throw new MasterCardAPI.MasterCardError.SDKError("Invalid operationUUID supplied: " + operationUUID); } return operationConfig; }; var _getOperationMetaData = function() { return new MasterCardAPI.OperationMetaData(ResourceConfig.getVersion(), ResourceConfig.getHost(), ResourceConfig.getContext(), ResourceConfig.getJsonNative(), ResourceConfig.getContentTypeOverride()); }; /** * Function to update a Chargebacks object. * * @method update * @param {Object} params - A map of parameters on which to update the Chargebacks object. * @param {Function} callback - A function to handle success/error responses from the API.<br/> * The function takes 2 parameters, the first is an error object. This is null if no error occurs. The second parameter is the response data. This is null if an error occurs. */ Chargebacks.acknowledgeReceivedChargebacks = function(params, callback) { try { MasterCardAPI.execute({ operationConfig: _getOperationConfig("5efb732c-8a22-4d40-8061-cc49ee874f51"), operationMetaData: _getOperationMetaData(), params: params }, callback); } catch (e) { callback(e, null); } }; /** * Function to create a Chargebacks object. * * @method create * @param {Object} params - A map of parameters in which to create the Chargebacks from. * @param {Function} callback - A function to handle success/error responses from the API.<br/> * The function takes 2 parameters, the first is an error object. This is null if no error occurs. The second parameter is the response data. This is null if an error occurs. */ Chargebacks.create = function(params, callback) { try { MasterCardAPI.execute({ operationConfig: _getOperationConfig("c16dbdfb-b26a-4d05-b29c-cb43c856f860"), operationMetaData: _getOperationMetaData(), params: params }, callback); } catch (e) { callback(e, null); } }; /** * Function to create a Chargebacks object. * * @method create * @param {Object} params - A map of parameters in which to create the Chargebacks from. * @param {Function} callback - A function to handle success/error responses from the API.<br/> * The function takes 2 parameters, the first is an error object. This is null if no error occurs. The second parameter is the response data. This is null if an error occurs. */ Chargebacks.createReversal = function(params, callback) { try { MasterCardAPI.execute({ operationConfig: _getOperationConfig("3552eee5-14d2-4515-82bd-b9437fbc08d6"), operationMetaData: _getOperationMetaData(), params: params }, callback); } catch (e) { callback(e, null); } }; /** * Function to query a Chargebacks object from the API. * * @method find * @param {Object} query - A map of parameters in which to create the Chargebacks from. * @param {Function} callback - A function to handle success/error responses from the API.<br/> * The function takes 2 parameters, the first is an error object. This is null if no error occurs. The second parameter is the response data. This is null if an error occurs. */ Chargebacks.retrieveDocumentation = function(query, callback) { var params = MasterCardAPI.isSet(query) ? query : {}; try { MasterCardAPI.execute({ operationConfig: _getOperationConfig("a11bd64c-1a61-4021-b33b-9f02691068a0"), operationMetaData: _getOperationMetaData(), params: params }, callback); } catch (e) { callback(e, null); } }; /** * Function to create a Chargebacks object. * * @method create * @param {Object} params - A map of parameters in which to create the Chargebacks from. * @param {Function} callback - A function to handle success/error responses from the API.<br/> * The function takes 2 parameters, the first is an error object. This is null if no error occurs. The second parameter is the response data. This is null if an error occurs. */ Chargebacks.getPossibleValueListsForCreate = function(params, callback) { try { MasterCardAPI.execute({ operationConfig: _getOperationConfig("4e9ed2ab-58d0-4945-9307-ea6f4ac41589"), operationMetaData: _getOperationMetaData(), params: params }, callback); } catch (e) { callback(e, null); } }; /** * Function to update a Chargebacks object. * * @method update * @param {Object} params - A map of parameters on which to update the Chargebacks object. * @param {Function} callback - A function to handle success/error responses from the API.<br/> * The function takes 2 parameters, the first is an error object. This is null if no error occurs. The second parameter is the response data. This is null if an error occurs. */ Chargebacks.chargebacksImageStatus = function(params, callback) { try { MasterCardAPI.execute({ operationConfig: _getOperationConfig("92d79b45-8025-4c7a-aa08-c4643433373d"), operationMetaData: _getOperationMetaData(), params: params }, callback); } catch (e) { callback(e, null); } }; /** * Function to update a Chargebacks object. * * @method update * @param {Object} params - A map of parameters on which to update the Chargebacks object. * @param {Function} callback - A function to handle success/error responses from the API.<br/> * The function takes 2 parameters, the first is an error object. This is null if no error occurs. The second parameter is the response data. This is null if an error occurs. */ Chargebacks.chargebacksStatus = function(params, callback) { try { MasterCardAPI.execute({ operationConfig: _getOperationConfig("9644cd45-8e5e-4071-ace4-0b58d97a9e8c"), operationMetaData: _getOperationMetaData(), params: params }, callback); } catch (e) { callback(e, null); } }; /** * Function to update a Chargebacks object. * * @method update * @param {Object} params - A map of parameters on which to update the Chargebacks object. * @param {Function} callback - A function to handle success/error responses from the API.<br/> * The function takes 2 parameters, the first is an error object. This is null if no error occurs. The second parameter is the response data. This is null if an error occurs. */ Chargebacks.update = function(params, callback) { try { MasterCardAPI.execute({ operationConfig: _getOperationConfig("c832f209-6f29-457f-8cc3-e2acbf5802d3"), operationMetaData: _getOperationMetaData(), params: params }, callback); } catch (e) { callback(e, null); } }; module.exports = Chargebacks;