factus-js iconfactus-js

Tablas de referencia (Constantes)

Constantes tipadas del SDK y enlaces oficiales para datos de referencia externos en Factus API v2.

Esta guía consolida las tablas oficiales de Factus y su equivalente en constantes de factus-js.

Fuente oficial: Tablas de referencia

Modo de uso

Cada tabla de referencia se expone desde la raíz del paquete y sigue el siguiente patrón:

  • *Code — mapa clave-valor para usar directamente en los campos de la API.
  • *Info — Siempre incluye description y en algunos casos, como para documentos de identidad, también incluye abbreviation.

Ejemplo

import { IdentityDocumentCode, IdentityDocumentCodeInfo } from "factus-js";

// Usar un código en un payload de la API
const docType = IdentityDocumentCode.CitizenshipCard; // "13"

// Descripción y abreviatura del código
const docInfo = IdentityDocumentCodeInfo[docType];
console.log(docInfo.description); // "Cédula de ciudadanía"
console.log(docInfo.abbreviation); // "CC"

Estas constantes están declaradas explícitamente y no realizan llamadas HTTP.

Países, municipios, unidades de medida y monedas

Debido a su tamaño, estos datos no se incluyen como constantes dentro del SDK. Sin embargo, puedes consultarlos y descargarlos directamente desde la documentación oficial.

Tipo de documento de factura (BillDocumentCode)

import { BillDocumentCode, BillDocumentCodeInfo } from "factus-js";

const code = BillDocumentCode.ElectronicSalesInvoice;

console.log(code); // "01"
console.log(BillDocumentCodeInfo[code].description); // "Factura electronica de venta."
ClaveValorDescripción
ElectronicSalesInvoice"01"Factura electrónica de venta.
ElectronicTransmissionType03"03"Instrumento electrónico de transmisión - tipo 03.

Tipo de operación (OperationTypeCode)

import { OperationTypeCode, OperationTypeCodeInfo } from "factus-js";

const code = OperationTypeCode.Standard;

console.log(code); // "10"
console.log(OperationTypeCodeInfo[code].description); // "Estándar."
ClaveValorDescripción
Standard"10"Estándar.
Mandates"11"Mandatos.
Transport"12"Transporte.
HealthCufe"SS-CUFE"Sector salud - CUFE.
HealthReport"SS-Reporte"Sector salud - Reporte.
HealthNoContribution"SS-SinAporte"Sector salud - Sin aporte.
HealthCollection"SS-Recaudo"Sector salud - Recaudo de cuotas moderadoras o copagos.

Tipo de operación en nota crédito (CreditNoteOperationCode)

import {
  CreditNoteOperationCode,
  CreditNoteOperationCodeInfo,
} from "factus-js";

const code = CreditNoteOperationCode.WithReference;

console.log(code); // "20"
console.log(CreditNoteOperationCodeInfo[code].description); // "Nota Crédito que referencia una factura electronica."
ClaveValorDescripción
WithReference"20"Nota crédito que referencia una factura electrónica.
WithoutReference"22"Nota crédito sin referencia a una factura electrónica.

Concepto de corrección de nota crédito (CreditNoteCorrectionCode)

import {
  CreditNoteCorrectionCode,
  CreditNoteCorrectionCodeInfo,
} from "factus-js";

const code = CreditNoteCorrectionCode.PriceAdjustment;

console.log(code); // "4"
console.log(CreditNoteCorrectionCodeInfo[code].description); // "Ajuste de precio."
ClaveValorDescripción
PartialReturn"1"Devolución parcial de los bienes y/o no aceptación parcial del servicio.
ElectronicInvoiceCancellation"2"Anulación de factura electrónica.
PartialOrTotalDiscount"3"Rebaja o descuento parcial o total.
PriceAdjustment"4"Ajuste de precio.
EarlyPaymentDiscount"5"Descuento comercial por pronto pago.
VolumeDiscount"6"Descuento comercial por volumen de ventas.

Estándar de producto (ProductStandardCode)

import { ProductStandardCode, ProductStandardCodeInfo } from "factus-js";

const code = ProductStandardCode.TaxpayerAdoption;

