[DO] Issuing Electronic Documents (e-CF)

Brinta issues every electronic fiscal document (e-CF) type you need in the Dominican Republic and sends it to the DGII for you. The validation and calculation logic is the same whether you use the Dashboard, Bulk/CSV or the API. What changes from one document to another is the document_type and invoice_type you send.


Available document types

document_type (Brinta)invoice_type (Brinta)e-CFFiscal name (DGII)When to use
invoicedebit31Factura de Crédito FiscalSale to a business with RNC that needs the invoice to claim ITBIS credit
ticketdebit32Factura de ConsumoSale to a final consumer
debit note, debit note ticket, debit note exportsdebit33Nota de DébitoIncrease the amount of an e-CF already issued
credit note, credit note ticket, credit note exportscredit34Nota de CréditoVoid, return or discount on an e-CF already issued
special regime invoicedebit44Factura para Regímenes EspecialesSale to a buyer under a special tax regime (e.g. free zones)
governmental invoicedebit45Factura GubernamentalSale to a government entity
exportdebit46Factura de ExportaciónExport of goods or services
payment abroadpayment47Comprobante para Pagos al ExteriorPayment you make to a foreign provider for services, with ISR withheld

The three debit note variants all produce an e-CF 33, and the three credit note variants all produce an e-CF 34. Use the variant that matches the original document: credit note for an invoice, credit note ticket for a ticket, credit note exports for an export.


Fields common to all document types

Root level

supplier_company_id

UUID of the issuing company in Brinta. The e-CF Emisor is filled from this record: RNC, legal name, trade name, branch, address, municipality, province, phone and email. Keep this data up to date in the company.

e-CF 44, 45, 46 require the issuer's municipality and province. Make sure the company address has state and municipality_code.

invoice_number

The e-NCF authorized by the DGII: the letter E, the two digit e-CF type and a ten digit sequence. 13 characters in total.

DocumentExample
Crédito FiscalE310000000001
ConsumoE320000000001
Nota de CréditoE340000000001
Pagos al ExteriorE470000000001

The sequence expiration date (FechaVencimientoSecuencia) is taken from the numbering configured for your company in Brinta.

invoice_date

Issuance date, YYYY-MM-DD.

invoice_external_id

Your internal document ID. Printed as the internal invoice number (max 20 characters).

purchase_order_number

Your internal order number. Printed as the internal order number (max 20 characters).

currency and exchange_rate

  • DOP for documents in pesos. No exchange_rate needed.
  • For a foreign currency, send the ISO code and the exchange rate to DOP. Brinta reports the amounts in DOP and adds the foreign currency amounts.

Accepted foreign currencies: USD, EUR, CAD, GBP, CHF, JPY, MXN, BRL, DKK, NOK, SEK, HTG, XDR, VEF, SCP, CHY.

categories[] with list = "income type"

DGII TipoIngresos. Required for e-CF 31 to 46.

codeDGII meaning
operational1 - Ingresos por operaciones
financial2 - Ingresos financieros
extraordinary3 - Ingresos extraordinarios
rental4 - Ingresos por arrendamientos
depreciable_asset5 - Ingresos por venta de activo depreciable
other6 - Otros ingresos

invoice_period_start_date and invoice_period_end_date

Billing period for recurring services (electricity, telecom, subscriptions). Optional.

additional_info

Free text note printed on the PDF.


Payment

payment_model

FieldValuesMeaning
typeCASH, CREDITContado or crédito (DGII TipoPago)
termsfree textPayment term, e.g. "30 días". Max 15 characters

For a credit sale, also send invoice_due_date (DGII FechaLimitePago). If you do not send payment_model, the document is reported as credit when invoice_due_date is later than invoice_date, and as cash otherwise.

payment_methods[]

Up to 7 payment methods.

FieldMeaning
codeDGII FormaPago (table below)
typecash, bank transfer, credit card, debit card, other
amountAmount paid with this method
bank_account_sender.account_typechecking, savings or other
bank_account_sender.account_numberAccount the payment comes from. Max 28 characters
bank_account_sender.bank_nameBank of that account. Max 75 characters

