1+ import { DownloadCatalogService } from './../src/services/download-catalog.service' ;
12import { DateTime } from 'luxon' ;
2- import { CancelInvoiceRequest , CreatePdfRequest , GlobalInformation , FiscalapiClient , FiscalapiSettings , Invoice , InvoiceStatusRequest , Person , Product , SendInvoiceRequest , TaxFile } from '../src' ;
3+ import { CancelInvoiceRequest , CreatePdfRequest , GlobalInformation , FiscalapiClient , FiscalapiSettings , Invoice , InvoiceStatusRequest , Person , Product , SendInvoiceRequest , TaxFile , DownloadRule , DownloadRequest } from '../src' ;
34import { inspect } from 'util' ;
45inspect . defaultOptions . depth = null ; // Deshabilitar la profundidad de inspección para objetos anidados la salida de la consola
56inspect . defaultOptions . colors = true ; // Habilitar colores para la salida de la consola
@@ -17,7 +18,9 @@ async function main() : Promise<void> {
1718 debug :true // true, imprime raw request y response en consola, util durante el desarrollo de la integración.
1819 } ;
1920
20-
21+ settings . apiUrl = "http://localhost:5001" ;
22+ settings . apiKey = "sk_development_3e94867a_959a_4140_a2e7_420f435aa8fc" ;
23+ settings . tenant = "102e5f13-e114-41dd-bea7-507fce177281" ;
2124
2225
2326 // Sellos SAT de prueba (KARLA FUENTE NOLASCO FUNK671228PH6)
@@ -540,10 +543,6 @@ async function main() : Promise<void> {
540543
541544
542545
543-
544-
545-
546-
547546 // Crear factura de ingreso por referencias (solo IDs)
548547 // const invoiceByReferences: Invoice = {
549548 // versionCode: "4.0",
@@ -557,18 +556,18 @@ async function main() : Promise<void> {
557556 // exchangeRate: 1,
558557 // exportCode: "01",
559558 // issuer: {
560- // id: "3f3478b4-60fd-459e-8bfc-f8239fc96257 "
559+ // id: "78d380fd-1b69-4e3c-8bc0-4f57737f7d5f "
561560 // // No es necesario incluir otros datos del emisor al usar el ID
562561 // },
563562 // recipient: {
564- // id: "96b46762-d246-4a67-a562-510a25dbafa9 "
563+ // id: "2b5dadc5-7e55-41b2-888b-dd844ae5058e "
565564 // // No es necesario incluir otros datos del receptor al usar el ID
566565 // },
567566 // items: [
568567 // {
569- // id: "114a4be5-fb65-40b2-a762-ff0c55c6ebfa ", // ID del producto/servicio
568+ // id: "27808326-1824-4f3c-87fb-03ace1066f16 ", // ID del producto/servicio
570569 // quantity: 2, // Solo es necesario especificar la cantidad
571- // discount: 255.85 // Y opcionalmente el descuento
570+ // // discount: 255.85 // Y opcionalmente el descuento
572571 // }
573572 // ]
574573 // };
@@ -1315,6 +1314,128 @@ async function main() : Promise<void> {
13151314 // console.log('apiResponse:', apiResponse);
13161315
13171316
1317+ /*******DESCARGA MASIVA**********/
1318+
1319+
1320+ //Obtener todos los catálogos de descarga masiva disponibles
1321+ //const apiResponse = await client.downloadCatalogs.getList();
1322+ //console.log('apiResponse:', apiResponse);
1323+
1324+ // Listar los registros del catálogo 'SatInvoiceStatuses' de descarga masiva.
1325+ // const apiResponse = await client.downloadCatalogs.listCatalog("SatInvoiceStatuses");
1326+ // console.log('apiResponse:', apiResponse);
1327+
1328+ /**********REGLA DE DESCARGA MASIVA**********/
1329+
1330+ // Obtener lista paginada de reglas de descarga masiva
1331+ // const apiResponse = await client.downloadRules.getList(1,2);
1332+ // console.log('apiResponse:', apiResponse);
1333+
1334+ // Obtener regla de descarga masiva por ID
1335+ // const apiResponse = await client.downloadRules.getById("80314e76-fb8b-42c3-89e2-82195a3dfd36");
1336+ // console.log('apiResponse:', apiResponse);
1337+
1338+ // Crear una regla de descarga masiva
1339+ // var request: DownloadRule =
1340+ // {
1341+ // personId: "b0c1cf6c-153a-464e-99df-5741f45d6695", //Persona que recibió los CFDI
1342+ // description: "Regla descarga demo ...",
1343+ // satQueryTypeId: "CFDI",
1344+ // downloadTypeId: "Recibidos",
1345+ // satInvoiceStatusId : "Vigente",
1346+ // };
1347+ // const apiResponse = await client.downloadRules.create(request);
1348+ // console.log('apiResponse:', apiResponse);
1349+
1350+ // Crear una regla de descarga masiva de prueba
1351+ // const apiResponse = await client.downloadRules.createTestRule();
1352+ // console.log('apiResponse:', apiResponse);
1353+
1354+
1355+
1356+ // Actualizar una regla de descarga masiva (descripción)
1357+ // var request: DownloadRule =
1358+ // {
1359+ // id: "465873fb-d2b6-4cb9-8c4d-1e6eb4b2ff28",
1360+ // description: "Regla descarga actualizada",
1361+ // };
1362+ // const apiResponse = await client.downloadRules.update(request);
1363+ // console.log('apiResponse:', apiResponse);
1364+
1365+
1366+ // Eliminar una regla de descarga masiva
1367+ // const apiResponse = await client.downloadRules.delete("465873fb-d2b6-4cb9-8c4d-1e6eb4b2ff28");
1368+ // console.log('apiResponse:', apiResponse);
1369+
1370+
1371+
1372+ /* **********SOLICITUD DE DESCARGA MASIVA**********/
1373+
1374+ // LISTAR SOLICITUDES DE DESCARGA MASIVA
1375+ // Obtener lista paginada de solicitudes de descarga masiva
1376+ // const apiResponse = await client.downloadRequests.getList(1, 2);
1377+ // console.log('apiResponse:', apiResponse);
1378+
1379+
1380+ // OBTENER SOLICITUD POR ID
1381+ // const apiResponse = await client.downloadRequests.getById("bddef7bf-ae7a-488f-9dba-5435d24f51d6");
1382+ // console.log('apiResponse:', apiResponse);
1383+
1384+
1385+ // LISTAR XMLS POR SOLICITUD ID
1386+ // Obtener lista paginada de xmls descargados asociados a una solicitud de descarga.
1387+ // const apiResponse = await client.downloadRequests.getXmlsAsync("bddef7bf-ae7a-488f-9dba-5435d24f51d6");
1388+ // console.log('apiResponse:', apiResponse);
1389+
1390+
1391+ // LISTAR META-ITEMS POR SOLICITUD ID
1392+ // Obtener lista paginada de metadatos descargados asociados a una solicitud de descarga.
1393+ // const apiResponse = await client.downloadRequests.getMetadataItemsAsync("bddef7bf-ae7a-488f-9dba-5435d24f51d6");
1394+ // console.log('apiResponse:', apiResponse);
1395+
1396+
1397+ // DESCARGAR PAQUETE POR SOLICITUD ID
1398+ // Descargar paquete (.zip file) de una solicitud de descarga masiva.
1399+ // const apiResponse = await client.downloadRequests.downloadPackageAsync("bddef7bf-ae7a-488f-9dba-5435d24f51d6");
1400+ // console.log('apiResponse:', apiResponse);
1401+
1402+
1403+ // OBTENER SAT REQUEST POR SOLICITUD ID
1404+ // Descargar SAT request (.xml file) de una solicitud de descarga masiva. (debug/testing)
1405+ // const apiResponse = await client.downloadRequests.downloadSatRequestAsync("bddef7bf-ae7a-488f-9dba-5435d24f51d6");
1406+ // console.log('apiResponse:', apiResponse);
1407+
1408+
1409+ // OBTENER SAT RESPONSE POR SOLICITUD ID
1410+ // Descargar SAT response (.xml file) de una solicitud de descarga masiva. (debug/testing)
1411+ // const apiResponse = await client.downloadRequests.downloadSatResponseAsync("bddef7bf-ae7a-488f-9dba-5435d24f51d6");
1412+ // console.log('apiResponse:', apiResponse);
1413+
1414+
1415+ // CREAR SOLICITUD DE DESCARGA MASIVA
1416+ // Crear solicitud para descargar facturas de los últimos 5 días.
1417+ // const request: DownloadRequest = {
1418+ // downloadRuleId: "14eb6460-a90a-46a8-afaa-d673cc3e38cd",
1419+ // downloadRequestTypeId: "Manual",
1420+ // startDate: DateTime.now().minus({ days: 5 }), // 5 días atrás
1421+ // endDate: DateTime.now()
1422+ // };
1423+ // const apiResponse = await client.downloadRequests.create(request);
1424+ // console.log('apiResponse:', apiResponse);
1425+
1426+
1427+ // ELIMINAR SOLICITUD DE DESCARGA MASIVA
1428+ // const apiResponse = await client.downloadRequests.delete("5e677807-3959-4d64-9c56-89451e9b81d4");
1429+ // console.log('apiResponse:', apiResponse);
1430+
1431+
1432+ // BUSCAR SOLICITUD POR FECHA DE CREACIÓN
1433+ // const apiResponse = await client.downloadRequests.searchAsync(new Date());
1434+ // console.log('apiResponse:', apiResponse);
1435+
1436+
1437+
1438+
13181439 console . log ( 'End Fiscalapi node...' ) ;
13191440 } catch ( error : unknown ) {
13201441 console . error ( 'Error inesperado:' , error ) ;
0 commit comments