mateodioev / decolecta-api
Cliente api para decolecta.com
v1.0.0
2025-08-01 16:24 UTC
Requires
- guzzlehttp/guzzle: ^7.8.2
- psr/http-client: ^1.0
Requires (Dev)
- friendsofphp/php-cs-fixer: ^3.85
README
Cliente PHP para la API de Decolecta, que proporciona acceso a servicios de datos públicos peruanos (RENIEC, SBS, SUNAT).
Instalación
Instala el paquete usando Composer:
composer require mateodioev/decolecta-api
Requisitos
- PHP 8.0 o superior
- Extensión cURL habilitada
- Una API key válida de Decolecta
Uso Básico
<?php use DecolectaApi\Client\Factory; require_once 'vendor/autoload.php'; // Crear cliente con tu API key $client = Factory::default('tu-api-key-aqui'); // Consultar DNI en RENIEC $persona = $client->reniec()->dni('12345678'); var_dump($persona);
Servicios Disponibles
RENIEC (Registro Nacional de Identificación y Estado Civil)
// Consultar información personal por DNI $resultado = $client->reniec()->dni('12345678');
SUNAT (Superintendencia Nacional de Aduanas y de Administración Tributaria)
// Consulta básica de RUC $empresa = $client->sunat()->ruc('20123456789'); // Consulta avanzada de RUC $empresaCompleta = $client->sunat()->rucAvanzado('20123456789'); // Tipo de cambio $tipoCambio = $client->sunat()->tipoCambio(); // Tipo de cambio por fecha específica $tipoCambio = $client->sunat()->tipoCambio(new DateTime('2024-01-15')); // Tipo de cambio por mes y año $tipoCambio = $client->sunat()->tipoCambio(null, 1, 2024); // Enero 2024
SBS (Superintendencia de Banca, Seguros y AFP)
// Tipo de cambio promedio (USD por defecto) $cambio = $client->sbs()->cambioPromedio(); // Tipo de cambio promedio para otra moneda $cambio = $client->sbs()->cambioPromedio('EUR'); // Tipo de cambio promedio por fecha $cambio = $client->sbs()->cambioPromedio('USD', new DateTime('2024-01-15')); // Tipo de cambio promedio por mes $cambio = $client->sbs()->cambioPromedio('USD', null, 1, 2024); // Tipo de cambio contable $cambioContable = $client->sbs()->cambioContable();
Configuración Avanzada
Usando un cliente HTTP personalizado
use DecolectaApi\Client\Factory; $httpClient = new \GuzzleHttp\Client([ 'timeout' => 10, 'verify' => false, ]); $client = Factory::withHttpClient('tu-api-key', $httpClient);
Configuración completa
use DecolectaApi\Client\Config; use DecolectaApi\Client\Factory; $config = Config::new() ->withApiKey('tu-api-key') ->withTimeout(15) ->withHttpClient(new \GuzzleHttp\Client()); $client = Factory::withConfig($config);
Documentación de la API
Para más detalles sobre los endpoints y respuestas, consulta la documentación oficial de Decolecta.
Licencia
Este proyecto está licenciado bajo la Licencia MIT.