buyer

FieldMeaning
company.legal_nameBuyer's legal name
company.tax_registrations[].numberRNC or cédula, with type: "RNC". Foreign buyers: their tax ID with type: "tax_id"
company.emailBuyer's email
company.address.address_line_1Buyer's address
company.address.stateISO 3166-2 province code, e.g. DO-01 (Distrito Nacional), DO-25 (Santiago)
company.address.municipality_codeDGII six digit municipality code, e.g. 010101

When the buyer is required depends on the document type. See each section below.


items[]

Up to 1000 items per document.

FieldMeaning
nameProduct or service name. Max 80 characters
descriptionAdditional description. Max 1000 characters
quantityQuantity
unit_amountUnit price, before taxes
amountquantity × unit_amount - discount, before taxes
discountDiscount amount on the item
item_external_idYour internal item code

categories[]

listcode
typegoods or services
unitDGII unit code, 1 to 62. E.g. 43 Unidad, 19 Hora, 21 Kilogramo
EAN, PLU, DUN, internal codeItem code in that system

taxes[]

ITBIS

namerateMeaning
ITBIS0.18ITBIS rate 1 (18%)
ITBIS0.16ITBIS rate 2 (16%)
ITBIS0ITBIS rate 3 (0%)

An item with no taxes[] is reported as exempt (Exento).

Withholdings and perceptions

Send them as taxes with withholding_type:

namewithholding_typeMeaning
ITBISwithholdingITBIS retenido
ISRwithholdingISR retenido
ITBISperceptionITBIS percibido
ISRperceptionISR percibido

Additional taxes

Selective consumption tax (ISC), Propina Legal, CDT and others: send name with the tax and code with the DGII additional tax code (integer, 1 to 39). Up to 2 additional taxes per item.


Totals

You do not need to send totals. Brinta calculates them from items[]: taxed amount per ITBIS rate, exempt amount, ITBIS per rate, additional taxes, withholdings and total. If you send amounts[] or taxes[] at root level, Brinta uses them instead.


e-CF 31 · Factura de Crédito Fiscal

document_type: "invoice", invoice_type: "debit"

  • The buyer is required: RNC and legal name.
  • categories[] with list = "income type" is required.
{
  "supplier_company_id": "{{company_id}}",
  "invoice_type": "debit",
  "document_type": "invoice",
  "invoice_number": "E310000000001",
  "invoice_date": "2026-10-16",
  "invoice_due_date": "2026-11-15",
  "invoice_external_id": "FAC-1001",
  "currency": "DOP",
  "e_invoice": true,
  "categories": [ { "list": "income type", "code": "operational" } ],
  "payment_model": { "type": "CREDIT", "terms": "30 días" },
  "buyer": {
    "company": {
      "name": "Distribuidora Caribe",
      "legal_name": "Distribuidora Caribe SRL",
      "type": "business",
      "email": "[email protected]",
      "address": {
        "address_line_1": "Av. 27 de Febrero 345",
        "state": "DO-01",
        "municipality_code": "010101",
        "country": "DO"
      },
      "tax_registrations": [
        { "number": "131234567", "type": "RNC", "level": "country", "location": "DO" }
      ]
    }
  },
  "items": [
    {
      "item_external_id": "SKU-001",
      "name": "Servicio de consultoría",
      "quantity": 1,
      "unit_amount": 10000.00,
      "amount": 10000.00,
      "categories": [ { "list": "type", "code": "services" }, { "list": "unit", "code": "43" } ],
      "taxes": [ { "name": "ITBIS", "rate": 0.18, "rate_type": "percentage", "amount": 1800.00 } ]
    }
  ]
}

e-CF 32 · Factura de Consumo