console.log(code); // "999"
console.log(ProductStandardCodeInfo[code].description); // "Estándar de adopción del contribuyente"
ClaveValorDescripción
TaxpayerAdoption"999"Estándar de adopción del contribuyente
UNSPSC"001"UNSPSC
TariffHeading"020"Partida arancelaria
GTIN"010"GTIN

Concepto de reclamo (ClaimConceptCode)

import { ClaimConceptCode, ClaimConceptCodeInfo } from "factus-js";

const code = ClaimConceptCode.DocumentInconsistencies;

console.log(code); // "01"
console.log(ClaimConceptCodeInfo[code].description); // "Documento con inconsistencias"
ClaveValorDescripción
DocumentInconsistencies"01"Documento con inconsistencias
GoodsNotDeliveredTotal"02"Mercancía no entregada totalmente
GoodsNotDeliveredPartial"03"Mercancía no entregada parcialmente
ServiceNotProvided"04"Servicio no prestado

Código de evento (EventCode)

import { EventCode, EventCodeInfo } from "factus-js";

const code = EventCode.ExpressAcceptance;

console.log(code); // "033"
console.log(EventCodeInfo[code].description); // "Aceptación expresa"
ClaveValorDescripción
ReceiptAcknowledgement"030"Acuse de recibo de Factura Electronica de Venta
BillClaim"031"Reclamo de la Factura Electronica de Venta
GoodsOrServiceReceipt"032"Recibo del bien y/o prestación del servicio
ExpressAcceptance"033"Aceptación expresa
TacitAcceptance"034"Aceptación tacita

Tipo de documento de identidad (IdentityDocumentCode)

import { IdentityDocumentCode, IdentityDocumentCodeInfo } from "factus-js";

const code = IdentityDocumentCode.CitizenshipCard;

console.log(code); // "13"
console.log(IdentityDocumentCodeInfo[code].abbreviation); // "CC"
console.log(IdentityDocumentCodeInfo[code].description); // "Cédula de ciudadanía"
ClaveValorAbreviaturaDescripción
CivilRegistration"11"RCRegistro civil
IdentityCard"12"TITarjeta de identidad
CitizenshipCard"13"CCCédula de ciudadanía
ForeignerIdentityCard"21"TETarjeta de extranjería
ForeignerId"22"CECédula de extranjería
NIT"31"NITNIT
Passport"41"PAPasaporte
ForeignIdentificationDocument"42"DEDocumento de identificación extranjero
PEP"47"PEPPEP
PPT"48"PPTPermiso de Protección Temporal
ForeignNIT"50"NENIT otro país
NUIP"91"NUIPNUIP

Tipo de identidad para documento soporte (SupportDocumentIdentityDocumentCode)

import {
  SupportDocumentIdentityDocumentCode,
  SupportDocumentIdentityDocumentCodeInfo,
} from "factus-js";

const code = SupportDocumentIdentityDocumentCode.NIT;

console.log(code); // "31"
console.log(SupportDocumentIdentityDocumentCodeInfo[code].abbreviation); // "NIT"
console.log(SupportDocumentIdentityDocumentCodeInfo[code].description); // "NIT"
ClaveValorAbreviaturaDescripción
ForeignerIdentityCard"21"TETarjeta de extranjería
ForeignerId"22"CECédula de extranjería
NIT"31"NITNIT
Passport"41"PAPasaporte
ForeignIdentificationDocument"42"DEDocumento de identificación extranjero
PEP"47"PEPPEP
ForeignNIT"50"NENIT otro país

Tributo del cliente (CustomerTributeCode)

import { CustomerTributeCode, CustomerTributeCodeInfo } from "factus-js";

const code = CustomerTributeCode.IVA;

console.log(code); // "01"
console.log(CustomerTributeCodeInfo[code].description); // "IVA"
ClaveValorDescripción
IVA"01"IVA
NotApplicable"ZZ"No aplica

Tipo de organización (OrganizationTypeCode)

import { OrganizationTypeCode, OrganizationTypeCodeInfo } from "factus-js";

const code = OrganizationTypeCode.NaturalPerson;

console.log(code); // "2"
console.log(OrganizationTypeCodeInfo[code].description); // "Persona Natural"
ClaveValorDescripción
LegalEntity"1"Persona Jurídica
NaturalPerson"2"Persona Natural

