Skip to main content

Introduction

The DIAN is the Colombian government agency responsible for managing and overseeing tax collection, customs operations, and facilitating international trade. Before issuing electronic invoices, a business must be registered with the DIAN with an active RUT (Registro Único Tributario), pass the DIAN enablement (habilitación) with its chosen technology provider, and hold an authorized numbering range for its invoices. Invopop has partnered with Alegra, a DIAN-authorized technology provider, to onboard suppliers and issue documents on their behalf. Registering a supplier involves three steps:
  1. Invopop: a workflow creates the supplier’s Alegra account and publishes a portal link.
  2. DIAN: the supplier selects Alegra as their technology provider and submits the enablement test set through that portal.
  3. Numbering (live only): the supplier links their authorized numbering range to Alegra in the DIAN portal.
Once a supplier is registered, continue with the companion guide: Invoicing in Colombia.
The previous Plemsi integration is deprecated and no longer maintained. If your suppliers still issue through Plemsi, follow Migrate from Plemsi to move them to this integration.

Prerequisites

To register a supplier in Colombia, you will need:
  • Supplier details to build the GOBL party: legal name, NIT with the verification digit, and email. The address and the co-dian-municipality extension are optional here but required on invoices.
  • The supplier’s legal representative, with access to the DIAN e-invoicing portal, to select Alegra and run the enablement.
  • For live issuing, a numbering range authorization (resolución de numeración) from the DIAN for each invoice series. See Numbering resolutions.
The name, NIT with the verification digit, and an email address are required for registration. The example also includes the address and the co-dian-municipality extension identifying where the supplier is registered, and uses Alegra’s sandbox NIT so it can be registered in the sandbox.
Colombia supplier example
If the supplier has special tax obligations, set them with the co-dian-fiscal-responsibility extension: O-13 Gran contribuyente, O-15 Autorretenedor, O-23 Agente de retención IVA, or O-47 Régimen simple de tributación. It defaults to R-99-PN when none apply.

Setup

All of the following steps must be carried out from the Invopop Console.
1

Connect the Colombia app

  1. Navigate to Configuration → Apps
  2. Find Colombia in the app discovery list
  3. Click Connect to activate
2

Create the registration workflow

Colombia register supplier workflow

Add to my workspace →

How it works

1

Set state → Processing

Sets the state of the silo entry to Processing.
2

Register supplier

Validates the party’s name, NIT, and email, creates the supplier’s company in Alegra, and publishes a public enablement portal link under the registration-link key in the entry’s meta section.
3

Wait for DIAN enablement

Pauses until the DIAN accepts the enablement test set the supplier submits from the portal. The step resumes automatically as soon as the DIAN responds.
4

Set state → Registered

Sets the state of the silo entry to Registered.

Register a supplier

Each supplier NIT can be registered once per workspace and environment. For each supplier:
1

Upload the supplier party

Create a silo entry with the supplier’s details as a GOBL org.Party document, either from the Console or via the API:
Colombia supplier example
2

Run the registration workflow

Run the workflow created during setup on the supplier entry, from the Console or by creating a job. The job creates the Alegra company and pauses at the Wait for DIAN enablement step.
3

Share the portal link

Open the supplier entry in the Console and copy the registration-link from its meta section. Share it with the supplier’s legal representative: it is public and needs no Invopop account.Via the API, fetch the silo entry and read the link_url of the meta row with the key registration-link:
To skip the portal entirely, submit the TestSetId yourself as described in Complete the enablement via the API.
4

Select Alegra as technology provider at the DIAN

In the DIAN Habilitación portal, the legal representative:
  1. Goes to Registro y habilitación → Documentos electrónicos → Factura electrónica.
  2. Selects Software de un proveedor tecnológico as the operation mode.
  3. Selects Soluciones Alegra S.A.S as the provider and Alegra’s software, then clicks Asociar.
  4. Opens the test set details and copies the TestSetId.
The DIAN explains these screens in sections 1 and 2 of Registration and operation mode selection.
5

Submit the test set

The legal representative pastes the TestSetId into the Invopop portal and clicks Enviar set de pruebas. Alegra sends the required test documents to the DIAN automatically.
Enablement portal with the DIAN TestSetId field and the Enviar set de pruebas button

Enablement portal

To submit the TestSetId without the hosted portal, use the Submit test set endpoint.
6

Wait for the DIAN response

The portal refreshes while the DIAN processes the test set. Once accepted, the workflow resumes and the entry moves to the registered state. If the DIAN rejects the test set, the workflow fails with the DIAN’s error details; fix the cause and re-run the registration workflow to start again.
Re-running the registration workflow on the same entry is safe: it restarts the enablement if it hasn’t been accepted yet, and does nothing once the supplier is enabled.

Numbering resolutions

In live, every invoice series needs a DIAN numbering range authorization linked to Alegra. This isn’t needed in the sandbox, which uses the fixed SETP test resolution.
1