document_type: "ticket", invoice_type: "debit"

  • The buyer is optional, except when the total is RD$250,000 or more. Then send the buyer's RNC or cédula and legal name, or the foreign tax ID (type: "tax_id") for a non resident.
{
  "supplier_company_id": "{{company_id}}",
  "invoice_type": "debit",
  "document_type": "ticket",
  "invoice_number": "E320000000001",
  "invoice_date": "2026-10-16",
  "currency": "DOP",
  "e_invoice": true,
  "categories": [ { "list": "income type", "code": "operational" } ],
  "payment_methods": [ { "code": "3", "type": "credit card", "amount": 2360.00 } ],
  "items": [
    {
      "name": "Audífonos inalámbricos",
      "quantity": 2,
      "unit_amount": 1000.00,
      "amount": 2000.00,
      "categories": [ { "list": "type", "code": "goods" }, { "list": "unit", "code": "43" } ],
      "taxes": [ { "name": "ITBIS", "rate": 0.18, "rate_type": "percentage", "amount": 360.00 } ]
    }
  ]
}

e-CF 33 · Nota de Débito

document_type: "debit note" (or debit note ticket, debit note exports), invoice_type: "debit"

  • original_invoice_id is required: the Brinta ID of the e-CF being modified. Brinta reports its e-NCF and date.
  • The buyer is optional.
{
  "supplier_company_id": "{{company_id}}",
  "invoice_type": "debit",
  "document_type": "debit note",
  "invoice_number": "E330000000001",
  "invoice_date": "2026-10-20",
  "original_invoice_id": "{{original_invoice_id}}",
  "currency": "DOP",
  "e_invoice": true,
  "categories": [ { "list": "income type", "code": "operational" } ],
  "items": [
    {
      "name": "Ajuste de precio - consultoría",
      "quantity": 1,
      "unit_amount": 500.00,
      "amount": 500.00,
      "categories": [ { "list": "type", "code": "services" } ],
      "taxes": [ { "name": "ITBIS", "rate": 0.18, "rate_type": "percentage", "amount": 90.00 } ]
    }
  ]
}

e-CF 34 · Nota de Crédito

document_type: "credit note" (or credit note ticket, credit note exports), invoice_type: "credit"

  • original_invoice_id is required.
  • reason is required:
reasonUse it whenDGII CodigoModificacion
voidThe original e-CF is voided entirely1 - Anulación total
returnSome items are returned or not accepted3 - Corrige montos
discountA discount on the amount of the original e-CF3 - Corrige montos
  • When the credit note is issued more than 30 days after the original e-CF, Brinta flags it as not entitled to reduce ITBIS (IndicadorNotaCredito = 1), as the DGII requires.

To void an e-CF that was already accepted by the DGII, issue a credit note with reason: "void" for its full amount.

{
  "supplier_company_id": "{{company_id}}",
  "invoice_type": "credit",
  "document_type": "credit note",
  "invoice_number": "E340000000001",
  "invoice_date": "2026-10-22",
  "original_invoice_id": "{{original_invoice_id}}",
  "reason": "return",
  "currency": "DOP",
  "e_invoice": true,
  "categories": [ { "list": "income type", "code": "operational" } ],
  "items": [
    {
      "name": "Devolución - Audífonos inalámbricos",
      "quantity": 1,
      "unit_amount": 1000.00,
      "amount": 1000.00,
      "categories": [ { "list": "type", "code": "goods" } ],
      "taxes": [ { "name": "ITBIS", "rate": 0.18, "rate_type": "percentage", "amount": 180.00 } ]
    }
  ]
}

e-CF 44 · Factura para Regímenes Especiales

document_type: "special regime invoice", invoice_type: "debit"

  • All items are reported as exempt. Do not send ITBIS.
  • The issuer's municipality and province are required.
  • Retention details are mandatory: send the ITBIS and ISR withholdings applied, if any.
{
  "supplier_company_id": "{{company_id}}",
  "invoice_type": "debit",
  "document_type": "special regime invoice",
  "invoice_number": "E440000000001",
  "invoice_date": "2026-10-16",
  "currency": "DOP",
  "e_invoice": true,
  "categories": [ { "list": "income type", "code": "operational" } ],
  "buyer": {
    "company": {
      "legal_name": "Zona Franca Industrial Las Américas SA",
      "type": "business",
      "address": { "address_line_1": "Autopista Las Américas Km 22", "state": "DO-32", "country": "DO" },
      "tax_registrations": [ { "number": "101876543", "type": "RNC", "level": "country", "location": "DO" } ]
    }
  },
  "items": [
    {
      "name": "Mantenimiento de equipos",
      "quantity": 1,
      "unit_amount": 25000.00,
      "amount": 25000.00,
      "categories": [ { "list": "type", "code": "services" } ]
    }
  ]
}

