PHPackages                             ecfx/ecf-dgii-php - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [API Development](/categories/api)
4. /
5. ecfx/ecf-dgii-php

ActiveLibrary[API Development](/categories/api)

ecfx/ecf-dgii-php
=================

PHP SDK for the ECF DGII electronic fiscal receipt API (Dominican Republic)

v1.1.0(yesterday)09↓100%MITPHPPHP ^8.1CI failing

Since Mar 14Pushed yesterdayCompare

[ Source](https://github.com/SSD-Smart-Software-Development-SRL/ecf-dgii-php)[ Packagist](https://packagist.org/packages/ecfx/ecf-dgii-php)[ Docs](https://github.com/SSD-Smart-Software-Development-SRL/ecf-dgii-php)[ RSS](/packages/ecfx-ecf-dgii-php/feed)WikiDiscussions main Synced today

READMEChangelog (2)Dependencies (4)Versions (4)Used By (0)

ECF DGII PHP SDK
================

[](#ecf-dgii-php-sdk)

[![Packagist Version](https://camo.githubusercontent.com/42b10eb2da0f5760bf1483b4268781160aeaed4c0cc966827b1601ee9bb12603/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f656366782f6563662d646769692d706870)](https://packagist.org/packages/ecfx/ecf-dgii-php)[![Packagist Downloads](https://camo.githubusercontent.com/4aca1c22d619993f11e7ddd2e541f3bdc0dae622a73b71d0e72e8fcaacfff09a/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f656366782f6563662d646769692d706870)](https://packagist.org/packages/ecfx/ecf-dgii-php)[![License](https://camo.githubusercontent.com/90a14e21ca195f7f50c6be3feca91f1bd69233aceaf7aec8dc2073ebaf27b97e/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f6c2f656366782f6563662d646769692d706870)](LICENSE)

 **PHP SDK para integrar la facturacion electronica (e-CF) en Republica Dominicana a traves de [ECF SSD](https://ecf.ssd.com.do).**

 [![Packagist Version](https://camo.githubusercontent.com/42b10eb2da0f5760bf1483b4268781160aeaed4c0cc966827b1601ee9bb12603/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f656366782f6563662d646769692d706870)](https://packagist.org/packages/ecfx/ecf-dgii-php) [![Packagist Downloads](https://camo.githubusercontent.com/4aca1c22d619993f11e7ddd2e541f3bdc0dae622a73b71d0e72e8fcaacfff09a/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f656366782f6563662d646769692d706870)](https://packagist.org/packages/ecfx/ecf-dgii-php) [![CI](https://github.com/SSD-Smart-Software-Development-SRL/ecf-dgii-php/actions/workflows/ci.yml/badge.svg)](https://github.com/SSD-Smart-Software-Development-SRL/ecf-dgii-php/actions) [![License](https://camo.githubusercontent.com/7013272bd27ece47364536a221edb554cd69683b68a46fc0ee96881174c4214c/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6c6963656e73652d4d49542d626c75652e737667)](LICENSE)

---

Que es ECF SSD
--------------

[](#que-es-ecf-ssd)

[ECF SSD](https://ecf.ssd.com.do) es una plataforma que simplifica la emision de comprobantes fiscales electronicos (e-CF) en Republica Dominicana. En vez de que cada empresa implemente todo el proceso de comunicacion con la DGII (firmado XML, autenticacion por semilla, manejo de certificados, reintentos, almacenamiento, etc.), **ECF SSD lo hace por ti**.

Tu solo envias el comprobante en JSON a traves de este SDK, y el servicio se encarga de:

- Firmar el comprobante electronicamente (XML signing con tu certificado digital)
- Autenticar con la DGII (semilla -&gt; token)
- Enviar el e-CF a la DGII
- Validar emisor-receptor
- Almacenar los comprobantes de forma segura
- Reintentar automaticamente en caso de fallos
- Gestionar tus certificados digitales

> **Usas WooCommerce?** Tenemos un [plugin listo para facturacion electronica](https://github.com/SSD-Smart-Software-Development-SRL/ecf-ssd-woocomerce) sin escribir codigo.
>
> **Buscas otro lenguaje?** Tambien disponible en [.NET](https://www.nuget.org/packages/SSDDO.ECF_DGII.SDK), [TypeScript](https://www.npmjs.com/), [React](https://www.npmjs.com/), [Python](https://pypi.org/), [Java](https://github.com/SSD-Smart-Software-Development-SRL/ecf_dgii/tree/main/java), [Kotlin](https://github.com/SSD-Smart-Software-Development-SRL/ecf_dgii/tree/main/kotlin), [Swift](https://github.com/SSD-Smart-Software-Development-SRL/ecf_dgii/tree/main/ios) y [C++](https://github.com/SSD-Smart-Software-Development-SRL/ecf_dgii/tree/main/C++). Ver [todos los SDKs y plugins](#otros-sdks-y-plugins).

Instalacion
-----------

[](#instalacion)

```
composer require ecfx/ecf-dgii-php
```

### Requisitos

[](#requisitos)

- PHP 8.1+
- ext-curl
- ext-json
- ext-mbstring

Como Empezar
------------

[](#como-empezar)

### Paso 1: Registrate en ECF SSD

[](#paso-1-registrate-en-ecf-ssd)

Visita  y crea tu cuenta.

### Paso 2: Obten tu API Key

[](#paso-2-obten-tu-api-key)

1. Una vez logueado, selecciona el ambiente **Test** en el selector de ambientes (esquina superior derecha)
2. Ve a **Settings &gt; API Key &gt; Generate API Key**
3. Copia tu API Key -- la usaras como bearer token para autenticarte con el SDK

### Paso 3: Contacta a ECF SSD para la Integracion

[](#paso-3-contacta-a-ecf-ssd-para-la-integracion)

Contacta al equipo de ECF SSD () para iniciar el proceso de integracion y certificacion de tu **sistema** (no de las empresas de tus clientes -- la certificacion es para tu plataforma). El equipo te guiara a traves del proceso usando el ambiente de **certificacion** (`Cert`).

### Paso 4: Usa Produccion

[](#paso-4-usa-produccion)

Una vez que tu sistema este integrado y certificado, podras usar el ambiente de **produccion** (`Prod`) para emitir comprobantes fiscales electronicos reales.

> **Vienes de otro proveedor?** ECF SSD soporta migracion desde otros proveedores de facturacion electronica. Contacta al equipo para coordinar la transicion.

Configuracion
-------------

[](#configuracion)

```
use Ecfx\EcfDgii\Configuration;

$config = Configuration::getDefaultConfiguration()
    ->setHost('https://api.test.ecfx.ssd.com.do')
    ->setAccessToken('your-api-key-here');
```

### Ambientes

[](#ambientes)

AmbienteURLUso**Test**`https://api.test.ecfx.ssd.com.do`Desarrollo y pruebas internas**Cert**`https://api.cert.ecfx.ssd.com.do`Proceso de certificacion con la DGII**Prod**`https://api.prod.ecfx.ssd.com.do`Produccion### Autenticacion

[](#autenticacion)

El SDK utiliza **JWT Bearer Token**. Puedes configurar el token de dos formas:

1. **Directamente en el codigo:** pasando el API Key con `setAccessToken()`
2. **Variable de entorno:** `ECF_DGII_TOKEN`

Ejemplo: Factura de Consumo (ECF 32)
------------------------------------

[](#ejemplo-factura-de-consumo-ecf-32)

Cada tipo de ECF tiene su propio conjunto de clases con el prefijo del tipo (ej. `Ecf32ECF`, `Ecf32Encabezado`, `Ecf32Item` para Factura de Consumo).

```
