meta data de esta página
  •  

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anterior Revisión previa
Próxima revisión
Revisión previa
enviarfactura [2025/06/28 01:54]
217.113.194.94 se ha restaurado la vieja versión (2025/01/05 09:28)
enviarfactura [2025/06/28 01:57] (actual)
154.54.249.202 se ha restaurado la vieja versión (2025/02/19 13:36)
Línea 1: Línea 1:
 ====== Método EnviarFactura() ====== ====== Método EnviarFactura() ======
 +
 +[[manual_de_integracion_obj|{{ :60577.png?30x30}}]]
  
 El request del método es el siguiente: El request del método es el siguiente:
Línea 12: Línea 14:
 ---- ----
  
-== XML EJEMPLO ==+== OBJETO EJEMPLO == 
 + 
 +(Solo rellenar los nodos que consideren necesarios y que apliquen para su modelo de Factura)
  
 <code xml> <code xml>
Línea 29: Línea 33:
             <!--Optional:-->             <!--Optional:-->
             <wsec:Documento>             <wsec:Documento>
-               <!--Optional:--> 
-               <ecu:CPCliente>?</ecu:CPCliente> 
                <!--Optional:-->                <!--Optional:-->
                <ecu:CampoAdicional>                <ecu:CampoAdicional>
Línea 40: Línea 42:
                      <ecu2:Valor>?</ecu2:Valor>                      <ecu2:Valor>?</ecu2:Valor>
                   </ecu1:infoAdicional>                   </ecu1:infoAdicional>
 +                  <!--Optional:-->
                </ecu:CampoAdicional>                </ecu:CampoAdicional>
                <!--Optional:-->                <!--Optional:-->