Request the numbering range

The legal representative requests the range in the DIAN’s MUISCA system (Numeración de Facturación → Solicitar numeración de facturación → Autorizar Rango), choosing a prefix of up to four letters or digits, which becomes the invoice series. Once signed, the DIAN issues form 1876 with the authorized ranges and validity. See Request for invoice numbering authorization.
2

Link the range to Alegra

Once the DIAN has accepted the test set, and about two hours after the range request, log in to the production environment through Facturando Electrónicamente. Go to Configuración → Rangos de numeración, select Alegra’s software (Soluciones Alegra S.A.S) and the authorized range, and click Agregar. If the operation mode doesn’t show in production, use Sincronizar a Producción in the test set details of the Habilitación portal. The DIAN explains this in sections 3 and 4 of Registration and operation mode selection.
Invopop fetches the supplier’s linked resolutions automatically before sending, so no further action is needed. Check them anytime with List resolutions. To extend a range that is about to expire with numbers left, see Request for invoice numbering extension; once a range is used up, request a new one.

Complete the enablement via the API

For platforms that want to drive the enablement programmatically instead of sharing the hosted portal, use the enablement API (both endpoints under /apps/gov-co/v1/entries/{silo_entry_id}/enablement). The entry must belong to the authenticated workspace and have been registered first.
1

Submit the test set

Submit test set with the TestSetId from the DIAN enablement portal. It responds 400 when a test set is already awaiting the DIAN outcome, the supplier is already enabled, or a previous enablement failed. Run the registration workflow again to restart a failed enablement.
2

Track the outcome

Fetch the enablement status: status moves from pending to accepted or failed once the DIAN responds. The workflow’s Wait for DIAN enablement step picks up the outcome exactly as it does for portal submissions.

Sandbox

The same registration flow runs in sandbox workspaces against the DIAN test environment, with a few differences:
  • Only Alegra’s own NIT (9005590882) can be registered, since the DIAN test registry accepts documents from that emitter alone. A NIT can be registered once per workspace, so each workspace has a single sandbox supplier.
  • The fixed DIAN test resolution (series SETP, codes 990000000–995000000) is seeded automatically on registration. The range is shared with other users testing in the sandbox, so pick codes unlikely to collide.
  • The enablement is simulated: instead of a real DIAN TestSetId, enter one of the following values in the portal to choose the outcome.
Use the accepted value to complete a supplier registration end to end; the other values let you test how your integration handles rejected, pending, and failed outcomes.

Migrate from Plemsi

Moving a supplier from the old Plemsi integration takes the same steps as a new registration. At the DIAN, the supplier simply adds Alegra as another technology provider.
1

Set up the Colombia app

Connect the app and create the registration workflow as described in Setup, and the send workflow from the invoicing guide.
2

Register the supplier

Follow Register a supplier: run the registration workflow, add Alegra as technology provider at the DIAN, and submit the test set. The Plemsi enablement doesn’t carry over, so this is needed even for suppliers already issuing.
3

Set up the numbering ranges

Under Configuración → Rangos de numeración (see Numbering resolutions), choose one of:
  • Move the existing range: unlink it from Plemsi and link it to Alegra. The series stays the same, and new invoices must continue after the last number issued through Plemsi.
  • Add a new range: request a new range with a new prefix and link it to Alegra. Invoices sent through Alegra start a fresh series, while the old range stays with Plemsi until it’s no longer needed.
4

Switch to the new send workflow

Send new invoices with the Colombia send workflow, using the series from the previous step. Once they clear, stop using the Plemsi workflow.
At this point, you’re ready to start sending invoices on behalf of the supplier. Head over to the Invoicing in Colombia guide to continue.

FAQ

The supplier must be registered with the DIAN with an active RUT (Registro Único Tributario), complete the DIAN habilitación, and hold a valid billing numbering range authorization. The supplier registration guide walks through each step.
Upload a GOBL party with the supplier’s name, NIT (with verification digit), and email, then run the registration workflow. It publishes an enablement portal link under registration-link in the entry’s meta; the supplier’s legal representative completes the DIAN enablement there, and the workflow finishes once the DIAN accepts it. See the supplier registration guide.
A one-time DIAN certification required before issuing real invoices. The supplier submits a TestSetId from the DIAN portal through the hosted portal, Alegra sends the test documents, and the supplier is enabled once the DIAN accepts them.
Yes, but only Alegra’s NIT (9005590882) can be registered. The enablement is simulated: enter the TestSetId a70562e0-631e-4ceb-aa65-36887b57dc17 for an instant acceptance. Other outcomes are in the sandbox section of the guide.
Yes, both by number limit and by date. Before a range with unused numbers expires, the supplier can extend it (extension request); once it’s used up, they request a new one (new authorization). Updated resolutions are picked up automatically.
More available in our Colombia FAQ section

Participate in our community

Ask and answer questions about invoicing in Colombia →