Build your integration with the factura.com.do V1 API
A REST API, 28 webhook events and an honest reference of what we publish today and what we do not. Everything your team needs to connect to DGII electronic invoicing in the Dominican Republic.
- X-Api-Key header
- 28 webhook events
- Per-company DGII test environment
From zero to first e-CF in three calls
- 01 Get your X-Api-Key
A workspace administrator generates the key from the app. The value is shown only once; store it in your secrets manager.
- 02 POST /api/v1/consumer-invoices
Send the document with the X-Api-Key header. The response returns DocumentId and ConsultationUrl ready for your ERP.
- 03 Subscribe to the dgii.aprobado webhook
When the DGII responds, we send you a POST with the event and payload. Your system reconciles and releases the billing flow.
Everything this section documents
Each card opens the detail page: contracts, examples in cURL and TypeScript, and honest notes on what is and is not available.
- Invoices E31, E32 and special cases
Tax credit, consumer, special regimes, government, export and foreign payments.
- Credit notes (E34)
Voids and corrections referencing the original document.
- Debit notes (E33)
Additional charges on existing documents.
- Purchases (E41)
Recording purchase documents from informal suppliers not registered with the DGII.
- Minor expenses (E43)
Registration, cancellation and amount correction.
- Contacts
Customers and suppliers with full CRUD.
- Catalog and master data
Products, taxes, withholdings, units, currencies and RNC validation.
- Webhooks
28 events, standard payload and BYO-headers authentication.
- MCP server
Connect Claude or another AI with OAuth 2.1 and per-area permissions.
- e-CF lifecycle
From POST to the V1 API to the final DGII acknowledgement.
What we publish today and what we do not
This section documents what is already live under /api/v1/. We keep the other side of the table because honesty prevents surprises in production.
| Not published today | Live in /api/v1/ |
|---|---|
| Self-serve API key issuance via a public endpoint. | X-Api-Key header with configurable expiry. |
| Official SDK with a runtime client distributed via npm. | REST with JSON: any HTTP client can call it. |
| HMAC verification or payload signing. | 28 webhook events via manual subscription. |
| Automatic server-side retries for webhooks. | Background DGII submission and periodic status polling. |
| Public test environment with a separate base URL. | Per-company DGII test environment (testecf). |
| Version header or published formal deprecation policy. | Explicit /api/v1/ versioning. |
| Idempotency-Key header or published rate limit. | Pagination via pageNumber/pageSize/search. |