UNPKG

facturacionelectronicapy-xmlgen

Version:

API Node JS para generar el archivo XML del Documento electrónico exigido por SIFEN en base a JSON

184 lines (182 loc) 7.04 kB
import { XmlgenConfig } from './type.interface.'; declare class JSonDeMainValidateService { errors: Array<string>; constructor(); /** * Valida los datos ingresados en el data * A. Campos firmados del Documento Electrónico (A001-A099) * 1 - Validacion automática * 2 - Se realiza en el SIFEN, pero puede ser realizado en la API de integración * 3 - Se realiza en el SIFEN, pero puede ser realizado en la API de integración * 4 - Validacion automática * 5 - Se realiza en el SIFEN, la fecha/hora del servidor debe sincronizarse con el SIFEN * 6 - Falta, pero es AO * * B. Campos inherentes a la operación comercial de los Documentos Electrónicos (B001 -B099) * 7 - Falta * 8 - Validacion automática, via constante.service * * C. Campos de datos del Timbrado (C001 - C099) * 9 - Validacion automática, via constante.service * 10 - Se realiza en el SIFEN, se valida solo la primera vez * 11 - Se realiza en el SIFEN, se valida solo la primera vez * 12 - Se realiza en el SIFEN, se valida solo la primera vez * 13 - Se realiza en el SIFEN, se valida solo la primera vez * 14 - Se realiza en el SIFEN, se valida solo la primera vez * 15 - Se realiza en el SIFEN, se valida solo la primera vez * 16 - Se realiza en el SIFEN, pero puede ser realizado en la API de integración * * @param data */ validateValues(params: any, data: any, config: XmlgenConfig): void; generateCodigoControlValidate(params: any, data: any): void; private datosEmisorValidate; private generateDatosOperacionValidate; private generateDatosGeneralesValidate; private generateDatosGeneralesInherentesOperacionValidate; private generateDatosGeneralesEmisorDEValidate; private generateDatosGeneralesResponsableGeneracionDEValidate; private generateDatosGeneralesReceptorDEValidate; private generateDatosEspecificosPorTipoDEValidate; private generateDatosEspecificosPorTipoDE_FacturaElectronicaValidate; /** * Datos especificos cuando el tipo de operacion del receptor es B2G (Campo D202) * Dentro de la factura electronica * * @param params * @param data * @param options */ private generateDatosEspecificosPorTipoDE_ComprasPublicasValidate; private generateDatosEspecificosPorTipoDE_AutofacturaValidate; private generateDatosEspecificosPorTipoDE_NotaCreditoDebitoValidate; private generateDatosEspecificosPorTipoDE_RemisionElectronicaValidate; private generateDatosAutofacturaValidate; private validateAsociadoConstancia; private generateDatosCondicionOperacionDEValidate; /** * E7.1. Campos que describen la forma de pago de la operación al contado o del monto * de la entrega inicial (E605-E619) * @param params * @param data * @param options */ private generateDatosCondicionOperacionDE_ContadoValidate; /** * E7.2. Campos que describen la operación a crédito (E640-E649) * * @param params * @param data * @param options */ private generateDatosCondicionOperacionDE_CreditoValidate; generateDatosComplementariosComercialesDeUsoEspecificosValidate(params: any, data: any): void; /** * E9.2. Sector Energía Eléctrica (E791-E799) * * @param params * @param data * @param options * @param items Es el item actual del array de items de "data" que se está iterando */ private generateDatosSectorEnergiaElectricaValidate; /** * E9.3. Sector de Seguros (E800-E809) * * @param params * @param data * @param options * @param items Es el item actual del array de items de "data" que se está iterando */ private generateDatosSectorSegurosValidate; /** * E9.4. Sector de Supermercados (E810-E819 * * @param params * @param data * @param options * @param items Es el item actual del array de items de "data" que se está iterando */ private generateDatosSectorSupermercadosValidate; /** * E9.5. Grupo de datos adicionales de uso comercial (E820-E829) * * @param params * @param data * @param options * @param items Es el item actual del array de items de "data" que se está iterando */ private generateDatosDatosAdicionalesUsoComercialValidate; /** * E10. Campos que describen el transporte de las mercaderías (E900-E999) * * Aqui puede entrar si tipoDocumento = 1 (opcional) o tipoDocumento = 7 (obligatorio) * @param params * @param data * @param options */ generateDatosTransporteValidate(params: any, data: any): void; /** * E10.1. Campos que identifican el local de salida de las mercaderías (E920-E939) * * @param params * @param data * @param options * @param items Es el item actual del array de items de "data" que se está iterando */ private generateDatosSalidaValidate; /** * E10.2. Campos que identifican el local de entrega de las mercaderías (E940-E959) * * @param params * @param data * @param options * @param items Es el item actual del array de items de "data" que se está iterando */ private generateDatosEntregaValidate; /** * E10.3. Campos que identifican el vehículo de traslado de mercaderías (E960-E979) * * @param params * @param data * @param options * @param items Es el item actual del array de items de "data" que se está iterando */ private generateDatosVehiculoValidate; /** * E10.4. Campos que identifican al transportista (persona física o jurídica) (E980-E999) * * @param params * @param data * @param options * @param items Es el item actual del array de items de "data" que se está iterando */ private generateDatosTransportistaValidate; generateDatosTotalesValidate(params: any, data: any, config: XmlgenConfig): void; /** * G. Campos complementarios comerciales de uso general (G001-G049) * * @param params * @param data * @param options */ generateDatosComercialesUsoGeneralValidate(params: any, data: any): void; /** * G1. Campos generales de la carga (G050 - G099) * * @param params * @param data * @param options */ private generateDatosCargaValidate; /** * H. Campos que identifican al documento asociado (H001-H049) * * @param params * @param data * @param options */ generateDatosDocumentoAsociadoValidate(params: any, dataDocumentoAsociado: any, data: any): void; } declare const _default: JSonDeMainValidateService; export default _default;