Método de pago (PaymentMethodCode)

import { PaymentMethodCode, PaymentMethodCodeInfo } from "factus-js";

const code = PaymentMethodCode.Transfer;

console.log(code); // "47"
console.log(PaymentMethodCodeInfo[code].description); // "Transferencia"
ClaveValorDescripción
Cash"10"Efectivo
BankDeposit"42"Consignación
Check"20"Cheque
Transfer"47"Transferencia
Bonds"71"Bonos
Vouchers"72"Vales
Undefined"1"Medio de pago no definido
DebitCard"49"Tarjeta Débito
CreditCard"48"Tarjeta Crédito
Other"ZZZ"Otro

Forma de pago (PaymentFormCode)

import { PaymentFormCode, PaymentFormCodeInfo } from "factus-js";

const code = PaymentFormCode.CreditPayment;

console.log(code); // "2"
console.log(PaymentFormCodeInfo[code].description); // "Pago a crédito"
ClaveValorDescripción
CashPayment"1"Pago de contado
CreditPayment"2"Pago a crédito

Tipo de documento en rangos de numeración (NumberingRangeDocumentTypeCode)

import {
  NumberingRangeDocumentTypeCode,
  NumberingRangeDocumentTypeCodeInfo,
} from "factus-js";

const code = NumberingRangeDocumentTypeCode.SalesInvoice;

console.log(code); // "21"
console.log(NumberingRangeDocumentTypeCodeInfo[code].description); // "Factura de Venta"
ClaveValorDescripción
SalesInvoice"21"Factura de Venta
CreditNote"22"Nota Crédito
DebitNote"23"Nota Débito
SupportDocument"24"Documento Soporte
SupportDocumentAdjustmentNote"25"Nota de Ajuste Documento Soporte
Payroll"26"Nomina
PayrollAdjustmentNote"27"Nota de Ajuste Nomina
PayrollDeletionNote"28"Nota de eliminación de nomina
PaperOrStubInvoice"30"Factura de talonario y de papel

Concepto de corrección de nota de ajuste (AdjustmentNoteReasonCode)

import {
  AdjustmentNoteReasonCode,
  AdjustmentNoteReasonCodeInfo,
} from "factus-js";

const code = AdjustmentNoteReasonCode.PriceAdjustment;

console.log(code); // "4"
console.log(AdjustmentNoteReasonCodeInfo[code].description); // "Ajuste de precio"
ClaveValorDescripción
PartialReturn"1"Devolución parcial de los bienes y/o no aceptación parcial del servicio
SupportDocumentCancellation"2"Anulación del documento soporte en adquisiciones efectuadas a sujetos no obligados a expedir factura de venta o documento equivalente
PartialOrTotalDiscount"3"Rebaja o descuento parcial o total
PriceAdjustment"4"Ajuste de precio
Other"5"Otros

Tipo de cargo o descuento (ChargeDiscountCode)

import { ChargeDiscountCode, ChargeDiscountCodeInfo } from "factus-js";

const code = ChargeDiscountCode.ConditionalSurcharge;

console.log(code); // "03"
console.log(ChargeDiscountCodeInfo[code].description); // "Recargo condicionado"
ClaveValorDescripción
UnconditionalDiscount"00"Descuento no condicionado
ConditionalDiscount"01"Descuento condicionado
UnconditionalSurcharge"02"Recargo no condicionado
ConditionalSurcharge"03"Recargo condicionado

Responsabilidad fiscal (FiscalResponsibilityCode)

import {
  FiscalResponsibilityCode,
  FiscalResponsibilityCodeInfo,
} from "factus-js";

const code = FiscalResponsibilityCode.NotResponsible;

console.log(code); // "R-99-PN"
console.log(FiscalResponsibilityCodeInfo[code].description); // "No responsable"
ClaveValorDescripción
LargeTaxpayer"O-13"Gran contribuyente
SelfWithholdingAgent"0-15"Autorretenedor
VATWithholdingAgent"0-23"Agente de retención de IVA
SimpleTaxRegime"0-47"Regimen simple de tributación
NotResponsible"R-99-PN"No responsable

En esta página