@facturacr/atv-sdk 0.0.7-beta → 0.0.8-beta
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.github/workflows/ci.yml +7 -4
- package/__tests__/stubs/commonExpectedXml.xml +94 -0
- package/__tests__/stubs/createDocument.stub.ts +80 -0
- package/__tests__/tests/ATV/__snapshots__/index.test.ts.snap +3 -0
- package/__tests__/tests/ATV/index.test.ts +50 -0
- package/doc/atv-structures/4.3/ANEXOS Y ESTRUCTURAS_V4.3.pdf +0 -0
- package/doc/atv-structures/4.3/API Ministerio de Hacienda /342/200/223 Dropbox Paper.pdf +0 -0
- package/doc/atv-structures/4.3/MensajeHacienda_V4.3.xsd.xml +179 -0
- package/doc/atv-structures/4.3/MensajeReceptor_V4.3.xsd.xml +163 -0
- package/doc/atv-structures/4.3/NotaCreditoElectronica_V4.3.xsd.xml +1804 -0
- package/doc/atv-structures/4.3/NotaDebitoElectronica_V4.3.xsd.xml +1804 -0
- package/examples/createAndSend.ts +27 -32
- package/examples/getToken.ts +3 -2
- package/jest-setup.js +5 -0
- package/jest.config.js +6 -5
- package/package.json +18 -14
- package/src/ATV/core/Clave.ts +41 -0
- package/src/ATV/core/Document.ts +123 -0
- package/src/ATV/core/DocumentType.ts +23 -0
- package/src/ATV/core/FullConsecutive.ts +29 -0
- package/src/ATV/core/OrderLine.ts +95 -0
- package/src/ATV/core/Person.ts +68 -0
- package/src/ATV/core/Summary.type.ts +20 -0
- package/src/ATV/core/documentNames.types.ts +5 -0
- package/src/ATV/index.ts +102 -0
- package/src/ATV/mappers/billDocToAtv.ts +103 -0
- package/src/ATV/types.ts +37 -0
- package/src/ATV/useCases/createDocument/index.ts +137 -0
- package/src/ATV/useCases/createDocument/types.ts +79 -0
- package/src/helpers/comprobantes.ts +1 -1
- package/src/lib/genJSON/index.ts +2 -2
- package/src/lib/genXML/xmlConfig.ts +2 -2
- package/src/services/getToken/GetToken.ts +1 -1
- package/src/types/facturaInterfaces.d.ts +27 -20
- package/__tests__/tests/electronicBill.test.ts +0 -28
- package/dist/__tests__/stubs/frontendRequest.stub.d.ts +0 -3
- package/dist/__tests__/stubs/frontendRequest.stub.js +0 -61
- package/dist/__tests__/stubs/frontendRequest.stub.js.map +0 -1
- package/dist/__tests__/stubs/token.stub.d.ts +0 -17
- package/dist/__tests__/stubs/token.stub.js +0 -21
- package/dist/__tests__/stubs/token.stub.js.map +0 -1
- package/dist/__tests__/tests/electronicBill.test.d.ts +0 -1
- package/dist/__tests__/tests/electronicBill.test.js +0 -38
- package/dist/__tests__/tests/electronicBill.test.js.map +0 -1
- package/dist/__tests__/tests/getClave.test.d.ts +0 -1
- package/dist/__tests__/tests/getClave.test.js +0 -15
- package/dist/__tests__/tests/getClave.test.js.map +0 -1
- package/dist/__tests__/tests/getToken.test.d.ts +0 -0
- package/dist/__tests__/tests/getToken.test.js +0 -28
- package/dist/__tests__/tests/getToken.test.js.map +0 -1
- package/dist/__tests__/tests/lib/getClave.test.d.ts +0 -1
- package/dist/__tests__/tests/lib/getClave.test.js +0 -15
- package/dist/__tests__/tests/lib/getClave.test.js.map +0 -1
- package/dist/__tests__/tests/services/getToken.test.d.ts +0 -1
- package/dist/__tests__/tests/services/getToken.test.js +0 -27
- package/dist/__tests__/tests/services/getToken.test.js.map +0 -1
- package/dist/examples/confirmXML.d.ts +0 -1
- package/dist/examples/confirmXML.js +0 -89
- package/dist/examples/confirmXML.js.map +0 -1
- package/dist/examples/consultXML.d.ts +0 -1
- package/dist/examples/consultXML.js +0 -55
- package/dist/examples/consultXML.js.map +0 -1
- package/dist/examples/createAndSend.d.ts +0 -1
- package/dist/examples/createAndSend.js +0 -77
- package/dist/examples/createAndSend.js.map +0 -1
- package/dist/examples/createCreditNote.d.ts +0 -1
- package/dist/examples/createCreditNote.js +0 -52
- package/dist/examples/createCreditNote.js.map +0 -1
- package/dist/examples/createDebitNote.d.ts +0 -1
- package/dist/examples/createDebitNote.js +0 -52
- package/dist/examples/createDebitNote.js.map +0 -1
- package/dist/examples/genBasicXML.d.ts +0 -1
- package/dist/examples/genBasicXML.js +0 -44
- package/dist/examples/genBasicXML.js.map +0 -1
- package/dist/examples/getClave.d.ts +0 -1
- package/dist/examples/getClave.js +0 -12
- package/dist/examples/getClave.js.map +0 -1
- package/dist/examples/getToken.d.ts +0 -1
- package/dist/examples/getToken.js +0 -16
- package/dist/examples/getToken.js.map +0 -1
- package/dist/src/ATV.d.ts +0 -17
- package/dist/src/ATV.js +0 -16
- package/dist/src/ATV.js.map +0 -1
- package/dist/src/confirmXML.d.ts +0 -8
- package/dist/src/confirmXML.js +0 -44
- package/dist/src/confirmXML.js.map +0 -1
- package/dist/src/creditNote.d.ts +0 -14
- package/dist/src/creditNote.js +0 -77
- package/dist/src/creditNote.js.map +0 -1
- package/dist/src/data/codigoMoneda.d.ts +0 -1
- package/dist/src/data/codigoMoneda.js +0 -184
- package/dist/src/data/codigoMoneda.js.map +0 -1
- package/dist/src/data/exoneracion.d.ts +0 -1
- package/dist/src/data/exoneracion.js +0 -15
- package/dist/src/data/exoneracion.js.map +0 -1
- package/dist/src/data/impuestos.d.ts +0 -25
- package/dist/src/data/impuestos.js +0 -51
- package/dist/src/data/impuestos.js.map +0 -1
- package/dist/src/data/tipoCedula.d.ts +0 -7
- package/dist/src/data/tipoCedula.js +0 -17
- package/dist/src/data/tipoCedula.js.map +0 -1
- package/dist/src/data/tipoDocumento.d.ts +0 -26
- package/dist/src/data/tipoDocumento.js +0 -30
- package/dist/src/data/tipoDocumento.js.map +0 -1
- package/dist/src/data/unidadesMedida.d.ts +0 -5
- package/dist/src/data/unidadesMedida.js +0 -141
- package/dist/src/data/unidadesMedida.js.map +0 -1
- package/dist/src/debitNote.d.ts +0 -14
- package/dist/src/debitNote.js +0 -77
- package/dist/src/debitNote.js.map +0 -1
- package/dist/src/electronicBill.d.ts +0 -3
- package/dist/src/electronicBill.js +0 -61
- package/dist/src/electronicBill.js.map +0 -1
- package/dist/src/helpers/comprobantes.d.ts +0 -7
- package/dist/src/helpers/comprobantes.js +0 -92
- package/dist/src/helpers/comprobantes.js.map +0 -1
- package/dist/src/index.d.ts +0 -8
- package/dist/src/index.js.map +0 -1
- package/dist/src/lib/genClave/index.d.ts +0 -9
- package/dist/src/lib/genClave/index.js +0 -119
- package/dist/src/lib/genClave/index.js.map +0 -1
- package/dist/src/lib/genJSON/confirmXML.d.ts +0 -7
- package/dist/src/lib/genJSON/confirmXML.js +0 -46
- package/dist/src/lib/genJSON/confirmXML.js.map +0 -1
- package/dist/src/lib/genJSON/index.d.ts +0 -3
- package/dist/src/lib/genJSON/index.js +0 -133
- package/dist/src/lib/genJSON/index.js.map +0 -1
- package/dist/src/lib/genXML/index.d.ts +0 -7
- package/dist/src/lib/genXML/index.js +0 -51
- package/dist/src/lib/genXML/index.js.map +0 -1
- package/dist/src/lib/genXML/sigXML/genKeysAndCert.d.ts +0 -6
- package/dist/src/lib/genXML/sigXML/genKeysAndCert.js +0 -72
- package/dist/src/lib/genXML/sigXML/genKeysAndCert.js.map +0 -1
- package/dist/src/lib/genXML/sigXML/index.d.ts +0 -1
- package/dist/src/lib/genXML/sigXML/index.js +0 -86
- package/dist/src/lib/genXML/sigXML/index.js.map +0 -1
- package/dist/src/lib/genXML/xmlConfig.d.ts +0 -55
- package/dist/src/lib/genXML/xmlConfig.js +0 -36
- package/dist/src/lib/genXML/xmlConfig.js.map +0 -1
- package/dist/src/services/getToken/GetToken.d.ts +0 -8
- package/dist/src/services/getToken/GetToken.js +0 -66
- package/dist/src/services/getToken/GetToken.js.map +0 -1
- package/dist/src/services/getToken/__tests__/GetToken.test.d.ts +0 -1
- package/dist/src/services/getToken/__tests__/GetToken.test.js +0 -86
- package/dist/src/services/getToken/__tests__/GetToken.test.js.map +0 -1
- package/dist/src/services/getToken/index.d.ts +0 -3
- package/dist/src/services/getToken/index.js +0 -22
- package/dist/src/services/getToken/index.js.map +0 -1
- package/dist/src/services/getToken/types.d.ts +0 -27
- package/dist/src/services/getToken/types.js +0 -3
- package/dist/src/services/getToken/types.js.map +0 -1
- package/dist/src/services/send/index.d.ts +0 -2
- package/dist/src/services/send/index.js +0 -40
- package/dist/src/services/send/index.js.map +0 -1
- package/dist/src/types/xml/notaDeCredito.d.ts +0 -21
- package/dist/src/types/xml/notaDeCredito.js +0 -3
- package/dist/src/types/xml/notaDeCredito.js.map +0 -1
- package/dist/src/types/xml/notaDeDebito.d.ts +0 -21
- package/dist/src/types/xml/notaDeDebito.js +0 -3
- package/dist/src/types/xml/notaDeDebito.js.map +0 -1
- package/src/ATV.ts +0 -28
- /package/{atv-structures → doc/atv-structures}/4.3/FacturaElectronicaExportacion_V4.3.xsd.xml +0 -0
- /package/{atv-structures → doc/atv-structures}/4.3/FacturaElectronica_V4.3.xsd.xml +0 -0
|
@@ -1,86 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
-
};
|
|
14
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
-
/* eslint-disable @typescript-eslint/camelcase */
|
|
16
|
-
const axios_1 = __importDefault(require("axios"));
|
|
17
|
-
const querystring_1 = __importDefault(require("querystring"));
|
|
18
|
-
const GetToken_1 = require("../GetToken");
|
|
19
|
-
const ATV_1 = require("@src/ATV");
|
|
20
|
-
jest.mock('@src/ATV');
|
|
21
|
-
jest.mock('axios');
|
|
22
|
-
jest.mock('querystring');
|
|
23
|
-
const fetchResponse = {
|
|
24
|
-
data: {
|
|
25
|
-
access_token: 'access_token',
|
|
26
|
-
expires_in: 3600,
|
|
27
|
-
refresh_token: 'refresh_token',
|
|
28
|
-
refresh_expires_in: 1209600,
|
|
29
|
-
session_state: 'session_state',
|
|
30
|
-
token_type: 'Bearer',
|
|
31
|
-
scope: 'openid'
|
|
32
|
-
}
|
|
33
|
-
};
|
|
34
|
-
describe('GetToken', () => {
|
|
35
|
-
let atv;
|
|
36
|
-
let getToken;
|
|
37
|
-
beforeEach(() => {
|
|
38
|
-
atv = new ATV_1.ATV();
|
|
39
|
-
getToken = new GetToken_1.GetToken(atv);
|
|
40
|
-
axios_1.default.post.mockResolvedValue(fetchResponse);
|
|
41
|
-
});
|
|
42
|
-
afterEach(() => {
|
|
43
|
-
jest.resetAllMocks();
|
|
44
|
-
});
|
|
45
|
-
it('should call axios.post with correct parameters', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
46
|
-
// Arrange
|
|
47
|
-
const dto = {
|
|
48
|
-
username: 'testuser',
|
|
49
|
-
password: 'testpassword'
|
|
50
|
-
};
|
|
51
|
-
const expectedUrl = 'https://idp.comprobanteselectronicos.go.cr/auth/realms/rut/protocol/openid-connect/token';
|
|
52
|
-
const expectedData = querystring_1.default.stringify({
|
|
53
|
-
client_id: 'api-stag',
|
|
54
|
-
grant_type: 'password',
|
|
55
|
-
client_secret: '',
|
|
56
|
-
username: 'testuser',
|
|
57
|
-
password: 'testpassword'
|
|
58
|
-
});
|
|
59
|
-
const expectedConfig = {
|
|
60
|
-
headers: {
|
|
61
|
-
'Content-Type': 'application/x-www-form-urlencoded'
|
|
62
|
-
}
|
|
63
|
-
};
|
|
64
|
-
// Act
|
|
65
|
-
yield getToken.execute(dto);
|
|
66
|
-
// Assert
|
|
67
|
-
expect(axios_1.default.post).toHaveBeenCalledWith(expectedUrl, expectedData, expectedConfig);
|
|
68
|
-
}));
|
|
69
|
-
it('should return expected response', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
70
|
-
// Arrange
|
|
71
|
-
const expectedResponse = {
|
|
72
|
-
accessToken: 'access_token',
|
|
73
|
-
expiresIn: 3600,
|
|
74
|
-
refreshToken: 'refresh_token',
|
|
75
|
-
refreshExpiresIn: 1209600,
|
|
76
|
-
sessionState: 'session_state',
|
|
77
|
-
tokenType: 'Bearer',
|
|
78
|
-
scope: 'openid'
|
|
79
|
-
};
|
|
80
|
-
// Act
|
|
81
|
-
const result = yield getToken.execute({ username: 'testuser', password: 'testpassword' });
|
|
82
|
-
// Assert
|
|
83
|
-
expect(result).toEqual(expectedResponse);
|
|
84
|
-
}));
|
|
85
|
-
});
|
|
86
|
-
//# sourceMappingURL=GetToken.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"GetToken.test.js","sourceRoot":"","sources":["../../../../../src/services/getToken/__tests__/GetToken.test.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,iDAAiD;AACjD,kDAAyB;AACzB,8DAA4B;AAC5B,0CAAsC;AACtC,kCAA8B;AAG9B,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;AACrB,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;AAClB,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;AAExB,MAAM,aAAa,GAAG;IACpB,IAAI,EAAE;QACJ,YAAY,EAAE,cAAc;QAC5B,UAAU,EAAE,IAAI;QAChB,aAAa,EAAE,eAAe;QAC9B,kBAAkB,EAAE,OAAO;QAC3B,aAAa,EAAE,eAAe;QAC9B,UAAU,EAAE,QAAQ;QACpB,KAAK,EAAE,QAAQ;KAChB;CACF,CAAA;AACD,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;IACxB,IAAI,GAAQ,CAAA;IACZ,IAAI,QAAkB,CAAA;IAEtB,UAAU,CAAC,GAAG,EAAE;QACd,GAAG,GAAG,IAAI,SAAG,EAAE,CAAA;QACf,QAAQ,GAAG,IAAI,mBAAQ,CAAC,GAAG,CAAC,CAC3B;QAAC,eAAK,CAAC,IAAkB,CAAC,iBAAiB,CAAC,aAAa,CAAC,CAAA;IAC7D,CAAC,CAAC,CAAA;IAEF,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,aAAa,EAAE,CAAA;IACtB,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,gDAAgD,EAAE,GAAS,EAAE;QAC9D,UAAU;QACV,MAAM,GAAG,GAAgB;YACvB,QAAQ,EAAE,UAAU;YACpB,QAAQ,EAAE,cAAc;SACzB,CAAA;QACD,MAAM,WAAW,GAAG,0FAA0F,CAAA;QAC9G,MAAM,YAAY,GAAG,qBAAE,CAAC,SAAS,CAAC;YAChC,SAAS,EAAE,UAAU;YACrB,UAAU,EAAE,UAAU;YACtB,aAAa,EAAE,EAAE;YACjB,QAAQ,EAAE,UAAU;YACpB,QAAQ,EAAE,cAAc;SACzB,CAAC,CAAA;QACF,MAAM,cAAc,GAAG;YACrB,OAAO,EAAE;gBACP,cAAc,EAAE,mCAAmC;aACpD;SACF,CAAA;QAED,MAAM;QACN,MAAM,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;QAE3B,SAAS;QACT,MAAM,CAAC,eAAK,CAAC,IAAI,CAAC,CAAC,oBAAoB,CAAC,WAAW,EAAE,YAAY,EAAE,cAAc,CAAC,CAAA;IACpF,CAAC,CAAA,CAAC,CAAA;IAEF,EAAE,CAAC,iCAAiC,EAAE,GAAS,EAAE;QAC/C,UAAU;QACV,MAAM,gBAAgB,GAAG;YACvB,WAAW,EAAE,cAAc;YAC3B,SAAS,EAAE,IAAI;YACf,YAAY,EAAE,eAAe;YAC7B,gBAAgB,EAAE,OAAO;YACzB,YAAY,EAAE,eAAe;YAC7B,SAAS,EAAE,QAAQ;YACnB,KAAK,EAAE,QAAQ;SAChB,CAAA;QAED,MAAM;QACN,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,OAAO,CAAC,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,cAAc,EAAE,CAAC,CAAA;QAEzF,SAAS;QACT,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAA;IAC1C,CAAC,CAAA,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
const axios_1 = __importDefault(require("axios"));
|
|
7
|
-
const querystring_1 = __importDefault(require("querystring"));
|
|
8
|
-
const MAIN_DOMAIN = 'https://idp.comprobanteselectronicos.go.cr';
|
|
9
|
-
const RUT = (process.env.IS_STG) ? 'rut-stag' : 'rut';
|
|
10
|
-
const PATH = `/auth/realms/${RUT}/protocol/openid-connect/token`;
|
|
11
|
-
const TOKEN_URL = MAIN_DOMAIN + PATH;
|
|
12
|
-
exports.default = (postOptions) => {
|
|
13
|
-
return axios_1.default.post(TOKEN_URL, querystring_1.default.stringify(postOptions), {
|
|
14
|
-
headers: {
|
|
15
|
-
'Content-Type': 'application/x-www-form-urlencoded'
|
|
16
|
-
}
|
|
17
|
-
});
|
|
18
|
-
};
|
|
19
|
-
/*
|
|
20
|
-
* https://www.hacienda.go.cr/docs/5d16ade309fe0_Guia_IdP.pdf
|
|
21
|
-
*/
|
|
22
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/services/getToken/index.ts"],"names":[],"mappings":";;;;;AAAA,kDAAyB;AACzB,8DAA4B;AAG5B,MAAM,WAAW,GAAG,4CAA4C,CAAA;AAChE,MAAM,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAA;AACrD,MAAM,IAAI,GAAG,gBAAgB,GAAG,gCAAgC,CAAA;AAEhE,MAAM,SAAS,GAAG,WAAW,GAAG,IAAI,CAAA;AAEpC,kBAAe,CAAC,WAA6B,EAAgB,EAAE;IAC7D,OAAO,eAAK,CAAC,IAAI,CAAC,SAAS,EAAE,qBAAE,CAAC,SAAS,CAAC,WAAW,CAAC,EAAE;QACtD,OAAO,EAAE;YACP,cAAc,EAAE,mCAAmC;SACpD;KACF,CAAC,CAAA;AACJ,CAAC,CAAA;AAED;;GAEG"}
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
export declare type GetTokenDto = {
|
|
2
|
-
username: string;
|
|
3
|
-
password: string;
|
|
4
|
-
};
|
|
5
|
-
export declare type GetTokenInternalProps = {
|
|
6
|
-
serviceUrl: string;
|
|
7
|
-
clientId: string;
|
|
8
|
-
};
|
|
9
|
-
export declare type GetTokenRawResponse = {
|
|
10
|
-
access_token: string;
|
|
11
|
-
expires_in: number;
|
|
12
|
-
refresh_expires_in: number;
|
|
13
|
-
refresh_token: string;
|
|
14
|
-
token_type: string;
|
|
15
|
-
'not-before-policy': number;
|
|
16
|
-
session_state: string;
|
|
17
|
-
scope: string;
|
|
18
|
-
};
|
|
19
|
-
export declare type GetTokenResponse = {
|
|
20
|
-
accessToken: string;
|
|
21
|
-
expiresIn: number;
|
|
22
|
-
refreshExpiresIn: number;
|
|
23
|
-
refreshToken: string;
|
|
24
|
-
tokenType: string;
|
|
25
|
-
sessionState: string;
|
|
26
|
-
scope: string;
|
|
27
|
-
};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/services/getToken/types.ts"],"names":[],"mappings":""}
|
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.sendToCustomURL = exports.send = void 0;
|
|
7
|
-
const axios_1 = __importDefault(require("axios"));
|
|
8
|
-
const MAIN_DOMAIN = 'https://api.comprobanteselectronicos.go.cr/';
|
|
9
|
-
const RUT = (process.env.IS_STG) ? 'recepcion-sandbox' : 'recepcion';
|
|
10
|
-
const PATH = `${RUT}/v1/recepcion/`;
|
|
11
|
-
const SANBOX_URL = 'https://api-sandbox.comprobanteselectronicos.go.cr/recepcion/v1/recepcion';
|
|
12
|
-
const URL = (process.env.IS_STG) ? SANBOX_URL : MAIN_DOMAIN + PATH;
|
|
13
|
-
function send(token, postOptions) {
|
|
14
|
-
return (0, axios_1.default)({
|
|
15
|
-
url: URL,
|
|
16
|
-
method: 'post',
|
|
17
|
-
data: postOptions,
|
|
18
|
-
headers: {
|
|
19
|
-
Authorization: 'bearer ' + token,
|
|
20
|
-
'Content-Type': 'application/json'
|
|
21
|
-
}
|
|
22
|
-
});
|
|
23
|
-
}
|
|
24
|
-
exports.send = send;
|
|
25
|
-
function sendToCustomURL(token, url) {
|
|
26
|
-
return (0, axios_1.default)({
|
|
27
|
-
url: url,
|
|
28
|
-
method: 'get',
|
|
29
|
-
headers: {
|
|
30
|
-
Authorization: 'bearer ' + token,
|
|
31
|
-
'Content-Type': 'application/json'
|
|
32
|
-
}
|
|
33
|
-
});
|
|
34
|
-
}
|
|
35
|
-
exports.sendToCustomURL = sendToCustomURL;
|
|
36
|
-
/*
|
|
37
|
-
* https://www.hacienda.go.cr/docs/5d16ade309fe0_Guia_IdP.pdf
|
|
38
|
-
* https://www.hacienda.go.cr/ATV/ComprobanteElectronico/docs/esquemas/2016/v4.2/comprobantes-electronicos-api.html#
|
|
39
|
-
*/
|
|
40
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/services/send/index.ts"],"names":[],"mappings":";;;;;;AAAA,kDAAyB;AAEzB,MAAM,WAAW,GAAG,6CAA6C,CAAA;AACjE,MAAM,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,WAAW,CAAA;AACpE,MAAM,IAAI,GAAG,GAAG,GAAG,gBAAgB,CAAA;AACnC,MAAM,UAAU,GAAG,2EAA2E,CAAA;AAC9F,MAAM,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,WAAW,GAAG,IAAI,CAAA;AAElE,SAAgB,IAAI,CAAC,KAAa,EAAE,WAAgB;IAClD,OAAO,IAAA,eAAK,EAAC;QACX,GAAG,EAAE,GAAG;QACR,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE;YACP,aAAa,EAAE,SAAS,GAAG,KAAK;YAChC,cAAc,EAAE,kBAAkB;SACnC;KACF,CAAC,CAAA;AACJ,CAAC;AAVD,oBAUC;AAED,SAAgB,eAAe,CAAC,KAAa,EAAE,GAAW;IACxD,OAAO,IAAA,eAAK,EAAC;QACX,GAAG,EAAE,GAAG;QACR,MAAM,EAAE,KAAK;QACb,OAAO,EAAE;YACP,aAAa,EAAE,SAAS,GAAG,KAAK;YAChC,cAAc,EAAE,kBAAkB;SACnC;KACF,CAAC,CAAA;AACJ,CAAC;AATD,0CASC;AAED;;;GAGG"}
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import { Persona, DetalleServicio, Resumen } from '@src/types/facturaInterfaces';
|
|
2
|
-
declare type NotaCreditoElectronica = {
|
|
3
|
-
Clave: string;
|
|
4
|
-
CodigoActividad: string;
|
|
5
|
-
NumeroConsecutivo: string;
|
|
6
|
-
FechaEmision?: string;
|
|
7
|
-
Emisor: Persona;
|
|
8
|
-
Receptor: Persona;
|
|
9
|
-
CondicionVenta?: string;
|
|
10
|
-
PlazoCredito?: string;
|
|
11
|
-
MedioPago?: string;
|
|
12
|
-
DetalleServicio?: DetalleServicio;
|
|
13
|
-
ResumenFactura: Resumen;
|
|
14
|
-
Otros?: {
|
|
15
|
-
OtroTexto: string;
|
|
16
|
-
};
|
|
17
|
-
};
|
|
18
|
-
export declare type NotaCreditoContenedor = {
|
|
19
|
-
NotaCreditoElectronica: NotaCreditoElectronica;
|
|
20
|
-
};
|
|
21
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"notaDeCredito.js","sourceRoot":"","sources":["../../../../src/types/xml/notaDeCredito.ts"],"names":[],"mappings":""}
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import { Persona, DetalleServicio, Resumen } from '@src/types/facturaInterfaces';
|
|
2
|
-
declare type NotaDebitoElectronica = {
|
|
3
|
-
Clave: string;
|
|
4
|
-
CodigoActividad: string;
|
|
5
|
-
NumeroConsecutivo: string;
|
|
6
|
-
FechaEmision?: string;
|
|
7
|
-
Emisor: Persona;
|
|
8
|
-
Receptor: Persona;
|
|
9
|
-
CondicionVenta?: string;
|
|
10
|
-
PlazoCredito?: string;
|
|
11
|
-
MedioPago?: string;
|
|
12
|
-
DetalleServicio?: DetalleServicio;
|
|
13
|
-
ResumenFactura: Resumen;
|
|
14
|
-
Otros?: {
|
|
15
|
-
OtroTexto: string;
|
|
16
|
-
};
|
|
17
|
-
};
|
|
18
|
-
export declare type NotaDebitoContenedor = {
|
|
19
|
-
NotaDebitoElectronica: NotaDebitoElectronica;
|
|
20
|
-
};
|
|
21
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"notaDeDebito.js","sourceRoot":"","sources":["../../../../src/types/xml/notaDeDebito.ts"],"names":[],"mappings":""}
|
package/src/ATV.ts
DELETED
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
|
|
2
|
-
import { GetToken } from './services/getToken/GetToken'
|
|
3
|
-
import { GetTokenDto, GetTokenResponse } from './services/getToken/types'
|
|
4
|
-
|
|
5
|
-
export type Mode = 'prod' | 'stg' | 'custom';
|
|
6
|
-
|
|
7
|
-
export type ATVOptions = {
|
|
8
|
-
defaultOverwrites?: {
|
|
9
|
-
tokenServiceUrl: string;
|
|
10
|
-
};
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
export type TokenServiceProps = {
|
|
14
|
-
serviceUrl: string;
|
|
15
|
-
clientId: string;
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
export class ATV {
|
|
19
|
-
public readonly options: ATVOptions
|
|
20
|
-
constructor(options?: ATVOptions, public readonly mode: Mode = 'prod') {
|
|
21
|
-
this.options = options
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
public getToken(params: GetTokenDto): Promise<GetTokenResponse> {
|
|
25
|
-
const tokenService = new GetToken(this)
|
|
26
|
-
return tokenService.execute(params)
|
|
27
|
-
}
|
|
28
|
-
}
|
/package/{atv-structures → doc/atv-structures}/4.3/FacturaElectronicaExportacion_V4.3.xsd.xml
RENAMED
|
File without changes
|
|
File without changes
|