Compartido:
Servicio para empresas con esquema de pago por timbre con tiempos competitivos de certificación (los timbres serán de acuerdo a la cantidad solicitada).
Plataformas que no soportan la letra “Ñ”
https://invoiceone.mx/TimbreCFDI/TimbreCFDI.asmx
Plataformas que soportan la letra “Ñ”
https://invoiceone.mx/TimbreCFDI/ioTimbreCFDI.asmx
Para comenzar a utilizar el servicio de certificación se deberá contar con un sistema informático capaz de generar el CFDI versión 4.0 y que al mismo tiempo pueda consumir un Web Service. El CFDI deberá cumplir con las reglas oficiales vigentes establecidas en el Anexo 20 del CFDI 4.0 para su correcta certificación.
El Web Service de certificación contiene una lista de métodos públicos que pueden ser utilizados desde diversas plataformas tales como .NET, Java, PHP, entre otros.
Los métodos se listan a continuación:
Obtiene el Timbre Fiscal Digital del CFDI recibido (en producción)
Obtiene el Timbre Fiscal Digital del CFDI recibido (en pruebas)
Obtiene el CFDI incluyendo el TFD del CFDI recibido (en producción)
Obtiene el CFDI incluyendo el TFD del CFDI recibido (en pruebas)
Cancela un CFDI utilizando un archivo .pfx (cer + llave privada) y la contraseña y consulta el estado de cancelación en SAT.
Simula la cancelación de un CFDI utilizando un archivo .pfx (cer +
llave privada) y la contraseña y consulta el estado de cancelación en
SAT.
Obtiene un TFD a partir de un CFDI.
contrasena: Contraseña asignada por InvoiceOne
xmlComprobante: XML generado bajo el estándar del anexo 20.
<soapenv:Envelope
xmlns:soapenv=”http://schemas.xmlsoap.org/soap/envelope/”
xmlns=”http://tempuri.org/”>
<soapenv:Body>
<ObtenerTFD>
<nombreUsuario>Usuario de timbrado</nombreUsuario>
<contrasena>Contraseña de timbrado</contrasena>
<xmlComprobante>Cadena del XML generado conforme Anexo 20 </xmlComprobante>
</ObtenerTFD>
</soapenv:Body>
</soapenv:Envelope>
<soap:Envelope
xmlns:soap=”http://schemas.xmlsoap.org/soap/envelope/”
xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance”
xmlns:xsd=”http://www.w3.org/2001/XMLSchema”>
<soap:Body>
<ObtenerTFDResponse xmlns=”http://tempuri.org/”>
<ObtenerTFDResult>
<Xml>Cadena del complemento Timbre Fiscal Digital correspondiente al XML</Xml>
<XmlAcuse/>
</ObtenerTFDResult>
</ObtenerTFDResponse>
</soap:Body>
</soap:Envelope>
Obtiene un TFD de PRUEBA a partir de un CFDI.
usuario: Usuario asignado por InvoiceOne
contrasena: Contraseña asignada por InvoiceOne
xmlComprobante: XML generado bajo el estándar del anexo 20.
Xml: Cadena de texto con la nomenclatura de un TFD definida en el anexo 20.
MensajeError: Mensaje con código de error y descripción del error.
MensajeExepcionReal: Mensaje con descripción del error detallada.
<soapenv:Envelope
xmlns:soapenv=”http://schemas.xmlsoap.org/soap/envelope/”
xmlns=”http://tempuri.org/”>
<soapenv:Body>
<ObtenerTFDPrueba>
<usuario>Usuario de timbrado</usuario>
<contrasena>Contraseña de timbrado</contrasena>
<xmlComprobante>Cadena del Xml conforme al Anexo 20</xmlComprobante>
</ObtenerTFDPrueba>
</soapenv:Body>
</soapenv:Envelope>
<soap:Envelope
xmlns:soap=”http://schemas.xmlsoap.org/soap/envelope/”
xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance”
xmlns:xsd=”http://www.w3.org/2001/XMLSchema”>
<soap:Body>
<ObtenerTFDPruebaResponse xmlns=”http://tempuri.org/”>
<ObtenerTFDPruebaResult>
<Xml>Cadena de complemento Timbre Fiscal Digital (Pruebas) correspondiente al XML</Xml>
<XmlAcuse/>
</ObtenerTFDPruebaResult>
</ObtenerTFDPruebaResponse>
</soap:Body>
</soap:Envelope>
Obtiene un CFDI completo con TFD a partir de un CFDI sin TFD.
nombreUsuario: Usuario asignado por InvoiceOne
contrasena: Contraseña asignada por InvoiceOne
xmlComprobante: XML generado bajo el estándar del anexo 20.
Xml: Cadena de texto con la nomenclatura de un TFD definida en el anexo 20.
MensajeError: Mensaje con código de error y descripción del error.
MensajeExepcionReal: Mensaje con descripción del error detallada.
<soapenv:Envelope
xmlns:soapenv=”http://schemas.xmlsoap.org/soap/envelope/”
xmlns=”http://tempuri.org/”>
<soapenv:Body>
<ObtenerCFDI>
<nombreUsuario>Usuario de timbrado</nombreUsuario>
<contrasena>Contraseña de timbrado</contrasena>
<xmlComprobante>Cadena del Xml conforme al Anexo 20</xmlComprobante>
</ObtenerCFDI>
</soapenv:Body>
</soapenv:Envelope>
<soap:Envelope
xmlns:soap=”http://schemas.xmlsoap.org/soap/envelope/”
xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance”
xmlns:xsd=”http://www.w3.org/2001/XMLSchema”>
<soap:Body>
<ObtenerCFDIResponse xmlns=”http://tempuri.org/”>
<ObtenerCFDIResult>
<Xml>Cadena del CFDI incluyendo TFD correspondiente al XML</Xml>
<XmlAcuse/>
</ObtenerCFDIResult>
</ObtenerCFDIResponse>
</soap:Body>
</soap:Envelope>
Obtiene un CFDI completo con TFD de PRUEBA a partir de un CFDI sin TFD.
usuario: Usuario asignado por InvoiceOne
contrasena: Contraseña asignada por InvoiceOne
xmlComprobante: XML generado bajo el estándar del anexo 20.
Xml: Cadena de texto con la nomenclatura de un TFD definida en el anexo 20.
MensajeError: Mensaje con código de error y descripción del error.
MensajeExepcionReal: Mensaje con descripción del error detallada.
<soapenv:Envelope
xmlns:soapenv=”http://schemas.xmlsoap.org/soap/envelope/”
xmlns=”http://tempuri.org/”>
<soapenv:Body>
<ObtenerCFDIPrueba>
<usuario>Usuario de timbrado</usuario>
<contrasena>Contraseña de timbrado</contrasena>
<xmlComprobante>Cadena de Xml conforme Anexo 20</xmlComprobante>
</ObtenerCFDIPrueba>
</soapenv:Body>
</soapenv:Envelope>
<soap:Envelope
xmlns:soap=”http://schemas.xmlsoap.org/soap/envelope/”
xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance”
xmlns:xsd=”http://www.w3.org/2001/XMLSchema”>
<soap:Body>
<ObtenerCFDIPruebaResponse xmlns=”http://tempuri.org/”>
<ObtenerCFDIPruebaResult>
<Xml>Cadena del CFDI incluyendo TFD (Pruebas) correspondiente al XML</Xml>
<XmlAcuse/>
</ObtenerCFDIPruebaResult>
</ObtenerCFDIPruebaResponse>
</soap:Body>
</soap:Envelope>
Este método permite enviar la petición de cancelación de un CFDI, sin importar el PAC que lo haya certificado.
Usuario: Usuario asignado por InvoiceOne.
Password: Contraseña asignada por InvoiceOne.
RFCEmisor: RFC del Emisor del CFDI a Cancelar.
RFCReceptor: RFC del Receptor del CFDI a Cancelar.
Total: El Total del CFDI a Cancelar.
UUID: Folio Fiscal UUID del CFDI a Cancelar.
MotivoCancelacion: Clave del motivo de cancelación.
FolioSustitucion: UUID que le sustituye (requerido cuando el motivo es 01).
pfxBase64: PFX en base 64 del Emisor del CFDI a Cancelar.
pfxPassword: Contraseña del PFX.
UUID: UUID a Cancelar.
EstatusUUID: Estatus de la solicitud.
CodigoEstatus: Código de la solicitud de cancelación.
Es Cancelable: Define si el CFDI enviado es o No Cancelable.
Estado: Define si el CFDI está Vigente o Cancelado.
EstatusCancelacion: Define el estatus de Cancelación del CFDI.
MensajeError: Mensaje con código de error y descripción del error.
MensajeExepcionReal: Mensaje con descripción del error detallada.
<soapenv:Envelope
xmlns:soapenv=”http://schemas.xmlsoap.org/soap/envelope/”
xmlns=”http://tempuri.org/”>
<soapenv:Body>
<CancelaCFDIConsultaSAT>
<Usuario>Usuario de timbrado</Usuario>
<Password>Contraseña de timbrado</Password>
<RFCEmisor>RFC del Emisor del CFDI</RFCEmisor>
<RFCReceptor>RFC del Receptor del CFDI</RFCReceptor>
<Total>Total del CFDI</Total>
<UUID>UUID del CFDI</UUID>
<MotivoCancelacion>Clave del Motivo de Cancelacion</MotivoCancelacion>
<FolioSustitucion>Folio de Sustitucion</FolioSustitucion>
<pfxBase64>Cadena en Base64 del PFX</pfxBase64>
<pfxPassword>Contraseña del PFX</pfxPassword>
</CancelaCFDIConsultaSAT>
</soapenv:Body>
</soapenv:Envelope>
Respuesta SOAP
<soap:Envelope
xmlns:soap=”http://schemas.xmlsoap.org/soap/envelope/”
xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance”
xmlns:xsd=”http://www.w3.org/2001/XMLSchema”>
<soap:Body>
<CancelaCFDIConsultaSATResponse xmlns=”http://tempuri.org/”>
<CancelaCFDIConsultaSATResult>
<CodEstatus>Codigo de Estatus</CodEstatus>
<Fecha>Fecha de la solicitud</Fecha>
<RFCEmisor>RFC del Emisor</RFCEmisor>
<Folios>
<RespuestaCancelaCFDIFolio>
<UUID>UUID del CFDI Cancelado</UUID>
<EstatusUUID>Estatus del UUID enviado a cancelar</EstatusUUID>
<CodigoEstatus>Codigo de Estatus en respuesta de la solicitud</CodigoEstatus>
<EsCancelable>Define si el CFDI es o No Cancelable</EsCancelable>
<Estado>Estado del CFDI como: Vigente o Cancelado</Estado>
<EstatusCancelacion>Estatus del CFDI en la solicitud</EstatusCancelacion>
</RespuestaCancelaCFDIFolio>
</Folios>
<XmlAcuse>Acuse de Cancelación</XmlAcuse>
</CancelaCFDIConsultaSATResult>
</CancelaCFDIConsultaSATResponse>
</soap:Body>
</soap:Envelope>
Este método simula la solicitud de cancelación de un CFDI.
Usuario: Usuario asignado por InvoiceOne.
Password: Contraseña asignada por InvoiceOne.
RFCEmisor: RFC del Emisor del CFDI a Cancelar.
RFCReceptor: RFC del Receptor del CFDI a Cancelar.
Total: El Total del CFDI a Cancelar.
UUID: Folio Fiscal UUID del CFDI a Cancelar.
MotivoCancelacion: Clave del motivo de cancelación.
FolioSustitucion: UUID que le sustituye (requerido cuando el motivo es 01).
pfxBase64: PFX en base 64 del Emisor del CFDI a Cancelar.
pfxPassword: Contraseña del PFX.
UUID: UUID a Cancelar.
EstatusUUID: Estatus de la solicitud.
CodigoEstatus: Código de la solicitud de cancelación.
Es Cancelable: Define si el CFDI enviado es o No Cancelable.
Estado: Define si el CFDI está Vigente o Cancelado.
EstatusCancelacion: Define el estatus de Cancelación del CFDI.
MensajeError: Mensaje con código de error y descripción del error.
MensajeExepcionReal: Mensaje con descripción del error detallada.
<soapenv:Envelope
xmlns:soapenv=”http://schemas.xmlsoap.org/soap/envelope/”
xmlns=”http://tempuri.org/”>
<soapenv:Body>
<TestCancelaCFDIConsultaSAT>
<Usuario>Usuario de timbrado</Usuario>
<Password>Contraseña de timbrado</Password>
<RFCEmisor>RFC del Emisor del CFDI</RFCEmisor>
<RFCReceptor>RFC del Receptor del CFDI</RFCReceptor>
<Total>Total del CFDI</Total>
<UUID>UUID del CFDI</UUID>
<MotivoCancelacion>Clave del Motivo de Cancelacion</MotivoCancelacion>
<FolioSustitucion>Folio de Sustitucion</FolioSustitucion>
<pfxBase64>Cadena en Base64 del PFX</pfxBase64>
<pfxPassword>Contraseña del PFX</pfxPassword>
</TestCancelaCFDIConsultaSAT>
</soapenv:Body>
</soapenv:Envelope>
<soap:Envelope
xmlns:soap=”http://schemas.xmlsoap.org/soap/envelope/”
xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance”
xmlns:xsd=”http://www.w3.org/2001/XMLSchema”>
<soap:Body>
<TestCancelaCFDIConsultaSATResponse xmlns=”http://tempuri.org/”>
<TestCancelaCFDIConsultaSATResult>
<CodEstatus>Codigo de Estatus</CodEstatus>
<Fecha>Fecha de la solicitud</Fecha>
<RFCEmisor>RFC del Emisor</RFCEmisor>
<Folios>
<RespuestaCancelaCFDIFolio>
<UUID>UUID del CFDI Cancelado</UUID>
<EstatusUUID>Estatus del UUID enviado a cancelar</EstatusUUID>
<CodigoEstatus>Codigo de Estatus en respuesta de la solicitud</CodigoEstatus>
<EsCancelable>Define si el CFDI es o No Cancelable</EsCancelable>
<Estado>Estado del CFDI como: Vigente o Cancelado</Estado>
<EstatusCancelacion>Estatus del CFDI en la solicitud</EstatusCancelacion>
</RespuestaCancelaCFDIFolio>
</Folios>
<XmlAcuse>Acuse de Cancelación</XmlAcuse>
</TestCancelaCFDIConsultaSATResult>
</TestCancelaCFDIConsultaSATResponse>
</soap:Body>
</soap:Envelope>