descarga-ciec-csharp
1.1.30
dotnet add package descarga-ciec-csharp --version 1.1.30
NuGet\Install-Package descarga-ciec-csharp -Version 1.1.30
<PackageReference Include="descarga-ciec-csharp" Version="1.1.30" />
paket add descarga-ciec-csharp --version 1.1.30
#r "nuget: descarga-ciec-csharp, 1.1.30"
// Install descarga-ciec-csharp as a Cake Addin #addin nuget:?package=descarga-ciec-csharp&version=1.1.30 // Install descarga-ciec-csharp as a Cake Tool #tool nuget:?package=descarga-ciec-csharp&version=1.1.30
descarga-ciec-csharp
API sencilla para interactuar con el servicio de descarga masiva mediante CIEC de CSFacturación en C#.
Installation
Install descarga_ciec_csharp using Package Manager
NuGet\Install-Package descarga-ciec-csharp
Install descarga_ciec_csharp using .NET CLI
dotnet add package descarga-ciec-csharp
Implementation
Usage
Inicio Rápido
DescargaCIEC descargaCIEC = new DescargaCIEC();
ConsultaParametrosBuilder parametrosBuilder = new ConsultaParametrosBuilder();
// credenciales empresa ante el SAT
Credenciales credenciales = new Credenciales("rfcEmpresa", "credencial_SAT");
// credenciales de contratacion CSFacturacion
User user = new User("rfcContratacion", "password");
// construir parametros de consulta con ParametrosBuilder
parametrosBuilder.setCredecialesContratacion(user);
parametrosBuilder.setCredecialesSAT(credenciales);
parametrosBuilder.setFechaInicio(new DateTime(2024, 2, 1));
parametrosBuilder.setFechaFin(new DateTime(2024, 3, 3));
parametrosBuilder.setMovimiento(descarga_ciec_sdk.src.Enums.Movimiento.TODAS);
parametrosBuilder.setFiltroEstatusCFDI(descarga_ciec_sdk.src.Enums.EstatusCFDI.TODOS);
parametrosBuilder.setTipoDocumento(descarga_ciec_sdk.src.Enums.TipoDocumento.CFDI);
//Parametros
ConsultaParametros parametrosConsulta = new ConsultaParametros(parametrosBuilder);
//Solicitar la consulta de descarga
var folioConsulta = descargaCIEC.SolicitarConsulta(parametrosConsulta);
Progreso
Despues de solicitar la descarga se puede obtener el estatus y el total encontrado usando el folio de la consulta
var progreso = descargaCIEC.GetProgreso(folioConsulta);
while (!progreso.IsCompletado())
{
// Espera hasta que se termine osea completado
Console.WriteLine($"Estatus : {progreso.GetStatus()} ");
Console.WriteLine($"Total XMLs : {progreso.GetEncontrado()}");
}
Resumen
Se puede obtener el resumen de la consulta siempre y cuando este completado (con error o sin error) usando el folio de la consulta
//Resumen
var resumen = descargaCIEC.GetSummary(folioConsulta);
Console.WriteLine($"Total XMLs: {resumen.total}");
Console.WriteLine($"Total Paginas: {resumen.paginas}");
Console.WriteLine($"Hay XMLs Faltantes: {resumen.xmlFaltantes}");
Console.WriteLine($"Hay XMLs con fechasMismoHorario: {resumen.fechasMismoHorario.Count}");
Console.WriteLine($"Total XMLs Cancelados: {resumen.cancelados}");
Resultados
Para la obtención de los resultados usa los siguientes metodos usando el folio de la consulta. 1-Mediante paginas (Metadata) 2-Zip 3-Lista metadata
//Para obtener resultado mediante paginas
// El uno (1) es el numero de pagina
var metadata = descargaCIEC.GetResultado(folioConsulta, 1);
// Usando el resumen
for (int i = 1; i < descargaCIEC.GetSummary(folioConsulta).paginas; i++)
{
var resultadosCFDI = descargaCIEC.GetResultado(folioConsulta, i);
foreach (var meta in resultadosCFDI)
{
// Metadata XML
Console.WriteLine($"Metadata UUID: { meta.folio}");
}
}
//Para obtener el de los XMLs mediante paginas
//Hay que tener en cuenta que se debe pasar la runta de la carpeta donde se guardara el ZIP
var path = descargaCIEC.DescargaZIP(folioConsulta, "RutaZip");
//Para obtener la lista de metadata
var listaMetada = descargaCIEC.GetListMetadata(folioConsulta);
Para más ejemplos, ver el archivo de prueba
//Descargar ZIP y descomprimirlo usando el folio de la consulta
var path = descargaCIEC.DescargarAndDescomprimirZIP(folioConsulta, "RutaZip");
Acknowledgements
API Reference
Appendix
- 500 Mismo Segundo:
- XMLs Faltantes
- Limite de descargas
Authors
Tags
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET Framework | net48 is compatible. net481 was computed. |
-
.NETFramework 4.8
- CSharpier.Core (>= 0.30.2)
- Mono.HttpUtility (>= 1.0.0.1)
- Newtonsoft.Json (>= 13.0.1)
- Polly (>= 8.0.0)
- SharpCompress (>= 0.38.0)
- System.IO.Compression (>= 4.3.0)
- System.Net.Http (>= 4.3.4)
- System.Text.Encodings.Web (>= 9.0.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
1.1.30 | 96 | 1/4/2025 |
1.1.29 | 99 | 1/4/2025 |
1.1.28 | 104 | 1/3/2025 |
1.1.27 | 90 | 1/3/2025 |
1.1.26 | 85 | 1/3/2025 |
1.1.25 | 94 | 1/3/2025 |
1.1.24 | 100 | 1/3/2025 |
1.1.23 | 99 | 1/3/2025 |
1.1.22 | 96 | 1/3/2025 |
1.1.21 | 86 | 12/20/2024 |
1.1.20 | 79 | 12/19/2024 |
1.1.19 | 77 | 12/19/2024 |
1.1.18 | 73 | 12/19/2024 |
1.1.17 | 73 | 12/19/2024 |
1.1.14 | 87 | 12/19/2024 |
1.1.13 | 85 | 12/19/2024 |
1.1.12 | 73 | 12/19/2024 |