e-CF 45 · Factura Gubernamental

document_type: "governmental invoice", invoice_type: "debit"

  • The buyer is the government entity: RNC and legal name.
  • The issuer's municipality and province are required.
  • Retention details are mandatory: send the ITBIS and ISR withholdings applied by the entity.
{
  "supplier_company_id": "{{company_id}}",
  "invoice_type": "debit",
  "document_type": "governmental invoice",
  "invoice_number": "E450000000001",
  "invoice_date": "2026-10-16",
  "currency": "DOP",
  "e_invoice": true,
  "categories": [ { "list": "income type", "code": "operational" } ],
  "buyer": {
    "company": {
      "legal_name": "Ministerio de Educación de la República Dominicana",
      "type": "business",
      "address": { "address_line_1": "Av. Máximo Gómez 2", "state": "DO-01", "country": "DO" },
      "tax_registrations": [ { "number": "401000001", "type": "RNC", "level": "country", "location": "DO" } ]
    }
  },
  "items": [
    {
      "name": "Suministro de material didáctico",
      "quantity": 100,
      "unit_amount": 500.00,
      "amount": 50000.00,
      "categories": [ { "list": "type", "code": "goods" }, { "list": "unit", "code": "43" } ],
      "taxes": [
        { "name": "ITBIS", "rate": 0.18, "rate_type": "percentage", "amount": 9000.00 },
        { "name": "ISR", "rate": 0.05, "rate_type": "percentage", "taxable_amount": 50000.00, "amount": 2500.00, "withholding_type": "withholding" }
      ]
    }
  ]
}

e-CF 46 · Factura de Exportación

document_type: "export", invoice_type: "debit"

  • All items are reported at ITBIS 0%.
  • The buyer is usually foreign: send their tax ID with type: "tax_id".
  • The issuer's municipality and province are required.
{
  "supplier_company_id": "{{company_id}}",
  "invoice_type": "debit",
  "document_type": "export",
  "invoice_number": "E460000000001",
  "invoice_date": "2026-10-16",
  "currency": "USD",
  "exchange_rate": 60.25,
  "e_invoice": true,
  "categories": [ { "list": "income type", "code": "operational" } ],
  "buyer": {
    "company": {
      "legal_name": "Tropical Imports Inc",
      "type": "business",
      "address": { "address_line_1": "1200 Brickell Ave", "city": "Miami", "state": "US-FL", "country": "US" },
      "tax_registrations": [ { "number": "59-1234567", "type": "tax_id", "level": "country", "location": "US" } ]
    }
  },
  "items": [
    {
      "name": "Cacao en grano - 60 kg",
      "quantity": 50,
      "unit_amount": 180.00,
      "amount": 9000.00,
      "categories": [ { "list": "type", "code": "goods" }, { "list": "unit", "code": "46" } ],
      "taxes": [ { "name": "ITBIS", "rate": 0, "rate_type": "percentage", "amount": 0 } ]
    }
  ]
}

e-CF 47 · Comprobante para Pagos al Exterior

document_type: "payment abroad", invoice_type: "payment"

