meta data de esta página
  •  

Método EnviarFactura()

El request del método es el siguiente:

Request: Parámetro a enviar
Tipo Identificador Descripción
String RUC Proporcionado por el cliente.
String Usuario Proporcionado por The Factory HKA.
String Password Proporcionado por The Factory HKA.
Object Documento xml siguiente

OBJETO EJEMPLO

(Solo rellenar los nodos que consideren necesarios y que apliquen para su modelo de Factura)

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:tem="http://tempuri.org/" xmlns:wsec="http://schemas.datacontract.org/2004/07/WSEcuadorService.Request" xmlns:ecu="http://schemas.datacontract.org/2004/07/EcuadorLibraryObject" xmlns:ecu1="http://schemas.datacontract.org/2004/07/EcuadorLibraryObject.Other" xmlns:ecu2="http://schemas.datacontract.org/2004/07/EcuadorLibraryObject.Common.Detail" xmlns:ecu3="http://schemas.datacontract.org/2004/07/EcuadorLibraryObject.Common.Body" xmlns:ecu4="http://schemas.datacontract.org/2004/07/EcuadorLibraryObject.Common.Other">
   <soapenv:Header/>
   <soapenv:Body>
      <tem:EnviarFactura>
         <!--Optional:-->
         <tem:data>
            <!--Optional:-->
            <wsec:Clave>?</wsec:Clave>
            <!--Optional:-->
            <wsec:RUC>?</wsec:RUC>
            <!--Optional:-->
            <wsec:Usuario>?</wsec:Usuario>
            <!--Optional:-->
            <wsec:Documento>
               <!--Optional:-->
               <ecu:CampoAdicional>
                  <!--Zero or more repetitions:-->
                  <ecu1:infoAdicional>
                     <!--Optional:-->
                     <ecu2:Nombre>?</ecu2:Nombre>
                     <!--Optional:-->
                     <ecu2:Valor>?</ecu2:Valor>
                  </ecu1:infoAdicional>
                  <!--Optional:-->
               </ecu:CampoAdicional>
               <!--Optional:-->
               <ecu:CorreoNegociable>?</ecu:CorreoNegociable>
               <!--Optional:-->
               <ecu:CorreoNotificar>?</ecu:CorreoNotificar>
               <!--Optional:-->
               <ecu:Detalles>
                  <!--Zero or more repetitions:-->
                  <ecu2:DetalleFactura>
                     <!--Optional:-->
                     <ecu2:Cantidad>?</ecu2:Cantidad>
                     <!--Optional:-->
                     <ecu2:Descripcion>?</ecu2:Descripcion>
                     <!--Optional:-->
                     <ecu2:Descuento>?</ecu2:Descuento>
                     <!--Optional:-->
                     <ecu2:Impuestos>
                        <!--Zero or more repetitions:-->
                        <ecu2:ImpuestoDetalle>
                           <!--Optional:-->
                           <ecu2:BaseImponible>?</ecu2:BaseImponible>
                           <!--Optional:-->
                           <ecu2:Codigo>?</ecu2:Codigo>
                           <!--Optional:-->
                           <ecu2:CodigoPorRet>?</ecu2:CodigoPorRet>
                           <!--Optional:-->
                           <ecu2:Valor>?</ecu2:Valor>
                           <!--Optional:-->
                           <ecu2:Tarifa>?</ecu2:Tarifa>
                        </ecu2:ImpuestoDetalle>
                     </ecu2:Impuestos>
                     <!--Optional:-->
                     <ecu2:PrecioTotalSinImpuesto>?</ecu2:PrecioTotalSinImpuesto>
                     <!--Optional:-->
                     <ecu2:PrecioUnitario>?</ecu2:PrecioUnitario>
                     <!--Optional:-->
                     <ecu2:CodigoAuxiliar>?</ecu2:CodigoAuxiliar>
                     <!--Optional:-->
                     <ecu2:CodigoPrincipal>?</ecu2:CodigoPrincipal>
                     <!--Optional:-->
                     <ecu2:DetAdicional>
                        <!--Zero or more repetitions:-->
                        <ecu2:DetAdicional>
                           <!--Optional:-->
                           <ecu2:Nombre>?</ecu2:Nombre>
                           <!--Optional:-->
                           <ecu2:Valor>?</ecu2:Valor>
                        </ecu2:DetAdicional>
                     </ecu2:DetAdicional>
                     <!--Optional:-->
                     <ecu2:PrecioSinSubsidio>?</ecu2:PrecioSinSubsidio>
                     <!--Optional:-->
                     <ecu2:UnidadMedida>?</ecu2:UnidadMedida>
                  </ecu2:DetalleFactura>
               </ecu:Detalles>
               <!--Optional:-->
               <ecu:DirCliente>?</ecu:DirCliente>
               <!--Optional:-->
               <ecu:InfoFactura>
                  <!--Optional:-->
                  <ecu3:CodDocReembolso>?</ecu3:CodDocReembolso>
                  <!--Optional:-->
                  <ecu3:ComercioExterior>?</ecu3:ComercioExterior>
                  <!--Optional:-->
                  <ecu3:Compensaciones>
                     <!--Zero or more repetitions:-->
                     <ecu3:Compensacion>
                        <!--Optional:-->
                        <ecu3:Codigo>?</ecu3:Codigo>
                        <!--Optional:-->
                        <ecu3:Tarifa>?</ecu3:Tarifa>
                        <!--Optional:-->
                        <ecu3:Valor>?</ecu3:Valor>
                     </ecu3:Compensacion>
                  </ecu3:Compensaciones>
                  <!--Optional:-->
                  <ecu3:ContribuyenteEspecial>?</ecu3:ContribuyenteEspecial>
                  <!--Optional:-->
                  <ecu3:DirEstablecimiento>?</ecu3:DirEstablecimiento>
                  <!--Optional:-->
                  <ecu3:DireccionComprador>?</ecu3:DireccionComprador>
                  <!--Optional:-->
                  <ecu3:FechaEmision>?</ecu3:FechaEmision>
                  <!--Optional:-->
                  <ecu3:FleteInternacional>?</ecu3:FleteInternacional>
                  <!--Optional:-->
                  <ecu3:GastosAduaneros>?</ecu3:GastosAduaneros>
                  <!--Optional:-->
                  <ecu3:GastosTransporteOtros>?</ecu3:GastosTransporteOtros>
                  <!--Optional:-->
                  <ecu3:GuiaRemision>?</ecu3:GuiaRemision>
                  <!--Optional:-->
                  <ecu3:IdentificacionComprador>?</ecu3:IdentificacionComprador>
                  <!--Optional:-->
                  <ecu3:ImporteTotal>?</ecu3:ImporteTotal>
                  <!--Optional:-->
                  <ecu3:IncoTermFactura>?</ecu3:IncoTermFactura>
                  <!--Optional:-->
                  <ecu3:IncoTermTotalSinImpuestos>?</ecu3:IncoTermTotalSinImpuestos>
                  <!--Optional:-->
                  <ecu3:LugarIncoTerm>?</ecu3:LugarIncoTerm>
                  <!--Optional:-->
                  <ecu3:Moneda>?</ecu3:Moneda>
                  <!--Optional:-->
                  <ecu3:ObligadoContabilidad>?</ecu3:ObligadoContabilidad>
                  <!--Optional:-->
                  <ecu3:Pagos>
                     <!--Zero or more repetitions:-->
                     <ecu3:Pago>
                        <!--Optional:-->
                        <ecu3:FormaPago>?</ecu3:FormaPago>
                        <!--Optional:-->
                        <ecu3:Plazo>?</ecu3:Plazo>
                        <!--Optional:-->
                        <ecu3:Total>?</ecu3:Total>
                        <!--Optional:-->
                        <ecu3:UnidadTiempo>?</ecu3:UnidadTiempo>
                     </ecu3:Pago>
                  </ecu3:Pagos>
                  <!--Optional:-->
                  <ecu3:PaisAdquisicion>?</ecu3:PaisAdquisicion>
                  <!--Optional:-->
                  <ecu3:PaisDestino>?</ecu3:PaisDestino>
                  <!--Optional:-->
                  <ecu3:PaisOrigen>?</ecu3:PaisOrigen>
                  <!--Optional:-->
                  <ecu3:Placa>?</ecu3:Placa>
                  <!--Optional:-->
                  <ecu3:Propina>?</ecu3:Propina>
                  <!--Optional:-->
                  <ecu3:PuertoDestino>?</ecu3:PuertoDestino>
                  <!--Optional:-->
                  <ecu3:PuertoEmbarque>?</ecu3:PuertoEmbarque>
                  <!--Optional:-->
                  <ecu3:RazonSocialComprador>?</ecu3:RazonSocialComprador>
                  <!--Optional:-->
                  <ecu3:SeguroInternacional>?</ecu3:SeguroInternacional>
                  <!--Optional:-->
                  <ecu3:TipoIdentificacionComprador>?</ecu3:TipoIdentificacionComprador>
                  <!--Optional:-->
                  <ecu3:TotalBaseImponibleReembolso>?</ecu3:TotalBaseImponibleReembolso>
                  <!--Optional:-->
                  <ecu3:TotalComprobantesReembolso>?</ecu3:TotalComprobantesReembolso>
                  <!--Optional:-->
                  <ecu3:TotalConImpuestos>
                     <!--Zero or more repetitions:-->
                     <ecu3:TotalConImpuesto>
                        <!--Optional:-->
                        <ecu3:BaseImponible>?</ecu3:BaseImponible>
                        <!--Optional:-->
                        <ecu3:Codigo>?</ecu3:Codigo>
                        <!--Optional:-->
                        <ecu3:CodigoPorcentaje>?</ecu3:CodigoPorcentaje>
                        <!--Optional:-->
                        <ecu3:DescuentoAdicional>?</ecu3:DescuentoAdicional>
                        <!--Optional:-->
                        <ecu3:Tarifa>?</ecu3:Tarifa>
                        <!--Optional:-->
                        <ecu3:Valor>?</ecu3:Valor>
                        <!--Optional:-->
                        <ecu3:ValorDevolucionIva>?</ecu3:ValorDevolucionIva>
                     </ecu3:TotalConImpuesto>
                  </ecu3:TotalConImpuestos>
                  <!--Optional:-->
                  <ecu3:TotalDescuento>?</ecu3:TotalDescuento>
                  <!--Optional:-->
                  <ecu3:TotalImpuestoReembolso>?</ecu3:TotalImpuestoReembolso>
                  <!--Optional:-->
                  <ecu3:TotalSinImpuestos>?</ecu3:TotalSinImpuestos>
                  <!--Optional:-->
                  <ecu3:TotalSubsidio>?</ecu3:TotalSubsidio>
                  <!--Optional:-->
                  <ecu3:ValorRetIva>?</ecu3:ValorRetIva>
                  <!--Optional:-->
                  <ecu3:ValorRetRenta>?</ecu3:ValorRetRenta>
               </ecu:InfoFactura>
               <!--Optional:-->
               <ecu:InfoSustitutivaGuiaRemision>
                  <!--Optional:-->
                  <ecu4:Destinos>
                     <!--Zero or more repetitions:-->
                     <ecu4:Destino>
                        <!--Optional:-->
                        <ecu4:CodEstabDestino>?</ecu4:CodEstabDestino>
                        <!--Optional:-->
                        <ecu4:DocAduaneroUnico>?</ecu4:DocAduaneroUnico>
                        <!--Optional:-->
                        <ecu4:MotivoTraslado>?</ecu4:MotivoTraslado>
                        <!--Optional:-->
                        <ecu4:Ruta>?</ecu4:Ruta>
                     </ecu4:Destino>
                  </ecu4:Destinos>
                  <!--Optional:-->
                  <ecu4:DirDestinatario>?</ecu4:DirDestinatario>
                  <!--Optional:-->
                  <ecu4:DirPartida>?</ecu4:DirPartida>
                  <!--Optional:-->
                  <ecu4:FechaFinTransporte>?</ecu4:FechaFinTransporte>
                  <!--Optional:-->
                  <ecu4:FechaIniTransporte>?</ecu4:FechaIniTransporte>
                  <!--Optional:-->
                  <ecu4:Placa>?</ecu4:Placa>
                  <!--Optional:-->
                  <ecu4:RazonSocialTransportista>?</ecu4:RazonSocialTransportista>
                  <!--Optional:-->
                  <ecu4:RucTransportista>?</ecu4:RucTransportista>
                  <!--Optional:-->
                  <ecu4:TipoIdentificacionTransportista>?</ecu4:TipoIdentificacionTransportista>
               </ecu:InfoSustitutivaGuiaRemision>
               <!--Optional:-->
               <ecu:InfoTributaria>
                  <!--Optional:-->
                  <ecu3:AgenteRetencion>?</ecu3:AgenteRetencion>
                  <!--Optional:-->
                  <ecu3:CodigoNumerico>?</ecu3:CodigoNumerico>
                  <!--Optional:-->
                  <ecu3:DirMatriz>?</ecu3:DirMatriz>
                  <!--Optional:-->
                  <ecu3:Estab>?</ecu3:Estab>
                  <!--Optional:-->
                  <ecu3:NombreComercial>?</ecu3:NombreComercial>
                  <!--Optional:-->
                  <ecu3:PtoEmi>?</ecu3:PtoEmi>
                  <!--Optional:-->
                  <ecu3:RazonSocial>?</ecu3:RazonSocial>
                  <!--Optional:-->
                  <ecu3:RegimenMicroempresas>?</ecu3:RegimenMicroempresas>
                  <!--Optional:-->
                  <ecu3:Secuencial>?</ecu3:Secuencial>
               </ecu:InfoTributaria>
               <!--Optional:-->
               <ecu:MaquinaFiscal>
                  <!--Optional:-->
                  <ecu1:marca>?</ecu1:marca>
                  <!--Optional:-->
                  <ecu1:modelo>?</ecu1:modelo>
                  <!--Optional:-->
                  <ecu1:serie>?</ecu1:serie>
               </ecu:MaquinaFiscal>
               <!--Optional:-->
               <ecu:Negociable>
                  <!--Optional:-->
                  <ecu1:Correo>?</ecu1:Correo>
               </ecu:Negociable>
               <!--Optional:-->
               <ecu:Notificar>?</ecu:Notificar>
               <!--Optional:-->
               <ecu:OtrosRubrosTerceros>
                  <!--Zero or more repetitions:-->
                  <ecu4:Rubro>
                     <!--Optional:-->
                     <ecu4:Concepto>?</ecu4:Concepto>
                     <!--Optional:-->
                     <ecu4:Total>?</ecu4:Total>
                  </ecu4:Rubro>
               </ecu:OtrosRubrosTerceros>
               <!--Optional:-->
               <ecu:Reembolsos>
                  <!--Zero or more repetitions:-->
                  <ecu4:ReembolsoDetalle>
                     <!--Optional:-->
                     <ecu4:CodDocReembolso>?</ecu4:CodDocReembolso>
                     <!--Optional:-->
                     <ecu4:CodPaisPagoProveedorReembolso>?</ecu4:CodPaisPagoProveedorReembolso>
                     <!--Optional:-->
                     <ecu4:CompensacionesReembolso>
                        <!--Zero or more repetitions:-->
                        <ecu3:Compensacion>
                           <!--Optional:-->
                           <ecu3:Codigo>?</ecu3:Codigo>
                           <!--Optional:-->
                           <ecu3:Tarifa>?</ecu3:Tarifa>
                           <!--Optional:-->
                           <ecu3:Valor>?</ecu3:Valor>
                        </ecu3:Compensacion>
                     </ecu4:CompensacionesReembolso>
                     <!--Optional:-->
                     <ecu4:DetalleImpuestos>
                        <!--Zero or more repetitions:-->
                        <ecu2:ImpuestoDetalle>
                           <!--Optional:-->
                           <ecu2:BaseImponible>?</ecu2:BaseImponible>
                           <!--Optional:-->
                           <ecu2:Codigo>?</ecu2:Codigo>
                           <!--Optional:-->
                           <ecu2:CodigoPorRet>?</ecu2:CodigoPorRet>
                           <!--Optional:-->
                           <ecu2:Valor>?</ecu2:Valor>
                           <!--Optional:-->
                           <ecu2:Tarifa>?</ecu2:Tarifa>
                        </ecu2:ImpuestoDetalle>
                     </ecu4:DetalleImpuestos>
                     <!--Optional:-->
                     <ecu4:EstabDocReembolso>?</ecu4:EstabDocReembolso>
                     <!--Optional:-->
                     <ecu4:FechaEmisionDocReembolso>?</ecu4:FechaEmisionDocReembolso>
                     <!--Optional:-->
                     <ecu4:IdentificacionProveedorReembolso>?</ecu4:IdentificacionProveedorReembolso>
                     <!--Optional:-->
                     <ecu4:NumeroautorizacionDocReemb>?</ecu4:NumeroautorizacionDocReemb>
                     <!--Optional:-->
                     <ecu4:PtoEmiDocReembolso>?</ecu4:PtoEmiDocReembolso>
                     <!--Optional:-->
                     <ecu4:SecuencialDocReembolso>?</ecu4:SecuencialDocReembolso>
                     <!--Optional:-->
                     <ecu4:TipoIdentificacionProveedorReembolso>?</ecu4:TipoIdentificacionProveedorReembolso>
                     <!--Optional:-->
                     <ecu4:TipoProveedorReembolso>?</ecu4:TipoProveedorReembolso>
                  </ecu4:ReembolsoDetalle>
               </ecu:Reembolsos>
               <!--Optional:-->
               <ecu:Retenciones>
                  <!--Zero or more repetitions:-->
                  <ecu4:Retencion>
                     <!--Optional:-->
                     <ecu4:Codigo>?</ecu4:Codigo>
                     <!--Optional:-->
                     <ecu4:CodigoPorcentaje>?</ecu4:CodigoPorcentaje>
                     <!--Optional:-->
                     <ecu4:Tarifa>?</ecu4:Tarifa>
                     <!--Optional:-->
                     <ecu4:Valor>?</ecu4:Valor>
                  </ecu4:Retencion>
               </ecu:Retenciones>
               <!--Optional:-->
               <ecu:TelefonoCliente>?</ecu:TelefonoCliente>
               <!--Optional:-->
               <ecu:Version>?</ecu:Version>
            </wsec:Documento>
         </tem:data>
      </tem:EnviarFactura>
   </soapenv:Body>
</soapenv:Envelope>

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
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);
            }
 
 
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;
}
 
 

Donde el archivo Formas.php es el siguiente:

Clases PHP
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

En este enlace se encuentran disponibles los xml y xsd de factura en sus distintas versiones

xml_y_xsd_factura.zip