SDK C++

SDK autogenerado desde la especificación OpenAPI usando el generador cpp-restsdk (v7.20.0). Basado en cpprestsdk y Boost, con sistema de build CMake.

vcpkg / Conan / NuGetGitHub

Instalación

vcpkg (recomendado):

bash
vcpkg install ecf-dgii-client

Conan:

bash
conan install ecf-dgii-client/1.0.0@

NuGet:

bash
Install-Package ecf-dgii-client

Dependencias

  • cpprestsdk — Cliente HTTP REST
  • Boost — Utilidades de C++

Uso rápido

cpp
#include <ecf/EcfClient.h>
auto client = EcfClient::Builder()
.baseUrl("https://api.test.ecfx.ssd.com.do")
.apiKey("tu-api-key")
.build();
// Enviar ECF con polling automático
auto result = client.sendEcf("rnc-empresa", ecfData);
std::cout << result.impresionUrl << std::endl;
std::cout << result.codSec << std::endl;

Opciones de Polling

cpp
auto client = EcfClient::Builder()
.baseUrl("https://api.prod.ecfx.ssd.com.do")
.apiKey("tu-api-key")
.pollingOptions({
.initialDelay = 1000, // ms
.maxDelay = 10000, // ms
.maxRetries = 20,
.backoffMultiplier = 1.5,
.timeout = 120000 // ms
})
.build();

Cliente Frontend

El EcfFrontendClient proporciona acceso de solo lectura y usa un archivo cifrado en disco para el cache del token.

cpp
#include <ecf/EcfFrontendClient.h>
auto frontend = EcfFrontendClient::Builder()
.baseUrl("https://api.prod.ecfx.ssd.com.do")
.getToken([]() { return fetchTokenFromBackend(); })
.build();
auto status = frontend.getEcfStatus("track-id");

Compilar desde fuente

bash
mkdir build && cd build
cmake ..
cmake --build .