UNPKG

envio-comprobantes-sri

Version:

Envia comprobantes electronicos al SRI (Ecuador). Recibe un objeto JSON. Lo convierte a XML, lo firma, lo envía al servicio web del SRI y devuelve la respuesta.

79 lines (78 loc) 2.35 kB
import { TablaAmbiente, TablaCodigoDocumento, TablaFormasPago, TablaImpuesto, tablaPorcentajeICE, TablaPorcentajeIVA } from "./Utils/TablasSRI"; export declare class InfoComprobanteBase { fechaEmision: string; dirEstablecimiento?: string; contribuyenteEspecial?: number; obligadoContabilidad: "SI" | "NO"; } export declare class InfoTributaria { ambiente: TablaAmbiente; tipoEmision: 1; razonSocial: string; nombreComercial: string; ruc: string; claveAcceso: string; codDoc: TablaCodigoDocumento; estab: string; ptoEmi: string; secuencial: string; dirMatriz: string | null; agenteRetencion?: string; contribuyenteRimpe?: "CONTRIBUYENTE RÉGIMEN RIMPE" | "CONTRIBUYENTE NEGOCIO POPULAR - RÉGIMEN RIMPE"; } export declare class Impuesto { codigo: TablaImpuesto; codigoPorcentaje: TablaPorcentajeIVA | tablaPorcentajeICE; baseImponible: number; valor: number; } declare class ImpuestoDetalleComprobante implements Impuesto { codigo: TablaImpuesto; codigoPorcentaje: TablaPorcentajeIVA | tablaPorcentajeICE; tarifa: number; baseImponible: number; valor: number; } export declare class ImpuestosDetalleComprobante { impuesto: ImpuestoDetalleComprobante[]; } declare class DetalleAdicional { _nombre: string; _valor: string; } export declare class DetallesAdicionales { detAdicional: DetalleAdicional[]; } declare class CampoAdicional { _nombre: string; __text: string; } declare class InfoAdicional { campoAdicional: CampoAdicional[]; } export declare class Pago { formaPago: TablaFormasPago; total: number; plazo?: number; unidadTiempo?: string; } export declare class DetalleComprobanteBase { codigoPrincipal: string; codigoAuxiliar?: string; descripcion: string; cantidad: number; precioUnitario: number; descuento?: number; precioTotalSinImpuesto?: number; detallesAdicionales?: DetallesAdicionales; impuestos: ImpuestosDetalleComprobante; } export declare class DetallesComprobanteBase { detalle: DetalleComprobanteBase[]; } export default class ComprobanteBase { infoTributaria: InfoTributaria; detalles: DetallesComprobanteBase; infoAdicional?: InfoAdicional; } export {};