Línea 376: Línea 379:
  
 ---- ----
 +=== Proceso para consumo EnviarFactura ===
 +
 +  * Se inicializa un objeto ServiceClient o Servicio
 +  * Se inicializa un objeto PeticionFactura donde se ingresan el RUC, el usuario de Integración ,clave de Integración y Documento
 +  * Se hace consumo del método EnviarFactura contenido en el objeto serviceClient y se coloca como parámetro la petición anterior, la respuesta estará contenida en un objeto llamado RepuestaPeticion, la respuesta tendrá los parámetros Código, Mensaje y Archivo // //
 +
 +<code csharp Codigo Ejemplo .NET>
 +         try
 +            {
 +               ServiceClient servicio = new ServiceClient();                       
 +                PeticionFactura pet = new PeticionFactura();             
 +                Factura fact = new Factura(); 
 +
 +                            
 +                //******************************INFOTRIBUTARIA*******************************************                                                 
 +                InfoTributaria infotrib = new InfoTributaria();
 +                fact.InfoTributaria = InformacionTrib();
 +                pet.Documento = fact;               
 +                fact.Version = textBox20.Text;
 +                fact.CorreoNotificar = textBox76.Text;
 +                fact.Notificar = "SI";
 +                fact.DirCliente = "Direccion del cliente";
 +
 +                //**********************************INFOFACTURA*********************************************
 +                InfoFactura infoFactura = new InfoFactura();
 +                fact.InfoFactura = infoFactura;
 +                infoFactura.FechaEmision = textBox1.Text;
 +                infoFactura.DirEstablecimiento = textBox2.Text;
 +                infoFactura.ContribuyenteEspecial = textBox3.Text;
 +                infoFactura.ObligadoContabilidad = textBox4.Text;
 +                infoFactura.TipoIdentificacionComprador = textBox5.Text;
 +                infoFactura.RazonSocialComprador = textBox6.Text;
 +                infoFactura.IdentificacionComprador = textBox7.Text;
 +                infoFactura.DireccionComprador = textBox8.Text;
 +                infoFactura.TotalSinImpuestos = textBox9.Text;
 +                infoFactura.ImporteTotal = textBox10.Text;             
 +                infoFactura.TotalImpuestoReembolso = textBox34.Text;
 +                infoFactura.TotalConImpuestos = new List<TotalConImpuesto>();
 +                infoFactura.TotalConImpuestos.Add(TotImp());
 +                infoFactura.TotalDescuento = "0.00";
 +                infoFactura.Moneda = "DOLAR";
 +                infoFactura.TotalSubsidio = "0.00";
 +                
 +                
 +                 //*****************************DETALLES**********************************************
 +
 +                fact.Detalles = new List<DetalleFactura>();
 +                DetalleFactura det = new DetalleFactura()
 +                {
 +
 +                CodigoPrincipal = textBox67.Text,
 +                CodigoAuxiliar = textBox68.Text,
 +                Descripcion = textBox69.Text,
 +                Cantidad = textBox70.Text,
 +                PrecioUnitario = textBox71.Text,
 +                UnidadMedida = textBox72.Text,
 +                Descuento = textBox73.Text,
 +                PrecioSinSubsidio = textBox74.Text,
 +                PrecioTotalSinImpuesto = textBox75.Text
 +
 +
 +                };
 +
 +                det.Impuestos = new List<ImpuestoDetalle>();           
 +                det.Impuestos.Add(ImpuestDet());
 +                
 +                det.DetAdicional = new List<DetAdicional>();
 +                DetAdicional detAd = new DetAdicional
 +                {
 +                    Nombre = "Nombre1",
 +                    Valor = "12345678"
 +                };
 +                det.DetAdicional.Add(detAd);
 +
 +                fact.Detalles.Add(det);
 +
 +
 +
 +
 +
 +
 +                //***********************************PAGOS*********************************
 +                Pago pago = new Pago
 +                {
 +                    FormaPago = textBox63.Text,
 +                    Total = textBox64.Text,
 +                    Plazo = textBox65.Text,
 +                    UnidadTiempo = textBox66.Text
 +
 +                };
 +
 +                fact.InfoFactura.Pagos = new List<Pago>();
 +                fact.InfoFactura.Pagos.Add(pago);
 +                fact.InfoFactura.TotalConImpuestos = new List<TotalConImpuesto>();
 +                fact.InfoFactura.TotalConImpuestos.Add(TotImp());
 +                
 +                
 +                
 +                //**********************************ENVIO PETICION***************************
 +             
 +                pet.Clave = "claveintegracion";
 +                pet.RUC = "170000738001";
 +                pet.Usuario = "ususariointegracion";
 +                RepuestaPeticion resp = servicio.EnviarFactura(pet);
 +                servicio.Close();
 +
 +                
 +
 +                richTextBox1.Text = resp.Mensaje + "--" + resp.Codigo + "--" + "\r\n" + resp.Archivo;
 +                
 +                
 +                
 +                
 +                
 +
 +            }
 +            catch (Exception ex)
 +            {
 +
 +                MessageBox.Show("Mensaje error: " + ex);
 +            }
 +            
 +            
 +</code>
 +
 +
 +
 +
 +
 +<code php Codigo Ejemplo PHP>
 +
 +try {
 +    include ("Formas.php");        
 +    $wsdl_url = 'http://demointws.thefactoryhka.com.ec/Service.svc?wsdl';
 +    $client = new SOAPClient($wsdl_url); 
 +    $objeto=new PeticionFactura();
 +    $doc=new Documento();
 +    $objeto->Documento=$doc;
 +    
 +//    *****************DATOS INFOTRIBUTARIA***************
 +    $infofact=new InfoFactura();
 +    $objeto->Documento->InfoFactura=$infofact;
 +    $infofact->DirEstablecimiento="Direccion estableciemineto";
 +    $infofact->DireccionComprador="Direccion Comprador cualquiera";
 +    $infofact->FechaEmision="16/02/2022";
 +    $infofact->IdentificacionComprador="1791282183001";
 +    $infofact->ImporteTotal="112.00";
 +    $infofact->Moneda="DOLAR";
 +    $infofact->ObligadoContabilidad="SI";
 +    $pag=new Pago();
 +    $pag->FormaPago="01";
 +    $pag->Plazo="3";
 +    $pag->Total="112.00";
 +    $pag->UnidadTiempo="dias";
 +    $infofact->Pagos=array($pag);
 +    
 +
 +
 +    $infofact->RazonSocialComprador="INDUSTRIAL Y AUTOMOTRIZ INDYA S.A.";
 +    $infofact->TipoIdentificacionComprador="04";
 +    $totimp=new TotalConImpuesto();
 +    $totimp->BaseImponible="100.00";
 +    $totimp->Codigo="2";
 +    $totimp->CodigoPorcentaje="2";
 +    $totimp->Descuentoadicional="0.00";
 +    $totimp->ValorDevolucionIva="0.00";
 +    $totimp->Valor="120.00";
 +    $totimp->Tarifa="12";
 +    
 +    
 +    $infofact->TotalConImpuestos=array($totimp);
 +    
 +
 +    $infofact->TotalDescuento="0.00";
 +    $infofact->TotalImpuestoReembolso="12.00";
 +    $infofact->TotalSinImpuestos="100.00";
 +    $infofact->TotalSubsidio="0.00";
 +    
 +        
 +//    *********************DATOS INFOFACTURA***************
 +    
 +    $infotrib = new InfoTributaria();
 +    $infotrib->CodigoNumerico="12345678";
 +    $infotrib->DirMatriz="direccion Matriz ABC";
 +    $infotrib->Estab="001";
 +    $infotrib->PtoEmi="101";
 +    $infotrib->Secuencial="000000112";
 +    $infotrib->Nombrecomercial="Fabrica Ecuatoriana Ecuagoch SA";
 +    $infotrib->RazonSocial="ECUAGOCH";   
 +    $objeto->Documento->InfoTributaria=$infotrib;    
 +    $objeto->Documento->CorreoNotificar="scastillo@gmail.com";
 +    $objeto->Documento->DirCliente="Direccion del cliente";
 +    $objeto->Documento->Notificar="SI";
 +    
 +
 +//    ********************DETALLES*********************
 +    
 +    $det=new DetalleFactura();
 +    $det->Cantidad="1";
 +    $det->CodigoAuxiliar="A000001";
 +    $det->CodigoPrincipal="A000001A";
 +    $det->Descripcion="Articulo Nuevo FFFF";
 +    $impDet=new ImpuestoDetalle();
 +    $impDet->BaseImponible="100.00";
 +    $impDet->Codigo="2";
 +    $impDet->CodigoPorRet="2";
 +    $impDet->Tarifa="12";
 +    $impDet->Valor="12.00";
 +    $det->Impuestos=array($impDet);
 +    $det->PrecioTotalSinImpuesto="100.00";
 +    $det->PrecioUnitario="100.00";
 +    $det->DetAdicional=array("Nombre"=>"NOmbreAdicionalx","Valor"=>"10.00");
 +    $det->PrecioSinSubsidio="0.00";
 +    $det->Descuento="0.00";
 +    $doc->Detalles=array($det);
 +    
 +    $pet = [array("data"=> $objeto )];                   
 +    $return = $client->__soapCall("EnviarFactura", $pet);                                  
 +     print_r($return);
 +
 +} catch (Exception $e) {
 +    echo "Exception occured: " . $e;
 +}
 +          
 +           
 +</code>
 +
 +Donde el archivo Formas.php es el siguiente:
 +
 +<?php
 +
 +/*
 + * To change this license header, choose License Headers in Project Properties.
 + * To change this template file, choose Tools | Templates
 + * and open the template in the editor.
 + */
 +
 +/**
 + * Description of Formas
 + *
 + * @author scastillo
 + */
 +class PeticionEstatusDocumento {
 +    
 +    public $Usuario = 'usuario1'; 
 +    public $RUC = '1792433738001';  
 +    public $Clave = 'dfacture';  
 +    public $Documento = '01-001-101-010000004';  
 +
 +        
 +    }
 +    
 + class PeticionFactura {
 +    
 +    public $Usuario = 'usuario1'; 
 +    public $RUC = '1792433738001';  
 +    public $Clave = 'dfacture';  
 +    public $Documento =[];
 +
 +        
 +    }  
 +    
 +    
 +    
 +    
 +    
 +    
 +    
 + class PeticionFolios{
 +     
 +    public $Usuario = 'usuario1'; 
 +    public $RUC = '1792433738001';  
 +    public $Clave = 'dfacture'; 
 +     
 +    }   
 +    
 +    
 +class Documento{
 +    
 +    public $Version="1.1.0";
 +    public $CPCliente=null;
 +    public $CampoAdicional=null;
 +    public $CorreoNegociable=null;
 +    public $CorreoNotificar=null;
 +    public $Detalles=[];
 +    public $DirCliente=null;
 +    public $InfoFactura=null;
 +    public $InfoSustitutivaGuiaRemision=null;
 +    public $InfoTributaria=null;
 +    public $MaquinaFiscal=null;
 +    public $negociable=null;
 +    public $Notificar=null;
 +    public $OtrosRubrosTerceros=null;
 +    public $Reembolsos=null;
 +    public $Retenciones=null;
 +    public $TelefonoCliente=null;
 +  
 +
 +}
 +
 +
 +class InfoTributaria{
 +    
 +    public $AgenteRetencion=null;
 +    public $CodigoNumerico="12345678";
 +    public $DirMatriz=null;
 +    public $Estab="001";
 +    public $Nombrecomercial=null;
 +    public $PtoEmi="001";
 +    public $RazonSocial=null;
 +    public $RegimenMicroempresas=null;
 +    public $Secuencial=null;
 +    
 +    
 +}
 +
 +class InfoFactura{
 +    
 +    public $CodDocReembolso=null;
 +    public $ComercioExterior=null;
 +    public $Compensaciones=null;
 +    public $ContribuyenteEspecial="CONTRIBUYENTE";
 +    public $DirEstablecimiento=null;
 +    public $DireccionComprador=null;
 +    public $FechaEmision=null;
 +    public $FleteInternacional=null;
 +    public $GastosAduaneros=null;
 +    public $GastosTrasporteOtros=null;
 +    public $GuiaRemision=null;
 +    public $IdentificacionComprador=null;
 +    public $ImporteTotal=null;
 +    public $IncoTermFactura=null;
 +    public $IncoTermTotalSinImpuestos=null;
 +    public $LugarIncoTerm=null;
 +    public $Moneda=null;
 +    public $ObligadoContabilidad=null;
 +    public $Pagos=[];
 +    public $PaisAdquisicion=null;
 +    public $PaisDestino=null;
 +    public $PaisOrigen=null;
 +    public $Placa=null;
 +    public $Propina=null;
 +    public $PuertoDestino=null;
 +    public $PuertoEmbarque=null;
 +    public $RazonSocialComprador=null;
 +    public $SeguroInternacional=null;
 +    public $TipoIdentificacionComprador=null;
 +    public $TotalBaseImponibleReembolso=null;
 +    public $TotalComprobantesReembolso=null;
 +    public $TotalConImpuestos=[];
 +    public $TotalDescuento=null;
 +    public $TotalImpuestoReembolso=null;
 +    public $TotalSinImpuestos=null;
 +    public $TotalSubsidio=null;
 +    public $ValorRetIva=null;
 +    public $ValorRetRenta=null;
 +       
 +}
 +
 +class DetalleFactura{
 +    
 +    public $Cantidad=null;
 +    public $Descripcion=null;
 +    public $Descuento=null;
 +    public $Impuestos=[];
 +    public $PrecioTotalSinImpuesto=null;
 +    public $PrecioUnitario=null;
 +    public $CodigoAuxiliar=null;
 +    public $CodigoPrincipal=null;
 +    public $DetAdicional=[];
 +    public $PrecioSinSubsidio=null;
 +    public $unidadMedida=null;
 +    
 +    
 +}
 +    
 +class ImpuestoDetalle{
 +    
 +    public $BaseImponible=null;
 +    public $Codigo=null;
 +    public $CodigoPorRet=null;
 +    public $Valor=null;
 +    public $Tarifa=null;
 +    
 +}
 +
 +
 +class TotalConImpuesto{
 +    
 +    public $BaseImponible=null;
 +    public $Codigo=null;
 +    public $CodigoPorcentaje=null;
 +    public $Descuentoadicional=null;
 +    public $Valor=null;
 +    public $Tarifa=null;
 +    public $ValorDevolucionIva=null;
 +        
 +}
 +
 +class Pago{
 +    public $FormaPago=null;
 +    public $Plazo=null;
 +    public $Total=null;
 +    public $UnidadTiempo=null;
 +   
 +}
 +
 +   
 +
 +
 +
 == ARCHIVOS FACTURA XML/XSD == == ARCHIVOS FACTURA XML/XSD ==
 +
 En este enlace se encuentran disponibles los xml y xsd de factura en sus distintas versiones En este enlace se encuentran disponibles los xml y xsd de factura en sus distintas versiones
  
Línea 383: Línea 798:
 ---- ----
  
-[[manual_de_integracion_obj|Ir Atrás]]+[[manual_de_integracion_obj|{{:60577.png?30x30 }}]]