Issued by you when you pay a foreign provider, with no RNC or cédula, for services, and withhold ISR on that payment.

  • supplier_company_id is your company: the one paying.
  • buyer is the foreign provider you pay. Send their tax ID with type: "tax_id". A buyer with RNC or based in DO is rejected.
  • Services only: every item is reported as an exempt service. Do not send ITBIS or items with type = goods.
  • Send the ISR withheld on each item as a tax with name: "ISR" and withholding_type: "withholding".
  • Everything goes at root level: one document, one payment. payment_methods[] describes how you paid, and bank_account_sender is your account.
  • For foreign currency, Brinta reports amounts in DOP (amount × exchange_rate) and the original amounts as foreign currency.
{
  "supplier_company_id": "{{company_id}}",
  "invoice_external_id": "PAY-2026-0042",
  "invoice_type": "payment",
  "document_type": "payment abroad",
  "invoice_number": "E470000000005",
  "invoice_date": "2026-10-16",
  "invoice_period_start_date": "2026-10-01",
  "invoice_period_end_date": "2026-10-31",
  "currency": "USD",
  "exchange_rate": 60.25,
  "e_invoice": true,
  "purchase_order_number": "OC-2026-118",
  "additional_info": "Pago servicios octubre 2026",
  "payment_model": { "type": "CASH", "terms": "Contado" },
  "buyer": {
    "company": {
      "name": "Acme Cloud",
      "legal_name": "Acme Cloud Services LLC",
      "type": "business",
      "address": { "address_line_1": "500 Market St", "city": "San Francisco", "state": "US-CA", "country": "US" },
      "tax_registrations": [ { "number": "98-7654321", "type": "tax_id", "level": "country", "location": "US" } ]
    }
  },
  "payment_methods": [
    {
      "type": "bank transfer",
      "code": "2",
      "amount": 10000.00,
      "bank_account_sender": { "bank_name": "Banco Popular Dominicano", "account_type": "checking", "account_number": "1234567890" },
      "bank_account_beneficiary": { "bank_name": "Silicon Valley Bank", "account_number": "3300112233", "swift_code": "SVBKUS6S", "address": { "country": "US" } }
    }
  ],
  "items": [
    {
      "item_external_id": "SVC-001",
      "name": "Licencia SaaS - octubre 2026",
      "quantity": 1,
      "unit_amount": 8000.00,
      "amount": 8000.00,
      "categories": [ { "list": "type", "code": "services" } ],
      "taxes": [ { "name": "ISR", "rate": 0.27, "rate_type": "percentage", "taxable_amount": 8000.00, "amount": 2160.00, "withholding_type": "withholding" } ]
    },
    {
      "item_external_id": "SVC-002",
      "name": "Soporte técnico remoto",
      "quantity": 10,
      "unit_amount": 200.00,
      "amount": 2000.00,
      "categories": [ { "list": "type", "code": "services" }, { "list": "unit", "code": "19" } ],
      "taxes": [ { "name": "ISR", "rate": 0.27, "rate_type": "percentage", "taxable_amount": 2000.00, "amount": 540.00, "withholding_type": "withholding" } ]
    }
  ]
}

In this example Brinta reports a total of RD$602,500.00 (USD 10,000 × 60.25), ISR withheld of RD$162,675.00 and a net payment of RD$439,825.00.


Common mistakes

MistakeWhat happensFix
invoice_number is not a 13 character e-NCF of the right typeDGII rejects the e-CFUse E + e-CF type + 10 digit sequence, e.g. E310000000001 for an invoice
invoice (31) sent without buyer RNCDGII rejects the e-CFSend the buyer, or use ticket (32) for final consumers
ticket (32) of RD$250,000 or more without buyerDGII rejects the e-CFSend the buyer's RNC, cédula or foreign tax ID
Credit or debit note without original_invoice_idBrinta validation errorAlways reference the original e-CF
Credit note variant does not match the original documentWrong DGII reportingcredit note for invoice, credit note ticket for ticket, credit note exports for export
Missing categories[] with list = "income type"DGII rejects the e-CFSend it on e-CF 31 to 46
Issuer company without province or municipality on 44, 45 or 46DGII rejects the e-CFComplete state and municipality_code in the company address
ITBIS or goods on a payment abroad (47)Brinta validation errore-CF 47 only covers services, exempt, with ISR withheld
payment abroad (47) to a buyer with RNC or based in DOBrinta validation errore-CF 47 is only for foreign providers
More than 7 payment_methods[]Brinta validation errorGroup payments by method
Foreign currency not in the accepted listDGII rejects the e-CFUse one of the accepted currencies, or convert to DOP

Did this page help you?