125 lines
5.0 KiB
Go
125 lines
5.0 KiB
Go
package soap
|
|
|
|
import (
|
|
"encoding/xml"
|
|
)
|
|
|
|
// SOAP Types for Factura
|
|
type RecepcionFacturaResponse struct {
|
|
XMLName xml.Name `xml:"recepcionFacturaResponse"`
|
|
RespuestaServicioFacturacion RespuestaServicioFacturacion `xml:"RespuestaServicioFacturacion"`
|
|
}
|
|
|
|
type RespuestaServicioFacturacion struct {
|
|
XMLName xml.Name `xml:"RespuestaServicioFacturacion,omitempty"`
|
|
CodigoDescripcion string `xml:"codigoDescripcion,omitempty"`
|
|
CodigoEstado string `xml:"codigoEstado,omitempty"`
|
|
CodigoRecepcion string `xml:"codigoRecepcion,omitempty"`
|
|
MensajesList []Mensaje `xml:"mensajesList,omitempty" json:"mensajes_list,omitempty"`
|
|
Transaccion bool `xml:"transaccion,omitempty"`
|
|
}
|
|
|
|
type Mensaje struct {
|
|
Codigo string `xml:"codigo,omitempty" json:"codigo,omitempty"`
|
|
Descripcion string `xml:"descripcion,omitempty" json:"descripcion,omitempty"`
|
|
Advertencia string `xml:"advertencia,omitempty" json:"advertencia,omitempty"`
|
|
NumeroArchivo string `xml:"numeroArchivo,omitempty" json:"numeroArchivo,omitempty"`
|
|
NumeroDetalle string `xml:"numeroDetalle,omitempty" json:"numeroDetalle,omitempty"`
|
|
}
|
|
|
|
type SolicitudServicioRecepcionFactura struct {
|
|
CodigoAmbiente int `xml:"codigoAmbiente"`
|
|
CodigoDocumentoSector int `xml:"codigoDocumentoSector"`
|
|
CodigoEmision int `xml:"codigoEmision"`
|
|
CodigoModalidad int `xml:"codigoModalidad"`
|
|
CodigoPuntoVenta int `xml:"codigoPuntoVenta"`
|
|
CodigoSistema string `xml:"codigoSistema"`
|
|
CodigoSucursal int `xml:"codigoSucursal"`
|
|
CUFD string `xml:"cufd"`
|
|
CUIS string `xml:"cuis"`
|
|
NIT string `xml:"nit"`
|
|
TipoFacturaDocumento int `xml:"tipoFacturaDocumento"`
|
|
Archivo string `xml:"archivo"`
|
|
FechaEnvio string `xml:"fechaEnvio"`
|
|
HashArchivo string `xml:"hashArchivo"`
|
|
}
|
|
|
|
type RecepcionFacturaEnvelope struct {
|
|
XMLName xml.Name `xml:"soapenv:Envelope"`
|
|
SoapEnv string `xml:"xmlns:soapenv,attr"`
|
|
Siat string `xml:"xmlns:siat,attr"`
|
|
Header struct{} `xml:"soapenv:Header"`
|
|
Body struct {
|
|
Recepcion struct {
|
|
Solicitud SolicitudServicioRecepcionFactura `xml:"SolicitudServicioRecepcionFactura"`
|
|
} `xml:"siat:recepcionFactura"`
|
|
} `xml:"soapenv:Body"`
|
|
}
|
|
|
|
// SOAP Types for Estado Factura
|
|
type VerificacionEstadoFacturaResponse struct {
|
|
XMLName xml.Name `xml:"verificacionEstadoFacturaResponse"`
|
|
RespuestaServicioFacturacion RespuestaServicioFacturacion `xml:"RespuestaServicioFacturacion"`
|
|
}
|
|
|
|
type SolicitudServicioVerificacionEstadoFactura struct {
|
|
CodigoAmbiente int `xml:"codigoAmbiente"`
|
|
CodigoDocumentoSector int `xml:"codigoDocumentoSector"`
|
|
CodigoEmision int `xml:"codigoEmision"`
|
|
CodigoModalidad int `xml:"codigoModalidad"`
|
|
CodigoPuntoVenta int `xml:"codigoPuntoVenta"`
|
|
CodigoSistema string `xml:"codigoSistema"`
|
|
CodigoSucursal int `xml:"codigoSucursal"`
|
|
CUFD string `xml:"cufd"`
|
|
CUIS string `xml:"cuis"`
|
|
NIT string `xml:"nit"`
|
|
TipoFacturaDocumento int `xml:"tipoFacturaDocumento"`
|
|
CUF string `xml:"cuf"`
|
|
}
|
|
|
|
type VerificacionEstadoFacturaEnvelope struct {
|
|
XMLName xml.Name `xml:"soapenv:Envelope"`
|
|
SoapEnv string `xml:"xmlns:soapenv,attr"`
|
|
Siat string `xml:"xmlns:siat,attr"`
|
|
Header struct{} `xml:"soapenv:Header"`
|
|
Body struct {
|
|
Verificacion struct {
|
|
Solicitud SolicitudServicioVerificacionEstadoFactura `xml:"SolicitudServicioVerificacionEstadoFactura"`
|
|
} `xml:"siat:verificacionEstadoFactura"`
|
|
} `xml:"soapenv:Body"`
|
|
}
|
|
|
|
// SOAP Types for Anulacion Factura
|
|
type AnulacionFacturaResponse struct {
|
|
XMLName xml.Name `xml:"anulacionFacturaResponse"`
|
|
RespuestaServicioFacturacion RespuestaServicioFacturacion `xml:"RespuestaServicioFacturacion"`
|
|
}
|
|
|
|
type SolicitudServicioAnulacionFactura struct {
|
|
CodigoAmbiente int `xml:"codigoAmbiente"`
|
|
CodigoDocumentoSector int `xml:"codigoDocumentoSector"`
|
|
CodigoEmision int `xml:"codigoEmision"`
|
|
CodigoModalidad int `xml:"codigoModalidad"`
|
|
CodigoPuntoVenta int `xml:"codigoPuntoVenta"`
|
|
CodigoSistema string `xml:"codigoSistema"`
|
|
CodigoSucursal int `xml:"codigoSucursal"`
|
|
CUFD string `xml:"cufd"`
|
|
CUIS string `xml:"cuis"`
|
|
NIT string `xml:"nit"`
|
|
TipoFacturaDocumento int `xml:"tipoFacturaDocumento"`
|
|
CodigoMotivo int `xml:"codigoMotivo"`
|
|
CUF string `xml:"cuf"`
|
|
}
|
|
|
|
type AnulacionFacturaEnvelope struct {
|
|
XMLName xml.Name `xml:"soapenv:Envelope"`
|
|
SoapEnv string `xml:"xmlns:soapenv,attr"`
|
|
Siat string `xml:"xmlns:siat,attr"`
|
|
Header struct{} `xml:"soapenv:Header"`
|
|
Body struct {
|
|
Anulacion struct {
|
|
Solicitud SolicitudServicioAnulacionFactura `xml:"SolicitudServicioAnulacionFactura"`
|
|
} `xml:"siat:anulacionFactura"`
|
|
} `xml:"soapenv:Body"`
|
|
}
|