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.
- residential_stratum_code
Type: integer
Código del estrato residencial.
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.
- 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_codees 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.
Type: string
Correo electrónico.
- merchant_registration
Type: string
Registro mercantil.
- send
type: boolean
default:
falseIndica 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 «document_type_code» es «03»).
- 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_codecontra 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: string
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:
esCó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_codees 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.
- 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_dateType: string(YYYY-MM-DD)
Fecha de vencimiento del pago.
Nota
Es obligatorio si la forma de pago es a crédito.
duration_measureType: 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 "date": "2024-10-17", 3 "send": true, 4 "time": "18:42:13", 5 "number": 56, 6 "prefix": "SPD", 7 "sync": true, 8 "resolution_number": 18760000001, 9 "currency_type_code": "COP", 10 "document_type_code": "60", 11 "operation_type_code": 601, 12 "identification_number": 901285179, 13 "due_date": "2024-08-23", 14 "tax_point_date": "2024-06-23", 15 "accounting_cost_code": "RP-03134A", 16 "spd_extensions": [ 17 { 18 "other_company": false, 19 "name": "Acueducto", 20 "agency_name": "Emtel", 21 "reason": "Proceso de facturación y recaudo EMTEL", 22 "contract": 90005148, 23 "issue_date": "2024-06", 24 "notes": [ 25 { 26 "text": "Recaudo acueducto" 27 }, 28 { 29 "text": "Páguese antes de 2024-07-01" 30 } 31 ], 32 "subscriber_parties": [ 33 { 34 "name": "Cliente 1", 35 "address": "Calle falsa 123", 36 "additional_address": "N/A", 37 "municipality_code": 19397, 38 "residential_stratum_code": 1, 39 "email": "cr@123.net" 40 } 41 ], 42 "subscriber_consumptions": [ 43 { 44 "duration_billing_cycle": 1, 45 "periodicity_code": 1, 46 "notes": [ 47 { 48 "text": "Nota 3" 49 }, 50 { 51 "text": "Nota 4" 52 } 53 ], 54 "consumption_sections": [ 55 { 56 "spd_debit_partial_consumptions": [ 57 { 58 "total_metered_quantity": 22, 59 "unit_measure_code": 94, 60 "consumption_payable_amount": 67012.1, 61 "consumption_price": { 62 "quantity": 22, 63 "unit_measure_code": 94, 64 "partial_line_extension_amount": 65289.4 65 }, 66 "item_credit_discounts": [ 67 { 68 "allowance_reason": "Subsidio", 69 "amount": 5641.35 70 }, 71 { 72 "allowance_reason": "Subsidio", 73 "amount": 61.68 74 } 75 ], 76 "item_debit_charges": [ 77 { 78 "charge_reason": "Cargo fijo", 79 "amount": 6550.69 80 }, 81 { 82 "charge_reason": "Cargo Variable Aprovechable", 83 "amount": 10258.98 84 }, 85 { 86 "charge_reason": "Consumo", 87 "amount": 61.68 88 } 89 ], 90 "unstructured_price": { 91 "price_amount": 2967.7, 92 "base_quantity": 1, 93 "unit_measure_code": 94 94 }, 95 "utility_meter": { 96 "meter_number": "DAE V-75 Vertical Water Meter, 3/4” NPT", 97 "previous_meter_reading_date": "2021-03-27", 98 "previous_meter_quantity": 1.36, 99 "latest_meter_reading_date": "2021-04-27", 100 "latest_meter_quantity": 1.382, 101 "meter_reading_method": "Directa al contador", 102 "unit_measure_code": "MTQ", 103 "duration_measure": 31 104 } 105 } 106 ], 107 "consumption_histories": [ 108 { 109 "previous_payment": "17951.16", 110 "consum_months": [ 111 { 112 "total_invoiced_quantity": 24, 113 "unit_measure_code": 94, 114 "period": { 115 "start_date": "2020-11-01", 116 "end_date": "2020-11-30", 117 "duration_measure": 31, 118 "period_payable_amount": 17951.16 119 } 120 }, 121 { 122 "total_invoiced_quantity": 24, 123 "unit_measure_code": 94, 124 "period": { 125 "start_date": "2020-12-01", 126 "end_date": "2020-12-31", 127 "duration_measure": 31, 128 "period_payable_amount": 17870.84 129 } 130 }, 131 { 132 "total_invoiced_quantity": 24, 133 "unit_measure_code": 94, 134 "period": { 135 "start_date": "2021-01-01", 136 "end_date": "2021-01-31", 137 "duration_measure": 31, 138 "period_payable_amount": 16888.14 139 } 140 }, 141 { 142 "total_invoiced_quantity": 25, 143 "unit_measure_code": 94, 144 "period": { 145 "start_date": "2021-02-01", 146 "end_date": "2021-02-28", 147 "duration_measure": 31, 148 "period_payable_amount": 17273.79 149 } 150 }, 151 { 152 "total_invoiced_quantity": 25, 153 "unit_measure_code": 94, 154 "period": { 155 "start_date": "2021-03-01", 156 "end_date": "2021-03-31", 157 "duration_measure": 31, 158 "period_payable_amount": 16586.21 159 } 160 }, 161 { 162 "total_invoiced_quantity": 26, 163 "unit_measure_code": 94, 164 "period": { 165 "start_date": "2021-04-01", 166 "end_date": "2021-04-30", 167 "duration_measure": 31, 168 "period_payable_amount": 16449.46 169 } 170 } 171 ], 172 "consum_averages": { 173 "consumption_average": 25, 174 "unit_measure_code": 94, 175 "duration_measure_average": 30 176 } 177 } 178 ], 179 "quantity_wastes": [ 180 { 181 "history_wastes": [ 182 { 183 "total_invoiced_quantity": 0.00646, 184 "unit_measure_code": 94, 185 "period": { 186 "waste": "Usable", 187 "start_date": "2020-03-01", 188 "end_date": "2020-03-31" 189 } 190 }, 191 { 192 "total_invoiced_quantity": 0.00644, 193 "unit_measure_code": 94, 194 "period": { 195 "waste": "Usable", 196 "start_date": "2021-02-01", 197 "end_date": "2021-02-28" 198 } 199 }, 200 { 201 "total_invoiced_quantity": 0.00569, 202 "unit_measure_code": 94, 203 "period": { 204 "waste": "Usable", 205 "start_date": "2021-01-01", 206 "end_date": "2021-01-31" 207 } 208 }, 209 { 210 "total_invoiced_quantity": 0.00646, 211 "unit_measure_code": 94, 212 "period": { 213 "waste": "NotUsable", 214 "start_date": "2020-03-01", 215 "end_date": "2020-03-31" 216 } 217 }, 218 { 219 "total_invoiced_quantity": 0.00644, 220 "unit_measure_code": 94, 221 "period": { 222 "waste": "NotUsable", 223 "start_date": "2021-02-01", 224 "end_date": "2021-02-28" 225 } 226 }, 227 { 228 "total_invoiced_quantity": 0.00569, 229 "unit_measure_code": 94, 230 "period": { 231 "waste": "NotUsable", 232 "start_date": "2021-01-01", 233 "end_date": "2021-01-31" 234 } 235 } 236 ], 237 "period_wastes": [ 238 { 239 "unit_measure_code": 94, 240 "ordinary_unusable": 0.05088, 241 "sweeping_cleaning": 0.002, 242 "cleaning_urban": 0.00024, 243 "useless": 8.0e-6 244 } 245 ] 246 } 247 ], 248 "sub_invoice_lines": [ 249 { 250 "id": "1100842", 251 "item_good_services": { 252 "bs_name": "Aguas", 253 "description": "Cuota Trabajos Sin Iva" 254 }, 255 "subscriber_payments_terms": [ 256 { 257 "fees_to_pay": 36, 258 "fees_paid": 34, 259 "percent": 0.77 260 } 261 ], 262 "balances": { 263 "debit_line_amount": 188483.12, 264 "transactions": [ 265 { 266 "transaction_description": "Cuota 10", 267 "credit_line_amount": 6317.06 268 } 269 ], 270 "adjustment_accountings": { 271 "item_discount": 0, 272 "item_charge": 0 273 } 274 } 275 } 276 ] 277 } 278 ] 279 } 280 ] 281 } 282 ], 283 "software_manufacturer": { 284 "software_name": "e-Misión", 285 "registration_name": "Nodexum S.A.S", 286 "software_developer": "Nodexum S.A.S" 287 }, 288 "customer": { 289 "name": "Consumidor Final", 290 "email": "sincorreo@emision.co", 291 "identification_number": 1063814789, 292 "location_type_code": 1, 293 "use_type_code": "01", 294 "address": "Calle falsa 123", 295 "municipality_code": 19807, 296 "country_code": "CO", 297 "language_code": "es" 298 }, 299 "tax_totals": [ 300 { 301 "percent": 0, 302 "tax_code": "01", 303 "tax_amount": 0, 304 "taxable_amount": 35126.05 305 } 306 ], 307 "payment_form": [ 308 { 309 "payment_form_code": 1, 310 "payment_method_code": 10 311 } 312 ], 313 "invoice_lines": [ 314 { 315 "code": "200003817", 316 "accounting_cost_code": "GG-200003817", 317 "tax_totals": [ 318 { 319 "percent": 0, 320 "tax_code": "01", 321 "tax_amount": 0, 322 "taxable_amount": 11680.67 323 } 324 ], 325 "description": "AGUA", 326 "price_amount": 11680.67, 327 "base_quantity": 1, 328 "invoiced_quantity": 1, 329 "unit_measure_code": "MTQ", 330 "line_extension_amount": 11680.67, 331 "free_of_charge_indicator": false, 332 "item_identification_type_code": 999 333 }, 334 { 335 "code": "200044533", 336 "accounting_cost_code": "ARG4-124123", 337 "tax_totals": [ 338 { 339 "percent": 0, 340 "tax_code": "01", 341 "tax_amount": 0, 342 "taxable_amount": 23445.38 343 } 344 ], 345 "description": "GAS", 346 "price_amount": 23445.38, 347 "base_quantity": 1, 348 "invoiced_quantity": 1, 349 "unit_measure_code": "MMQ", 350 "line_extension_amount": 23445.38, 351 "free_of_charge_indicator": false, 352 "item_identification_type_code": 999 353 } 354 ], 355 "legal_monetary_totals": { 356 "charge_total_amount": 0, 357 "prepaid_total_amount": 0, 358 "allowance_total_amount": 0, 359 "line_extension_amount": 35126.05, 360 "tax_exclusive_amount": 35126.05, 361 "tax_inclusive_amount": 35126.05, 362 "payable_amount": 35126.05 363 } 364}
Responses¶
Response 200 OK¶
Si el documento ha superado las validaciones y fue enviado a la DIAN.
1{ 2 "status": "success", // Estado de la solicitud. 3 "message": "Documento enviado a la DIAN", // Mensaje sobre el estado de la solicitud. 4 "document": { // Datos generados para el documento contenido en la solicitud. 5 "number": "SEPT900000000", // Prefijo mas consecutivo. 6 "statusCode": 6, // Código para identificar el estado. 7 "statusDescription": "Documento validado exitosamente", // Descripción al código de estado. 8 "uuid": "Cufe", // Cufe generado para el documento NOTA: Este dato es usado a la hora de emitir notas crédito o débito. 9 "zipBase64Bytes": "Xml", // Xml codificado en base64 comprimido en un archivo zip. 10 "pdfBase64Bytes": "Pdf", // Pdf codificado en base64. 11 "appResponseBase64Bytes": "Application response", // XML de la respuesta de la DIAN codificado en base64. 12 "attachedDocumentBase64Bytes"; "Attached document" // XML que contiene el XML de la factura y el APP response. 13 } 14}
Response 422 Unprocessable Entity (WebDAV)¶
Si el
bodyno 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 "status": "error", // Estado de la solicitud. 3 "message": "El documento contiene algunos errores", // Mensaje sobre el estado de la solicitud. 4 "document": { // Datos generados para el documento contenido en la solicitud. 5 "number": "SEPT900000000", // Prefijo mas consecutivo. 6 "statusCode": 11, // Código para identificar el estado. 7 "statusDescription": "Documento validado exitosamente", // Descripción al código de estado. 8 "Errors": [ // Lista de los campos y errores que presenta el documento. 9 "Regla: FAU04, Rechazo: Base Imponible es distinto a la suma de los valores de las bases imponibles de todas líneas de detalle.", 10 "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", 11 "Regla: FAQ07, Notificación: Descuento superior al valor base", 12 "Regla: FAD09c, Notificación: La fecha de emisión fue anterior a 5 días de la fecha actual", 13 "Regla: FAQ09, Notificación: Valor Base para calcular el descuento o cargo superior al valor total de la factura" 14 ] 15 } 16}Errores por parte e-Misión
1{ 2 "status": "error", // Estado de la solicitud. 3 "message": "El documento contiene algunos errores", // Mensaje sobre el estado de la solicitud. 4 "document": { 5 "number": "SEPT900000000", 6 "statusCode": 13, 7 "statusDescription": "EL documento no supero las validaciones e-Misión", // Descripción al código de estado. 8 "errors": [ // Lista errores que presenta el documento. 9 "El campo customer.country id es obligatorio.", 10 "El campo customer.type regime id es obligatorio.", 11 ], 12 "detailedErrors": { // Lista errores que presenta el documento en cada campo. 13 "customer.country_id": [ // Campo que presenta el error. 14 "El campo customer.country id es obligatorio." // Lista de errores del campo. 15 ], 16 "customer.type_regime_id": [ 17 "El campo customer.type regime id es obligatorio." 18 ] 19 } 20 } 21}