mateodioev / decolecta-api
Cliente api para decolecta.com
Installs: 17
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 0
Forks: 0
Open Issues: 0
pkg:composer/mateodioev/decolecta-api
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.