Documento Expedido para los Servicios Públicos y Domiciliarios.¶
Url POST
¶
/service/spd
Headers¶
Content-Type: application/json Accept: application/json Authorization: Bearer token
Parameters¶
- spd_extensions:
Type: array object
En este grupo se detalla la información relacionada con el servicio prestado que no se muestra a nivel de item y es requerida por el sector o información requerida del servicio facturado que no se puede informar a nivel del documento equivalente.
- other_company * :
Type: boolean
Determina si el servicio es de un tercero. false para activar ubl extension Services_SPD, true para activar ubl extension OTHERCOMPANY_SPD, entonces; si su valor es true, el nodo sender_parties es construido, por ende esta información debería enviarse.
- name * :
Type: string
Campo para informar el servicio facturado.
- agency_name * :
Type: string
Campo para informar Nombre de la Empresa SPD que emite este DE.
- reason * :
Type: string
Campo para informar Nombre de la Empresa SPD a cargo de este recaudo.
- contract:
Type: string
Corresponde al número, código, tipo transacción o contrato de la empresa de servicios públicos.
- issue_date:
Type: string
Campo para informar la fecha en la que se realizó la adquisición del contrato.
- notes:
Type: array object
Campo opcional para adicionar información sobre el contrato o servicio relacionado en esta extensión.
- text * :
Type: string
Texto de la nota.
- sender_parties:
Type: array object
Grupo utilizado para informar identificación de un tercero que no se muestra a nivel de item y es requerida por el sector.
- name:
Type: string
Corresponde al Nombre de la empresa prestadora del servicio.
- identification_number:
Type: integer
Campo de Identificación del documento de identidad.
- identification_type_code:
Type: integer
Código de documento de identidad.
- subscriber_parties:
Type: array object
Grupo para informar los datos del suscriptor y/o usuario del servicio prestado por parte de un tercero.
- name:
Type: string
Corresponde al nombre del suscriptor y/o usuario.
- street_name:
Type: string
Campo para informar Direccion de correspondencia del Nombre suscriptor y/o usuario.
- additional_street_name:
Type: string
Campo para informar una dirección de entrega adicional.
- municipality_code:
Type: integer
Código del municipio.
Nota
https://test.endpoint.emision.co/dian-tables/Municipality.
- residential_stratum_code:
Type: integer
Código del estrato residencial.
Nota
https://test.endpoint.emision.co/dian-tables/Stratum.
- email:
Type: string
Correo electrónico.
- subscriber_consumptions:
Type: array object
Grupo para informar valores del servicio que no sean expresados a nivel de línea de producto.
- duration_billing_cycle:
Type: string
Campo para informar el ciclo o cantidad del servicio facturado.
- periodicity_code:
Type: string
Código de periodicidad.
Nota
https://test.endpoint.emision.co/dian-tables/Periodicity.
- notes:
Type: array object
Campo que puede ser utilizado para expresar información adicional que corresponda al servicio facturado.
- text * :
Type: string
Texto de la nota.
- consumption_sections:
Type: array object
Grupo para informar el servicio facturado de las empresas de servicios públicos.
- spd_debit_partial_consumptions:
Type: array object
Grupo para informar el Consumo parcial.
- total_metered_quantity:
Type: integer
Elemento utlizado para informar la cantidad de unidades consumidas en el periodo facturado.
- unit_measure_code:
Type: string
Código de unidad de medida.
- consumption_payable_amount:
Type: decimal
Corresponde al Valor total del servicio consumido incluyendo débitos (Subsidios y/o beneficios) y créditos (Recargos bajo cualquier concepto) Valor total del servicio= valor servicio + valor debito – valor credito.
- consumption_price:
Type: object
Grupo para informar el precio del consumo.
- quantity:
Type: integer
Cantidad consumida del servicio facturado.
- unit_measure_code:
Type: string
Código de unidad de medida.
- partial_line_extension_amount:
Type: decimal
Valor Parcial del consumo sin aplicar recargos y/ descuentos. El valor corresponde a la multiplicación entre la cantidad del servicio facturado y el precio por unidad informados en la UBLExtensions dentro del grupo SPDDebitForPartialConsumption. PartialLineExtensionAmount = Cantidad(Quantity) x Precio Unidad (PriceAmount)
- item_credit_discounts:
Type: array object
Grupo para informar los valores créditos, o descuentos que restan al valor total del servicio informado. Ejemplo Subsidio, Saldos a favor de periodos anterioes.
- allowance_reason:
Type: string
Texto libre para describir el descuento o credito.
- amount:
Type: decimal
Valor numérico del descuento.
- item_debit_charges:
Type: array object
- charge_reason:
Type: string
Texto libre para describir el cargo al producto.
- amount:
Type: decimal
Valor numérico del cargo.
- unstructured_price:
Type: object
Grupo para informar el valor unitario.
- price_amount:
Type: decimal
Valor unitario.
- base_quantity:
Type: decimal
La cantidad real sobre la cual el precio aplica.
- unit_measure_code:
Type: string
Código de unidad de medida.
- utility_meter:
Type: object
Grupo para informar la lectura del contador.
- meter_number:
Type: string
Campo de texto libre para informar el los datos del medidor, como por ejemplo la referencia y serial.
- previous_meter_reading_date:
Type: date
Fecha de lectura anterior del medidor.
- previous_meter_quantity:
Type: decimal
Valor de la lectura anterior del medidor.
- latest_meter_reading_date:
Type: date
Fecha actual de lectura del lectura del medidor.
- latest_meter_quantity:
Type: decimal
Valor actual de lectura del medidor.
- unit_measure_code:
Type: string
Código de unidad de medida.
- meter_reading_method:
Type: string
Texto libre para informar el método de lectura.
- duration_measure:
Type: integer
Duracion del servicio sobre el periodo facturado en días.
- consumption_histories:
Type: array object
Grupo de elemento para Información del histórico.
- previous_payment:
Type: decimal
Campo para informar el pago anterior.
- consum_months:
Type: array object
Grupo de elemento para Información del histórico de valores facturados. Últimos 6 meses.
- total_invoiced_quantity:
Type: decimal
Campo para informar la cantidad de unidades consumidas.
- unit_measure_code:
Type: string
Código de unidad de medida.
- period:
Type: object
Grupo de información del periodo facturado.
- start_date:
Type: date
Fecha incial del periodo de facturación.
- end_date:
Type: date
Fecha final del periodo de facturación.
- duration_measure:
Type: integer
Campo para informar los días facturados.
- period_payable_amount:
Type: decimal
Campo para informar el monto a pagar.
- consum_average:
Type: object
Grupo para informar el Promedio de consumo.
- consumption_average:
Type: decimal
Campo para informar el Promedio de unidades consumidas.
- unit_measure_code:
Type: string
Código de unidad de medida.
- duration_measure_average:
Type: integer
Campo para informar el Promedio consumido en el mes.
- quantity_wastes:
Type: array object
Grupo de elementos para informar residuos del periodo facturado.
- history_wastes:
Type: array object
Grupo de elementos para informar el histórico de residuos del periodo facturado.
- total_invoiced_quantity:
Type: decimal
Campo para informar la cantidad de Residuos aprovechables y no aprovechables.
- unit_measure_code:
Type: string
Código de unidad de medida.
- period:
Type: object
Grupo de elementos para informar el periodo de Residuos provechables y no aprovechables.
- type:
Type: string
Debe corresponder al literal Usable o NotUsable.
- start_date:
Type: date
Fecha de generación del contenedor.
- end_date:
Type: date
Fecha de fin de recolección del contenedor.
- period_wastes:
Type: array object
Grupo para informar toneladas por suscriptor por mes.
- ordinary_unusable:
Type: decimal
Campo para informar el total de residuos no aprovechables.
- unit_measure_code:
Type: string
Código de unidad de medida.
- sweeping_cleaning:
Type: decimal
Campo para informar el total Limpieza de barrido.
- cleaning_urban:
Type: decimal
Campo para informar el total Limpieza urbana.
- useless:
Type: decimal
Campo para informar el total se residuos inutiles.
- sub_invoice_lines:
Type: array object
Grupo utilizado para financiaciones de la deuda de la factura de SPD.
- id:
Type: string
Campo para informar número del contrato del servicio facturado.
- item_good_services:
Type: object
Grupo utilizado para la negociación de la deuda.
- gs_name:
Type: string
Campo para informar nombre del producto.
- description:
Type: string
Campo para informar descripción Del Producto.
- subscriber_payments_terms:
Type: array object
Grupo para informar los términos de financiamiento
- fees_to_pay:
Type: integer
Cuotas a pagar.
- fees_paid:
Type: integer
Cuotas pagadas.
- percent:
Type: decimal
Tarifa del tributo.
- balance:
Type: object
Grupo para informar balance del acuerdo del pago.
- debit_line_amount:
Type: decimal
Campo para informar saldo a pagar.
- transactions:
Type: array object
Grupo para informar cuotas pactadas.
- transaction_description:
Type: string
Campo para informar número de cuota a cancelar.
- credit_line_amount:
Type: decimal
Campo para informar valor de la cuota a pagar.
- adjustment_accounting:
Type: object
Grupo para informar ajustes de los acuerdos de pago.
- item_discount:
Type: decimal
Campo para informar descuentos.
- item_charge:
Type: decimal
Campo para informar saldos a favor de acuerdos de pago.
- tax_point_date:
Type: date
Fecha ultima de pago, para el servicio público domiciliario.
- due_date:
Type: date
Fecha de vencimiento del servicio público domiciliario.
- number * :
type: integer
Numero de la factura sin prefijos.
- prefix:
type: string
Prefijo de la factura.
- software_manufacturer * :
Type: object
Información correspondiente a los datos del fabricante del Software.
- software_developer * :
Type: string
Corresponde a los nombres y apellidos del fabricante del software.
- registration_name * :
Type: string
Corresponde a la Razón social del fabricante del software.
- software_name * :
Type: string
Corresponde al Nombre del Software.
- branch_office:
Type: object
Datos de la sucursal (emisor de documento).
- logo:
Type: string
URL del logotipo de la sucursal.
- country_code:
Type: string
Código de país.
Nota
Ver listado en https://test.endpoint.emision.co/dian-tables/Country.
- municipality_code:
Type: string
Código de municipio.
Nota
Ver listado en https://test.endpoint.emision.co/dian-tables/Municipality.
Es obligatorio si
country_code
es igual a «CO» o null.- name:
Type: string
Nombre o razón social del empresa.
- trade_name:
Type: string
Nombre comercial de la empresa.
- phone:
Type: string
Teléfono.
Nota
Solo se permiten caracteres numericos, espacios o los simbolos + - _ ( ).
- address:
Type: string
Dirección.
- email:
Type: string
Correo electrónico.
- merchant_registration:
Type: string
Registro mercantil.
- send:
type: boolean
default:
false
Indica si se envía correo al cliente con representación gráfica y demás adjuntos.
- notes:
Type: array object
Información adicional u observaciones.
- text * :
Type: string
Texto libre, relativo al documento.
- operation_type_code * :
type: string
Código del tipo de operación. Este código representa tipos como: combustibles, emisor es auto-retenedor, mandato bienes, exportación, genérica, etc.
Nota
Ver listado en https://test.endpoint.emision.co/dian-tables/OperationType/spd.
- document_type_code * :
type: string
Código de tipo de documento. Este código representa tipos de de documentos como: Factura de venta nacional, factura de exportación, factura por contingencia facturador, factura por contingencia DIAN, nota crédito, nota débito, ZIP.
Nota
Ver listado en https://test.endpoint.emision.co/dian-tables/DocumentType.
- identification_number * :
type: integer
Número del documento de identificación del emisor sin dígito de verificación.
- resolution_number * :
type: integer
Número de la resolución.
- date:
type: string(AAAA-MM-DD)
Fecha de emisión del documento.
- time:
type: string(00:00:00)
Hora de emisión del documento en formato 24 horas.
- currency_type_code * :
type: string
Código del tipo moneda del documento.
Nota
Ver listado en https://test.endpoint.emision.co/dian-tables/CurrencyType.
- order_reference:
type: object
Datos correspondientes a la orden de compra.
- id * :
type: string
Prefijo y número del documento orden referenciado.
- issue_date:
type: string(AAAA-MM-DD)
Fecha de emisión de la orden.
- credit_note_document_references:
Type: array object
Notas Crédito que dieron origen a la presente Factura Electrónica (Se debe diligenciar únicamente cuando la FE se origina a partir de la corrección o ajuste que se da mediante una Nota Crédito).
- number * :
Type: string
Prefijo + Número de la factura electrónica referenciada.
- uuid * :
Type: string
CUDE de la nota crédito relacionada.
- issue_date * :
Type: string($date)
Fecha de emisión de la nota crédito relacionada.
- debit_note_document_references:
Type: array object
Nota Débito que dio origen a la presente Factura Electrónica (Se debe diligenciar únicamente cuando la FE se origina a partir de la corrección o ajuste que se da mediante una Nota Débito).
- number * :
Type: string
Prefijo + Número de la factura electrónica referenciada.
- uuid * :
Type: string
CUDE de la nota débito relacionada.
- issue_date * :
Type: string($date)
Fecha de emisión de la nota débito relacionada.
- additional_document_references:
Type: array object
Referencias de documentos adicionales (Tipo de operación «SS-Num» referencia a tipos de documentos «Factura Talonario», Obligatorio si la propiedad «type_document_id» es 3).
- number * :
Type: string
Prefijo y número del documento referenciado.
- issue_date * :
Type: string($date)
Fecha de emisión del documento referenciado.
- type_of_non_tax_document_id:
Type: string
Corresponde a una codificación propia de la empresa (Para el tipo de operación «SS-POS» debe enviar el valor «_n_»).
- invoice_period:
type: object
Periodo entre el cual se emite la facturación. El formato de la fecha AAAA-MM-DD. El formato 24 horas 00:00:00.
- start_date * :
type: string(AAAA-MM-DD)
Fecha de inicio del periodo de facturación.
- start_time:
type: string(00:00:00)
Hora de inicio del periodo de facturación en formato 24 horas.
- end_date * :
type: string(AAAA-MM-DD)
Fecha de fin del periodo de facturación.
- end_time:
type: string(00:00:00)
Hora de fin del periodo de facturación en formato 24 horas.
- payment_exchange_rate:
type: object
Tasa de cambio que representa la conversión de moneda al documento
currency_type_code
contra otra moneda especificadapayment_exchange_rate.currency_type_code
.
- currency_type_code * :
type: string
Código del tipo moneda a la cual se hace la conversión.
Nota
Ver listado en https://test.endpoint.emision.co/dian-tables/CurrencyType.
- calculation_rate * :
type: double
Valor de la tasa de cambio.
- date * :
type: string (AAAA-MM-DD)
Fecha en la que se fijó la tasa de cambio
- customer * :
Type: object
Datos del cliente (receptor del documento).
- identification_number * :
Type: integer
Número de identificación.
- name * :
Type: string
Nombre o razón social del empresa.
- email * :
Type: string
Correo electrónico.
Nota
Si desea reportar varios emails usar ; como separador.
- dv:
Type: integer
Dígito de verificación, es obligatorio si el tipo de documento es NIT.
- identification_type_code:
Type: string
Código de documento de identidad (código asociado al NIT, cédula, etc).
Nota
Ver listado en https://test.endpoint.emision.co/dian-tables/IdentificationType.
- organization_type_code:
Type: string
Código de tipo de organización (asociado a persona natural, persona jurídica).
Nota
Ver listado en https://test.endpoint.emision.co/dian-tables/OrganizationType.
- language_code:
Type: string
Default:
es
Código de idioma.
Nota
Ver listado en https://test.endpoint.emision.co/dian-tables/Language.
- country_code:
Type: string
Código de país.
Nota
Ver listado en https://test.endpoint.emision.co/dian-tables/Country.
- municipality_code:
Type: string
Código de municipio.
Nota
Ver listado en https://test.endpoint.emision.co/dian-tables/Municipality.
Es obligatorio si
country_code
es igual a «CO».- regime_type_code:
Type: string
Código de régimen.
Nota
Ver listado en https://test.endpoint.emision.co/dian-tables/RegimeType.
- tax_code:
Type: string
Código de impuesto (Identificador del tributo del adquirente).
Nota
Ver listado en https://test.endpoint.emision.co/dian-tables/TaxDetail.
- liability_type_code:
Type: string
Código de responsabilidad.
Nota
Ver listado en https://test.endpoint.emision.co/dian-tables/LiabilityType.
- trade_name:
Type: string
Nombre comercial de la empresa.
- phone:
Type: string
Teléfono.
Nota
Solo se permiten caracteres numericos, espacios o los simbolos + - _ ( ).
- address:
Type: string
Dirección.
- merchant_registration:
Type: string
Registro mercantil.
- location_type_code:
Type: string
Estrato del predio donde se presta los servicios públicos domiciliarios.
Nota
https://test.endpoint.emision.co/dian-tables/LocationType.
- use_type_code:
Type: string
Elemento para informar el tipo de uso del predio. De acuerdo a la lista.
- delivery:
Type: object
Datos de información de entrega de los bienes.
- actual_delivery_date * :
Type: string(YYYY-MM-DD)
Fecha efectiva de entrega de los bienes.
- actual_delivery_time * :
Type: string(00:00:00)
Hora efectiva de entrega de los bienes en formato de 24 horas.
- delivery_terms:
Type: array object
Información relacionadas con la entrega.
- special_terms:
Type: string
Método de pago de costes de transporte.
Nota
Se utilizar para indicar cómo se pagan los costes del transporte (por ejemplo, Portes Debidos, Portes Pagados) Puede ser un texto libre que entiendan el comprador y vendedor o codificarlo en una lista, por ejemplo http://www.unece.org/trade/untdid/d01b/tred/tred4215.html.
- delivery_type_code:
Type: integer
Código del tipo de entrega.
Nota
Ver listado en https://test.endpoint.emision.co/dian-tables/DeliveryType.
- loss_risk:
Type: string
Riesgo de pérdida.
payment_form* :Type: object
Obsoleto desde la versión 3.0.
Forma de pago.
payment_form_code* :Type: string
Código de forma de pago.
Nota
Ver listado en https://test.endpoint.emision.co/dian-tables/PaymentForm.
payment_method_code* :Type: string
Código del método de pago.
Nota
Ver listado en https://test.endpoint.emision.co/dian-tables/PaymentMethod.
payment_due_date:Type: string(YYYY-MM-DD)
Fecha de vencimiento del pago.
Nota
Es obligatorio si la forma de pago es a crédito.
duration_measure:Type: integer
Medida de duración en días.
Nota
Es obligatorio si la forma de pago es a crédito.
- payment_forms * :
Type: array object
Formas de pago.
- payment_form_code * :
Type: string
Código de forma de pago.
Nota
Ver listado en https://test.endpoint.emision.co/dian-tables/PaymentForm.
- payment_method_code * :
Type: string
Código del método de pago.
Nota
Ver listado en https://test.endpoint.emision.co/dian-tables/PaymentMethod.
- payment_due_date:
Type: string(YYYY-MM-DD)
Fecha de vencimiento del pago.
Nota
Es obligatorio si la forma de pago es a crédito.
- duration_measure:
Type: integer
Medida de duración en días.
Nota
Es obligatorio si la forma de pago es a crédito.
- prepaid_payments:
Type: array object
Anticipos.
- identifier * :
Type: string
Identificación del pago.
- paid_amount * :
Type: double
Valor del pago.
- received_date:
Type: string(YYYY-MM-DD)
Fecha en la cual el pago fue recibido.
- paid_date:
Type: string(YYYY-MM-DD)
Fecha en la cual el pago fue realizado.
- instruction_id:
Type: string
Instrucciones relativas al pago.
- allowance_charges:
Type: array object
Cargos o descuentos
- charge_indicator * :
Type: boolean
Cargo o descuento.
Nota
Cargo es true, es un Débito aumenta el valor de la factura y se debe reportar en el
legal_monetary_totals
. Descuento es false, un Crédito descuenta el valor de la factura antes de tributos y debe reportarse en ellegal_monetary_totals
- discount_code:
Type: string
Código de descuento.
Nota
Ver listado en https://test.endpoint.emision.co/dian-tables/Discount.
- allowance_charge_reason * :
Type: string
Razón del cargo o descuento.
- amount * :
Type: double
Cantidad.
- base_amount * :
Type: double
Cantidad base.
- tax_totals:
Type: array object
Totales impuestos.
- tax_code * :
Type: string
Código impuesto.
Nota
Ver listado en https://test.endpoint.emision.co/dian-tables/Tax.
- percent:
Type: double
Porcentaje.
- tax_amount * :
Type: double
Importe del impuesto.
- taxable_amount * :
Type: double
Base imponible.
- rounding_amount:
Type: integer($double)
Redondeo agregado al total del impuesto.
- unit_measure_code:
Type: string
Código de unidad de medida.
Nota
Ver listado en https://test.endpoint.emision.co/dian-tables/UnitMeasure.
- per_unit_amount:
Type: double
Por unidad de cantidad.
- base_unit_measure:
Type: double
Medida unidad base.
- withholding_tax_totals:
Type: array object
Totales retenciones.
- tax_code * :
Type: integer
Código impuesto.
Nota
Ver listado en https://test.endpoint.emision.co/dian-tables/Tax.
- percent:
Type: double
Porcentaje.
- tax_amount * :
Type: double
Importe del impuesto.
- taxable_amount * :
Type: double
Base imponible.
- legal_monetary_totals * :
Type: object
Totales monetarios legales
- line_extension_amount * :
Type: double
Cantidad de extensión de línea. Suma de los valores brutos de las líneas de la factura.
- tax_exclusive_amount * :
Type: double
Cantidad exclusiva de impuestos. Suma de los valores de las bases imponibles de todas líneas de detalle.
- tax_inclusive_amount * :
Type: double
Cantidad de impuestos incluidos. Valor bruto de la factura más la suma de los tributos de todas las líneas de detalle.
- allowance_total_amount * :
Type: double
Cantidad total de la asignación. Suma de todos los descuentos aplicados a nivel de la factura.
- charge_total_amount * :
Type: double
Cantidad del importe total. Suma de todos los cargos aplicados a nivel de la factura.
- payable_rounding_amount:
Type: integer($double)
Cantidad del redondeo total
- payable_amount * :
Type: double
Cantidad a pagar. Valor total de ítems (incluyendo cargos y descuentos a nivel de ítems)+valor tributos + valor cargos – valor descuentos.
Nota
Si la factura pertenece al sector salud se debe restar el anticipo.
- invoice_lines:
Type: array object
Lineas de la factura.
- notes:
Type: array object
Información adicional
- text * :
Type: string
Texto libre para añadir información adicional al artículo.
- item_sector_identification_type_code:
Type: integer
Código del tipo de identificación del sector del artículo.
Nota
Obligatorio cuando se informe el tipo de operación 11 o 12.
Para mandatos ver listado en https://test.endpoint.emision.co/dian-tables/ItemSectorIdentificationType/mandate.
Para trasporte ver listado en https://test.endpoint.emision.co/dian-tables/ItemSectorIdentificationType/transport.
- unit_measure_code * :
Type: string
unidades de medida.
Nota
Ver listado en https://test.endpoint.emision.co/dian-tables/UnitMeasure.
- invoiced_quantity * :
Type: double
Cantidad facturada.
- line_extension_amount * :
Type: double
Valor total de la línea.
free_of_charge_indicator *:Type: boolean
Obsoleto desde la versión 3.0.
Indicador de cargos.
- reference_price_code:
Type: string
Código de referencia precios.
Nota
Ver listado en https://test.endpoint.emision.co/dian-tables/ReferencePrice.
- allowance_charges:
Type: array object
Descuentos y cargos.
- charge_indicator * :
Type: boolean
Indicador de cargo.
- allowance_charge_reason * :
Type: string
Razón del cargo o descuento.
- amount * :
Type: double
Total.
- base_amount:
Type: double
Cantidad base.
- multiplier_factor_numeric:
Type: double
Porcentaje del descuento.
- tax_totals:
Type: array object
Impuestos totales.
- tax_code * :
Type: string
Código del impuesto.
Nota
Ver listado en https://test.endpoint.emision.co/dian-tables/Tax.
- tax_amount * :
Type: double
Total a pagar.
- taxable_amount * :
Type: double
Base imponible.
- rounding_amount:
Type: integer($double)
Redondeo agregado al total del impuesto.
- percent:
Type: double
Porcentaje del descuento.
- unit_measure_code:
Type: string
Código unidad de medida.
Nota
Ver listado en https://test.endpoint.emision.co/dian-tables/UnitMeasure.
- per_unit_amount:
Type: double
Valor del tributo por unidad
- base_unit_measure:
Type: double
Medida unidad base.
- withholding_tax_totals:
Type: array object
Totales retenciones.
- tax_code * :
Type: string
Código impuesto.
Nota
Ver listado en https://test.endpoint.emision.co/dian-tables/Tax.
- percent:
Type: double
Porcentaje.
- tax_amount * :
Type: double
Importe del impuesto
- taxable_amount * :
Type: double
Base imponible.
- information_content_provider_party:
Type: object
Información relativa al mandante.
- identification_number * :
Type: integer
Número de identificación
- identification_type_code:
Type: integer
Código de documento de identidad
- description * :
Type: string
Descripción del artículo o servicio a que se refiere esta línea de la factura.
Nota
Pueden ir separadas por punto y coma si desea multiples descripciones.
- code * :
Type: string
Código interno el producto.
- item_identification_type_code * :
Type: string
Código de identificación del artículo.
Nota
Ver listado en https://test.endpoint.emision.co/dian-tables/ItemIdentificationType.
- additional_item_properties:
Type: array object
Información específica del ítem que puede ser solicitada por autoridades o entidades diferentes a la DIAN.
- name * :
Type: string
Característica que quiere informar del ítem.
- value * :
Type: string
Valor de la característica que se quiere informar del ítem.
- unit_measure_code:
Type: integer
Default: 94
Código de unidad de medida.
Nota
Ver listado en https://test.endpoint.emision.co/dian-tables/UnitMeasure.
- value_quantity:
Type: integer($double)
Cantidad del Bien.
- price_amount * :
Type: double
Valor del artículo o servicio.
- base_quantity * :
Type: double
La cantidad real sobre la cual el precio aplica.
- accounting_cost_code:
Type: string
Campo para informar código del producto.
- supplier:
Type: object
Emisor del documento
- shareholder * :
Type: array object
Grupo de elementos que permiten registrar la información de los participantes de un Consorcio o Unión temporal.
- partecipation_percent * :
Type: integer
Porcentaje del participante en el consorcio.
- name * :
Type: string
Nombre o Razón Social de participante de consorcio.
- identification_number * :
Type: string
Número de identificación del participante de consorcio.
- dv:
Type: string
Si participante de consorcio está identificado por NIT (31), el DV del NIT debe ser informado.
- identification_type_code * :
Type: string
Identificador del tipo de documento de identidad del participante de consorcio.
Nota
Ver listado en https://test.endpoint.emision.co/dian-tables/IdentificationType.
- liability_type_code * :
Type: string
Tipo de obligación del participante de consorcio.
Nota
Ver listado en https://test.endpoint.emision.co/dian-tables/LiabilityType.
- tax_code * :
Type: string
Identificador del tributo del participante de consorcio.
Nota
Ver listado en https://test.endpoint.emision.co/dian-tables/TaxDetail.
Body¶
Contiene los datos mínimos para generar un documento.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 { "date": "2024-10-17", "send": true, "time": "18:42:13", "number": 56, "prefix": "SPD", "sync": true, "resolution_number": 18760000001, "currency_type_code": "COP", "document_type_code": "60", "operation_type_code": 601, "identification_number": 901285179, "due_date": "2024-08-23", "tax_point_date": "2024-06-23", "accounting_cost_code": "RP-03134A", "spd_extensions": [ { "other_company": false, "name": "Acueducto", "agency_name": "Emtel", "reason": "Proceso de facturación y recaudo EMTEL", "contract": 90005148, "issue_date": "2024-06", "notes": [ { "text": "Recaudo acueducto" }, { "text": "Páguese antes de 2024-07-01" } ], "subscriber_parties": [ { "name": "Cliente 1", "address": "Calle falsa 123", "additional_address": "N/A", "municipality_code": 19397, "residential_stratum_code": 1, "email": "cr@123.net" } ], "subscriber_consumptions": [ { "duration_billing_cycle": 1, "periodicity_code": 1, "notes": [ { "text": "Nota 3" }, { "text": "Nota 4" } ], "consumption_sections": [ { "spd_debit_partial_consumptions": [ { "total_metered_quantity": 22, "unit_measure_code": 94, "consumption_payable_amount": 67012.1, "consumption_price": { "quantity": 22, "unit_measure_code": 94, "partial_line_extension_amount": 65289.4 }, "item_credit_discounts": [ { "allowance_reason": "Subsidio", "amount": 5641.35 }, { "allowance_reason": "Subsidio", "amount": 61.68 } ], "item_debit_charges": [ { "charge_reason": "Cargo fijo", "amount": 6550.69 }, { "charge_reason": "Cargo Variable Aprovechable", "amount": 10258.98 }, { "charge_reason": "Consumo", "amount": 61.68 } ], "unstructured_price": { "price_amount": 2967.7, "base_quantity": 1, "unit_measure_code": 94 }, "utility_meter": { "meter_number": "DAE V-75 Vertical Water Meter, 3/4” NPT", "previous_meter_reading_date": "2021-03-27", "previous_meter_quantity": 1.36, "latest_meter_reading_date": "2021-04-27", "latest_meter_quantity": 1.382, "meter_reading_method": "Directa al contador", "unit_measure_code": "MTQ", "duration_measure": 31 } } ], "consumption_histories": [ { "previous_payment": "17951.16", "consum_months": [ { "total_invoiced_quantity": 24, "unit_measure_code": 94, "period": { "start_date": "2020-11-01", "end_date": "2020-11-30", "duration_measure": 31, "period_payable_amount": 17951.16 } }, { "total_invoiced_quantity": 24, "unit_measure_code": 94, "period": { "start_date": "2020-12-01", "end_date": "2020-12-31", "duration_measure": 31, "period_payable_amount": 17870.84 } }, { "total_invoiced_quantity": 24, "unit_measure_code": 94, "period": { "start_date": "2021-01-01", "end_date": "2021-01-31", "duration_measure": 31, "period_payable_amount": 16888.14 } }, { "total_invoiced_quantity": 25, "unit_measure_code": 94, "period": { "start_date": "2021-02-01", "end_date": "2021-02-28", "duration_measure": 31, "period_payable_amount": 17273.79 } }, { "total_invoiced_quantity": 25, "unit_measure_code": 94, "period": { "start_date": "2021-03-01", "end_date": "2021-03-31", "duration_measure": 31, "period_payable_amount": 16586.21 } }, { "total_invoiced_quantity": 26, "unit_measure_code": 94, "period": { "start_date": "2021-04-01", "end_date": "2021-04-30", "duration_measure": 31, "period_payable_amount": 16449.46 } } ], "consum_averages": { "consumption_average": 25, "unit_measure_code": 94, "duration_measure_average": 30 } } ], "quantity_wastes": [ { "history_wastes": [ { "total_invoiced_quantity": 0.00646, "unit_measure_code": 94, "period": { "waste": "Usable", "start_date": "2020-03-01", "end_date": "2020-03-31" } }, { "total_invoiced_quantity": 0.00644, "unit_measure_code": 94, "period": { "waste": "Usable", "start_date": "2021-02-01", "end_date": "2021-02-28" } }, { "total_invoiced_quantity": 0.00569, "unit_measure_code": 94, "period": { "waste": "Usable", "start_date": "2021-01-01", "end_date": "2021-01-31" } }, { "total_invoiced_quantity": 0.00646, "unit_measure_code": 94, "period": { "waste": "NotUsable", "start_date": "2020-03-01", "end_date": "2020-03-31" } }, { "total_invoiced_quantity": 0.00644, "unit_measure_code": 94, "period": { "waste": "NotUsable", "start_date": "2021-02-01", "end_date": "2021-02-28" } }, { "total_invoiced_quantity": 0.00569, "unit_measure_code": 94, "period": { "waste": "NotUsable", "start_date": "2021-01-01", "end_date": "2021-01-31" } } ], "period_wastes": [ { "unit_measure_code": 94, "ordinary_unusable": 0.05088, "sweeping_cleaning": 0.002, "cleaning_urban": 0.00024, "useless": 8.0e-6 } ] } ], "sub_invoice_lines": [ { "id": "1100842", "item_good_services": { "bs_name": "Aguas", "description": "Cuota Trabajos Sin Iva" }, "subscriber_payments_terms": [ { "fees_to_pay": 36, "fees_paid": 34, "percent": 0.77 } ], "balances": { "debit_line_amount": 188483.12, "transactions": [ { "transaction_description": "Cuota 10", "credit_line_amount": 6317.06 } ], "adjustment_accountings": { "item_discount": 0, "item_charge": 0 } } } ] } ] } ] } ], "software_manufacturer": { "software_name": "e-Misión", "registration_name": "Nodexum S.A.S", "software_developer": "Nodexum S.A.S" }, "customer": { "name": "Consumidor Final", "email": "sincorreo@emision.co", "identification_number": 1063814789, "location_type_code": 1, "use_type_code": "01", "address": "Calle falsa 123", "municipality_code": 19807, "country_code": "CO", "language_code": "es" }, "tax_totals": [ { "percent": 0, "tax_code": "01", "tax_amount": 0, "taxable_amount": 35126.05 } ], "payment_form": [ { "payment_form_code": 1, "payment_method_code": 10 } ], "invoice_lines": [ { "code": "200003817", "accounting_cost_code": "GG-200003817", "tax_totals": [ { "percent": 0, "tax_code": "01", "tax_amount": 0, "taxable_amount": 11680.67 } ], "description": "AGUA", "price_amount": 11680.67, "base_quantity": 1, "invoiced_quantity": 1, "unit_measure_code": "MTQ", "line_extension_amount": 11680.67, "free_of_charge_indicator": false, "item_identification_type_code": 999 }, { "code": "200044533", "accounting_cost_code": "ARG4-124123", "tax_totals": [ { "percent": 0, "tax_code": "01", "tax_amount": 0, "taxable_amount": 23445.38 } ], "description": "GAS", "price_amount": 23445.38, "base_quantity": 1, "invoiced_quantity": 1, "unit_measure_code": "MMQ", "line_extension_amount": 23445.38, "free_of_charge_indicator": false, "item_identification_type_code": 999 } ], "legal_monetary_totals": { "charge_total_amount": 0, "prepaid_total_amount": 0, "allowance_total_amount": 0, "line_extension_amount": 35126.05, "tax_exclusive_amount": 35126.05, "tax_inclusive_amount": 35126.05, "payable_amount": 35126.05 } }Responses¶
Response
200
OK¶Si el documento ha superado las validaciones y fue enviado a la DIAN.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 { "status": "success", // Estado de la solicitud. "message": "Documento enviado a la DIAN", // Mensaje sobre el estado de la solicitud. "document": { // Datos generados para el documento contenido en la solicitud. "number": "SEPT900000000", // Prefijo mas consecutivo. "statusCode": 6, // Código para identificar el estado. "statusDescription": "Documento validado exitosamente", // Descripción al código de estado. "uuid": "Cufe", // Cufe generado para el documento NOTA: Este dato es usado a la hora de emitir notas crédito o débito. "zipBase64Bytes": "Xml", // Xml codificado en base64 comprimido en un archivo zip. "pdfBase64Bytes": "Pdf", // Pdf codificado en base64. "appResponseBase64Bytes": "Application response", // XML de la respuesta de la DIAN codificado en base64. "attachedDocumentBase64Bytes"; "Attached document" // XML que contiene el XML de la factura y el APP response. } }Response
422
Unprocessable Entity (WebDAV)¶Si el
body
no cumple con las validaciones, devolverá los errores en un arreglo los cuales deben ser solucionados para poder continuar con el ciclo del documento electrónico.Errores por parte de la DIAN
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 { "status": "error", // Estado de la solicitud. "message": "El documento contiene algunos errores", // Mensaje sobre el estado de la solicitud. "document": { // Datos generados para el documento contenido en la solicitud. "number": "SEPT900000000", // Prefijo mas consecutivo. "statusCode": 11, // Código para identificar el estado. "statusDescription": "Documento validado exitosamente", // Descripción al código de estado. "Errors": [ // Lista de los campos y errores que presenta el documento. "Regla: FAU04, Rechazo: Base Imponible es distinto a la suma de los valores de las bases imponibles de todas líneas de detalle.", "Regla: FAU14, Rechazo: Valor a Pagar de Factura es distinto de la Suma de Valor Bruto más tributos - Valor del Descuento Total + Valor del Cargo Total - Valor del Anticipo Total", "Regla: FAQ07, Notificación: Descuento superior al valor base", "Regla: FAD09c, Notificación: La fecha de emisión fue anterior a 5 días de la fecha actual", "Regla: FAQ09, Notificación: Valor Base para calcular el descuento o cargo superior al valor total de la factura" ] } }Errores por parte e-Misión
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 { "status": "error", // Estado de la solicitud. "message": "El documento contiene algunos errores", // Mensaje sobre el estado de la solicitud. "document": { "number": "SEPT900000000", "statusCode": 13, "statusDescription": "EL documento no supero las validaciones e-Misión", // Descripción al código de estado. "errors": [ // Lista errores que presenta el documento. "El campo customer.country id es obligatorio.", "El campo customer.type regime id es obligatorio.", ], "detailedErrors": { // Lista errores que presenta el documento en cada campo. "customer.country_id": [ // Campo que presenta el error. "El campo customer.country id es obligatorio." // Lista de errores del campo. ], "customer.type_regime_id": [ "El campo customer.type regime id es obligatorio." ] } } }