@nicotordev/flowcl-pagos
Version:
SDK en TypeScript para integrar pagos con la API de Flow.cl de manera sencilla y segura.
48 lines • 2.57 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const errors_1 = require("../errors");
const flow_coupons_1 = __importDefault(require("./flow.coupons"));
const flow_customers_1 = __importDefault(require("./flow.customers"));
const flow_invoices_1 = __importDefault(require("./flow.invoices"));
const flow_merchants_1 = __importDefault(require("./flow.merchants"));
const flow_payments_1 = __importDefault(require("./flow.payments"));
const flow_plans_1 = __importDefault(require("./flow.plans"));
const flow_refunds_1 = __importDefault(require("./flow.refunds"));
const flow_settlement_1 = __importDefault(require("./flow.settlement"));
const flow_subscriptions_1 = __importDefault(require("./flow.subscriptions"));
const flow_subscriptionsItems_1 = __importDefault(require("./flow.subscriptionsItems"));
/**
* Cliente para interactuar con la API de Flow.
*/
class Flow {
/**
* Constructor de la clase FlowClient.
* @param apiKey Clave de API proporcionada por Flow.
* @param secretKey Clave secreta proporcionada por Flow.
* @param enviroment Entorno de Flow ('sandbox' o 'production').
* @throws FlowAuthenticationError Si no se proporciona apiKey o secretKey.
*/
constructor(apiKey, secretKey, enviroment = 'sandbox') {
if (!apiKey || !secretKey) {
throw new errors_1.FlowAuthenticationError();
}
const baseURL = enviroment === 'sandbox'
? 'https://sandbox.flow.cl/api'
: 'https://www.flow.cl/api';
this.payments = new flow_payments_1.default(apiKey, secretKey, baseURL);
this.refunds = new flow_refunds_1.default(apiKey, secretKey, baseURL);
this.customers = new flow_customers_1.default(apiKey, secretKey, baseURL);
this.plans = new flow_plans_1.default(apiKey, secretKey, baseURL);
this.subscriptions = new flow_subscriptions_1.default(apiKey, secretKey, baseURL);
this.subscriptionsItems = new flow_subscriptionsItems_1.default(apiKey, secretKey, baseURL);
this.coupons = new flow_coupons_1.default(apiKey, secretKey, baseURL);
this.invoices = new flow_invoices_1.default(apiKey, secretKey, baseURL);
this.settlements = new flow_settlement_1.default(apiKey, secretKey, baseURL);
this.merchants = new flow_merchants_1.default(apiKey, secretKey, baseURL);
}
}
exports.default = Flow;
//# sourceMappingURL=flow.js.map