Documentos de Académico
Documentos de Profesional
Documentos de Cultura
WSCFDICancelacionV40
V2
Ekomercio Electrónico, S.A. de C.V., es propietario intelectual del contenido de este documento y se considera dentro del régimen de Pág. 1
información confidencial. Queda prohibida su reproducción total o parcial sin la autorización explícita.
Documento Funcional
Versión 3.0- 21 Julio 2017
1. CAMBIOS AL DOCUMENTO
Ekomercio Electrónico, S.A. de C.V., es propietario intelectual del contenido de este documento y se considera dentro del régimen de Pág. 2
información confidencial. Queda prohibida su reproducción total o parcial sin la autorización explícita.
Documento Funcional
Versión 3.0- 21 Julio 2017
3. AMBIENTES
PRUEBAS
Registro
https://cancelacionesdev.ekomercio.com/SUC_test/RegistroDistribuidor
Usuario
WSDL
Web https://timbradotest.ekomercio.com/Cliente_SAT_CFDI_Web_Pruebas/Servicios/WSCFDICancelacion.asmx?WSDL
Service
PRODUCCIÓN
Ekomercio Electrónico, S.A. de C.V., es propietario intelectual del contenido de este documento y se considera dentro del régimen de Pág. 3
información confidencial. Queda prohibida su reproducción total o parcial sin la autorización explícita.
Documento Funcional
Versión 3.0- 21 Julio 2017
PROCESO 1 Emisión
Registro de Certificados en Plataforma Ekomercio
Ekomercio Electrónico, S.A. de C.V., es propietario intelectual del contenido de este documento y se considera dentro del régimen de Pág. 4
información confidencial. Queda prohibida su reproducción total o parcial sin la autorización explícita.
Documento Funcional
Versión 3.0- 21 Julio 2017
WSCFDICancelacion
EJEMPLO REQUEST
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:tem="http://tempuri.org/">
<soapenv:Header/>
<soapenv:Body>
<tem:GuardarCertificadoSUC>
<tem:cUsuario>?</tem:cUsuario>
<tem:cPasswordUsuario>?</tem:cPasswordUsuario>
<tem:cRFCEmisor>?</tem:cRFCEmisor>
<tem:cCertificado>?</tem:cCertificado>
<tem:cLLave>?</tem:cLLave>
<tem:cPasswordCertificado>?</tem:cPasswordCertificado>
</tem:GuardarCertificadoSUC>
2 </soapenv:Body>
</soapenv:Envelope>
GuardarCertificadoSUC
Se utiliza para realizar un registro o relación de un RFC Emisor el cual estará ligado al
Usuario. Cada RFC Emisor tendrá que registrar su respectivo Certificado (.cer) y llave
privada (.key) más la contraseña de la llave privada. Las llaves son necesarias para
realizar las solicitudes XML firmadas por cada RFC de Emisor hacia el SAT.
Ligas de Interés:
https://knowledge.digicert.com/solution/SO5292.html
https://techjourney.net/how-to-decrypt-an-enrypted-ssl-rsa-private-key-pem-key/
EJEMPLO RESPONSE
GuardarCertificadoSUC
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Ekomercio Electrónico, S.A. de C.V., es propietario intelectual del contenido de este documento y se considera dentro del régimen de Pág. 5
información confidencial. Queda prohibida su reproducción total o parcial sin la autorización explícita.
Documento Funcional
Versión 3.0- 21 Julio 2017
WSCFDICancelacion
<GenerarTokenSUC xmlns="http://tempuri.org/">
<cUsuario>string</cUsuario>
<cPasswordUsuario>string</cPasswordUsuario>
<cRFCEmisor>string</cRFCEmisor>
3 <cAlias>string</cAlias>
</GenerarTokenSUC>
Se realiza para generar un token de uso, el cual se generará por RFC validando que en
GenerarTokenSUC cada petición correspondiente al RFC sea utilizada.
** El usuario y password deben ser creados previamente a través del portal de
cancelaciones. Se debe tener una autorización Interna de Ekomercio para que el usuario
quede habilitado y pueda ser utilizado.
** El Alias se obtiene en la respuesta del SUC al registrar un certificado
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:tem="http://tempuri.org/">
<soapenv:Header/>
<soapenv:Body>
<tem:GenerarTokenSUC>
<tem:cUsuario>usuario</tem:cUsuario>
Ejemplo Request:
<tem:cPasswordUsuario>P@ssw0rDUser</tem:cPasswordUsuario>
GenerarTokenSUC
<tem:cRFCEmisor>AAA010101AAA</tem:cRFCEmisor>
<cAlias>B2895EFF-02CB-4881-AD8A-6C74AB61B66B</cAlias>
</tem:GenerarTokenSUC>
</soapenv:Body>
</soapenv:Envelope>
<GenerarTokenSUCResponse xmlns="http://tempuri.org/">
<GenerarTokenSUCResult>
<Estado>true</Estado>
Ejemplo Response
<Mensaje>El token ha sido obtenido correctamente</Mensaje>
GenerarTokenSUC
<Datos>xxxxxxxxxxxxxxxxxxxxxxxxxxx=</Datos>
</GenerarTokenSUCResult>
</GenerarTokenSUCResponse>
Ekomercio Electrónico, S.A. de C.V., es propietario intelectual del contenido de este documento y se considera dentro del régimen de Pág. 6
información confidencial. Queda prohibida su reproducción total o parcial sin la autorización explícita.
Documento Funcional
Versión 3.0- 21 Julio 2017
4 ValidarUUIDSUCv40
Se utiliza para consultar el estado del documento, la respuesta puede ser Cancelado o Vigente.
REQUEST
Nombre Tipo de dato Longitud
CFDI_UUID (Requerido) char 36
RFCReceptor (Requerido) varchar 13
RFCEmisor (Requerido) varchar 13
máximo 19 dígitos y 4 de ellos pueden estar a la
MontoTotal (Requerido) money
derecha del decimal
TipoDoc (Requerido) Integer ( 0=CFDI 1=RETEN ) 1
Token (Requerido) varchar 50
RESPONSE
Ekomercio Electrónico, S.A. de C.V., es propietario intelectual del contenido de este documento y se considera dentro del régimen de Pág. 7
información confidencial. Queda prohibida su reproducción total o parcial sin la autorización explícita.
Documento Funcional
Versión 3.0- 21 Julio 2017
Ekomercio Electrónico, S.A. de C.V., es propietario intelectual del contenido de este documento y se considera dentro del régimen de Pág. 8
información confidencial. Queda prohibida su reproducción total o parcial sin la autorización explícita.
Documento Funcional
Versión 3.0- 21 Julio 2017
ERRORES ESPERADOS
Los errores esperados son:
Ekomercio Electrónico, S.A. de C.V., es propietario intelectual del contenido de este documento y se considera dentro del régimen de Pág. 9
información confidencial. Queda prohibida su reproducción total o parcial sin la autorización explícita.
Documento Funcional
Versión 3.0- 21 Julio 2017
WSCFDICancelacion
<ConsultarUUIDRelacionadosSUC xmlns="http://tempuri.org/">
<cUUID>string</cUUID>
<cToken>string</cToken>
</ConsultarUUIDRelacionadosSUC>
Este método se utiliza para consultar si un UUID en particular contiene documentos
relacionados. Si tiene documentos relacionados se retornaría la lista con el detalle
de dichos documentos.
cUUID. Requerido. Es el UUID del documento que se desea consultar
cToken. Requerido. El token debe estar ligado al RFC Receptor del Documento
4
La RESPUESTA del método debe retornar los siguientes parámetros en una Lista por
ConsultarUUIDRelacionadosSUC cada UUID Relacionado que contenga el UUID consultado
- Mensaje
- Estado
- CFDI_UUID
- UUID_Relacionado
- RFC_Emisor
- RFC_Receptor
- Tipo_Relacion
- Fecha_Consulta
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:tem="http://tempuri.org/">
<soapenv:Header/>
<soapenv:Body>
Ejemplo Request: <tem: ConsultarUUIDRelacionadosSUC >
ConsultarUUIDRelacionadosSUC <tem:UUID>665ABCD7-24BC-47FA-90A9-82A1D2744C61</tem:string>
<tem:cToken>XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX8=</tem:cToken>
</tem: ConsultarUUIDRelacionadosSUC >
</soapenv:Body>
</soapenv:Envelope>
Ekomercio Electrónico, S.A. de C.V., es propietario intelectual del contenido de este documento y se considera dentro del régimen de Pág. 10
información confidencial. Queda prohibida su reproducción total o parcial sin la autorización explícita.
Documento Funcional
Versión 3.0- 21 Julio 2017
5 SolicitarCancelacionSUCv40
Se utiliza para solicitar cancelaciones.
REQUEST
Nombre Tipo de dato Longitud
CFDI_UUID (Requerido) char 36
RFCEmisor (Requerido) Varchar 14
RFCReceptor (Requerido) Varchar 14
máximo 19 dígitos y 4 de ellos pueden estar a la
MontoTotal (Requerido) Money
derecha del decimal
Motivo (Requerido) String ( 01, 02, 03, 04) 2
FolioSustitucion (Condicional) String 36
TipoDoc (Requerido) Integer ( 0=CFDI , 1=RETEN ) 1
Token (Requerido) Varchar 50
<?xml version="1.0" encoding="utf-8"?>
<Envelope xmlns="http://schemas.xmlsoap.org/soap/envelope/">
<Body>
<SolicitarCancelacionSUCv40 xmlns="http://tempuri.org/">
<!-- Optional -->
<oListaSolicitudCancelacion>
<!-- Optional -->
<SolicitudCancelacionDTO>
<CFDI_UUID>F1FB464A-3DE0-4794-B287-4DE9972A7D6F</CFDI_UUID>
<RFCEmisor>BAR011108CC6</RFCEmisor>
<RFCReceptor>MEMD720615GC7</RFCReceptor>
<MontoTotal>102.45</MontoTotal>
<Motivo>01</Motivo>
<FolioSustitucion>E74078B0-640C-11EC-9F10-0800200C9A66</FolioSustitucion>
<TipoDoc>0</ TipoDoc >
</SolicitudCancelacionDTO>
</oListaSolicitudCancelacion>
<cToken>o6KNI+gX++bEYUiWT+AWmHpr2QvLu1hZUY9igHaZuzg=</cToken>
</SolicitarCancelacionSUCv40>
</Body>
</Envelope>
RESPONSE
Nombre Tipo de dato Longitud
Estado bool True/False
Mensaje string 250 caracteres
Datos objecto Estado, Mensaje y Datos
CFDI_UUID char 36
RFCEmisor varchar 14
RFCREceptor varchar 14
EstadoDucmento varchar 150
máximo 19 dígitos y 4 de ellos pueden estar a la
MontoTotal money
derecha del decimal
Motivo String ( 01, 02, 03, 04) 2
FolioSustitucion String 36
TipoDoc Integer ( 0=CFDI , 1=RETEN ) 1
<?xml version="1.0" encoding="utf-8"?>
<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>
<SolicitarCancelacionSUCv40Response xmlns="http://tempuri.org/">
<SolicitarCancelacionSUCResult>
<Estado>true</Estado>
<Mensaje/>
<Datos>
<RespuestaDTOOfCancelacionDTO>
<Estado>true</Estado>
<Mensaje>Cancelacion recibida</Mensaje>
Ekomercio Electrónico, S.A. de C.V., es propietario intelectual del contenido de este documento y se considera dentro del régimen de Pág. 11
información confidencial. Queda prohibida su reproducción total o parcial sin la autorización explícita.
Documento Funcional
Versión 3.0- 21 Julio 2017
<Datos>
<CFDI_UUID>F1FB464A-3DE0-4794-B287-4DE9972A7D6F</CFDI_UUID>
<RFCReceptor>MEMD720615GC7</RFCReceptor>
<RFCEmisor>BAR011108CC6</RFCEmisor>
<FechaSolicitud>2020-01-01T12:59:50</FechaSolicitud>
<AutorizoCliente></AutorizoCliente>
<FechaEstatus>2020-01-01T12:59:50</FechaEstatus>
<MontoTotal>100.00</MontoTotal>
<Motivo>01</Motivo>
<FolioSustitucion>E74078B0-640C-11EC-9F10-
0800200C9A66</FolioSustitucion>
<TipoDoc>0</TipoDoc>
</Datos>
</RespuestaDTOOfCancelacionDTO>
</Datos>
</SolicitarCancelacionSUCResult>
</SolicitarCancelacionSUCv40Response>
</soap:Body>
</soap:Envelope>
<?xml version="1.0" encoding="utf-8"?>
<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>
<SolicitarCancelacionSUCv40Response xmlns="http://tempuri.org/">
<SolicitarCancelacionSUCResult>
<Estado>true</Estado>
<Mensaje/>
<Datos>
<RespuestaDTOOfCancelacionDTO>
<Estado>true</Estado>
<Mensaje>Cancelacion recibida</Mensaje>
<Datos>
<CFDI_UUID>F1FB464A-3DE0-4794-B287-4DE9972A7D6F</CFDI_UUID>
<RFCReceptor>MEMD720615GC7</RFCReceptor>
<RFCEmisor>BAR011108CC6</RFCEmisor>
<FechaSolicitud>2020-01-01T12:59:50</FechaSolicitud>
<AutorizoCliente>false</AutorizoCliente>
<FechaEstatus>null</FechaEstatus>
<MontoTotal>100.00</MontoTotal>
<Motivo>01</Motivo>
<FolioSustitucion>E74078B0-640C-11EC-9F10-
0800200C9A66</FolioSustitucion>
<TipoDoc>0</TipoDoc>
</Datos>
</RespuestaDTOOfCancelacionDTO>
</Datos>
</SolicitarCancelacionSUCResult>
</SolicitarCancelacionSUCv40Response>
</soap:Body>
</soap:Envelope>
ERRORES ESPERADOS
Ekomercio Electrónico, S.A. de C.V., es propietario intelectual del contenido de este documento y se considera dentro del régimen de Pág. 12
información confidencial. Queda prohibida su reproducción total o parcial sin la autorización explícita.
Documento Funcional
Versión 3.0- 21 Julio 2017
WSCFDICancelacion
< ConsultarAcuseSolicitud xmlns="http://tempuri.org/">
<cToken>string</ cToken >
<cRFC_Emisor>string</ cRFC_Emisor >
<cUUID >string</ cUUID >
5A </ ConsultarAcuseSolicitud >
Este método se utiliza para consultar el Acuse de Solicitud de cancelación de un
ConsultarAcuseSolicitudSUC UUID en específico. El acuse puede llegar a contener varios UUID solicitados, pero
siempre correspondientes al mismo RFC Emisor
cToken. Requerido. Cadena de autentificación
cUUID. Requerido. UUID del cual se desea obtener el Acuse
cRFC_Emisor.Requerido. RFC emisor que solicito la cancelación del UUID
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:tem="http://tempuri.org/">
<soapenv:Header/>
<soapenv:Body>
<tem: ConsultarAcuseSolicitud >
Ejemplo Request:
<tem:cToken>XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX8=</tem:cToken>
ConsultarAcuseSolicitudSUC
<tem: cRFC_Emisor>XXXXXXXXXXXX</tem: cRFC_Emisor >
<tem: cUUID >XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX8=</tem: cUUID >
</tem: ConsultarAcuseSolicitud >
</soapenv:Body>
</soapenv:Envelope>
WSCFDICancelacion
REQUEST
<ConsultarXmlSolicitudSUC xmlns="http://tempuri.org/">
<oUUID>[string?]</oUUID>
<cToken>[string?]</cToken>
</ConsultarXmlSolicitudSUC>
Este método sirve para consultar únicamente el archivo XML del acuse de solicitud en
5B base 64, además de responder la fecha del Acuse.
<Estado>true</Estado>
<Mensaje>Datos Obtenidos</Mensaje>
<Datos>
<CFDI_UUID>00000DEE-423C-954A-A731-B090B4463344</CFDI_UUID>
<DocXML>Documento Base 64…. </DocXML>
<FechaAcuse>2019-05-08T15:28:39.423</FechaAcuse>
<Datos>
Ekomercio Electrónico, S.A. de C.V., es propietario intelectual del contenido de este documento y se considera dentro del régimen de Pág. 13
información confidencial. Queda prohibida su reproducción total o parcial sin la autorización explícita.
Documento Funcional
Versión 3.0- 21 Julio 2017
6 ConsultaCancelacionSUCv40
Se utiliza para consultar el estado de cancelación.
REQUEST
Nombre Tipo de dato Longitud
CFDI_UUID (Requerido) Lista char 36
FechaInicio (Requerido)
datetime datetime
FechaFin (Requerido)
Token (Requerido) varchar 50
<Envelope xmlns="http://schemas.xmlsoap.org/soap/envelope/">
<Body>
<ConsultaCancelacionSUCv40 xmlns="http://tempuri.org/">
<oListUUID>
<string>00000EDF-E03E-4C4D-BF1B-13DC84236899</string>
</oListUUID>
<dFechaInicio>2021-12-23</dFechaInicio>
<dFechaFin>2022-01-10</dFechaFin>
<cToken>fyrphJNw7QBGUmb8yA2Kby9MppIF9bWmtxOZsYHvcxY=</cToken>
</ConsultaCancelacionSUCv40>
</Body>
</Envelope>
RESPONSE
Nombre Tipo de dato Longitud
CFDI_UUID char 36
RFCEmisor varchar 14
RFCREceptor varchar 14
EstadoDucmento varchar 150
FechaSolicitud datetime datetime
EstadoCancelacion varchar 50
Observaciones Varchar 250
FechaEstatus Datetime datetime
máximo 19 dígitos y 4 de ellos pueden
MontoTotal money
estar a la derecha del decimal
XMLAcuseB64 Varchar MAX
Motivo String ( 01, 02, 03, 04) 2
FolioSustitucion String 36
EFOS Integer 3
TipoDoc Integer ( 0=CFDI , 1=RETEN ) 1
Ekomercio Electrónico, S.A. de C.V., es propietario intelectual del contenido de este documento y se considera dentro del régimen de Pág. 14
información confidencial. Queda prohibida su reproducción total o parcial sin la autorización explícita.
Documento Funcional
Versión 3.0- 21 Julio 2017
Ekomercio Electrónico, S.A. de C.V., es propietario intelectual del contenido de este documento y se considera dentro del régimen de Pág. 15
información confidencial. Queda prohibida su reproducción total o parcial sin la autorización explícita.
Documento Funcional
Versión 3.0- 21 Julio 2017
ERRORES ESPERADOS
Los errores esperados son:
Ekomercio Electrónico, S.A. de C.V., es propietario intelectual del contenido de este documento y se considera dentro del régimen de Pág. 16
información confidencial. Queda prohibida su reproducción total o parcial sin la autorización explícita.
Documento Funcional
Versión 3.0- 21 Julio 2017
Ekomercio Electrónico, S.A. de C.V., es propietario intelectual del contenido de este documento y se considera dentro del régimen de Pág. 17
información confidencial. Queda prohibida su reproducción total o parcial sin la autorización explícita.
Documento Funcional
Versión 3.0- 21 Julio 2017
WSCFDICancelacion
<?xml version="1.0"?>
<Acuse xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<CodigoEstatus>S - Comprobante obtenido satisfactoriamente.</CodigoEstatus>
<EsCancelable>Cancelable sin aceptacin</EsCancelable>
<Estado>Vigente</Estado>
<EstatusCancelacion>En Proceso</EstatusCancelacion>
</Acuse>
6 <?xml version="1.0"?>
<Acuse xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
EJEMPLOS <CodigoEstatus>S - Comprobante obtenido satisfactoriamente.</CodigoEstatus>
<EsCancelable>Cancelable con aceptacin</EsCancelable>
XMLAcuseB64 <Estado>Cancelado</Estado>
<EstatusCancelacion>Aceptado</EstatusCancelacion>
</Acuse>
<?xml version="1.0"?>
<Acuse xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<CodigoEstatus>S - Comprobante obtenido satisfactoriamente.</CodigoEstatus>
<EsCancelable>Cancelable con aceptacin</EsCancelable>
<Estado>Vigente</Estado>
<EstatusCancelacion>Rechazado</EstatusCancelacion>
</Acuse>
Ekomercio Electrónico, S.A. de C.V., es propietario intelectual del contenido de este documento y se considera dentro del régimen de Pág. 18
información confidencial. Queda prohibida su reproducción total o parcial sin la autorización explícita.
Documento Funcional
Versión 3.0- 21 Julio 2017
PROCESO 1 - Recepción
Registro de Certificados en Plataforma Ekomercio
Ekomercio Electrónico, S.A. de C.V., es propietario intelectual del contenido de este documento y se considera dentro del régimen de Pág. 19
información confidencial. Queda prohibida su reproducción total o parcial sin la autorización explícita.
Documento Funcional
Versión 3.0- 21 Julio 2017
WSCFDICancelacion
<ConsultarCancelacionesReceptorSUC xmlns="http://tempuri.org/">
<cToken>string</cToken>
</ ConsultarCancelacionesReceptorSUC >
Este método sirve para consultar las cancelaciones pendientes de Aceptar o Rechazar.
La consulta se emite por un solo RFC el cual será el Receptor del o los documentos que
requieran la Autorización.
7
cToken. Requerido. Token de Autenticación el cual ya está ligado a un ÚNICO RFC.
EJMPLO DE RESPUESTA:
<oListUUIDs>
<uuid>XXXXXXX</uuid>
<uuid>XXXXXXX</uuid>
<uuid>XXXXXXX</uuid>
<uuid>XXXXXXX</uuid>
<oListUUIDs>
Ekomercio Electrónico, S.A. de C.V., es propietario intelectual del contenido de este documento y se considera dentro del régimen de Pág. 20
información confidencial. Queda prohibida su reproducción total o parcial sin la autorización explícita.
Documento Funcional
Versión 3.0- 21 Julio 2017
WSCFDICancelacion
< AceptarRechazarReceptorSUC xmlns="http://tempuri.org/">
<cToken>string</cToken>
<oListUUIDs>
<oUUIDs>
<cCFDI_UUID>string</cCFDI_UUID>
<bAutorizoCliente>binary</bAutorizoCliente>
</oUUIDs>
< oUUIDs >
<cCFDI_UUID>string</cCFDI_UUID>
<bAutorizoCliente>binary</bAutorizoCliente>
</oUUIDs>
</oListUUIDs>
</ AceptarRechazarReceptorSUC >
Este método sirve para dar la aceptación o rechazo las cancelaciones consultadas
previamente. La aceptación se emite por un solo RFC el cual será el Receptor del o los
8 documentos.
La respuesta del WS debe retornar un LISTADO DE UUID con la indicación definitiva del
SAT respecto a la respuesta de Aceptación o Rechazo.
EJMPLO DE RESPUESTA:
<oListUUIDs>
<oUUIDs>
<cCFDI_UUID>xxxxxxxxxxxxxxxxx</cCFDI_UUID>
<bEstado>true</bEstado>
<cMensaje>1000-Cancelación Aceptada</ cMensaje >
</oUUIDs>
<oUUIDs>
<cCFDI_UUID>xxxxxxxxxxxxxxxxx</cCFDI_UUID>
<bEstado>false</bEstado>
<cMensaje>1001-UUID no registrado</ cMensaje >
</oUUIDs>
</oListUUIDs>
Ekomercio Electrónico, S.A. de C.V., es propietario intelectual del contenido de este documento y se considera dentro del régimen de Pág. 21
información confidencial. Queda prohibida su reproducción total o parcial sin la autorización explícita.
Documento Funcional
Versión 3.0- 21 Julio 2017
PROCESO 2 EMISION
SIN REGISTRO DE LLAVES EN LA PLATAFORMA DE EKOMERCIO
Ekomercio Electrónico, S.A. de C.V., es propietario intelectual del contenido de este documento y se considera dentro del régimen de Pág. 22
información confidencial. Queda prohibida su reproducción total o parcial sin la autorización explícita.
Documento Funcional
Versión 3.0- 21 Julio 2017
WSCFDICancelacion
<LoginExternoSUC xmlns="http://tempuri.org/">
<cUsuario>string</cUsuario>
<cPasswordUsuario>string</cPasswordUsuario>
</LoginExternoSUC>
Se realiza para generar un token de uso, el cual se generará para habilitar múltiples RFC
2 de Emisor. El token podrá ser utilizado con distintos RFC Emisores sin la necesidad de
solicitar uno por cada RFC emisor.
LoginExternoSUC ** El usuario y password deben ser creados previamente a través del portal de
cancelaciones.
** El perfil del usuario debe ser como entidad “Distribuidor”
Se debe tener una autorización Interna de Ekomercio para que el usuario quede
habilitado y pueda ser utilizado
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:tem="http://tempuri.org/">
<soapenv:Header/>
<soapenv:Body>
Ejemplo Request <tem:LoginExternoSUC>
LoginExternoSUC <tem:cUsuario>usuario</tem:cUsuario>
<tem:cPasswordUsuario>P@ssw0rdUSer</tem:cPasswordUsuario>
</tem:LoginExternoSUC>
</soapenv:Body>
</soapenv:Envelope>
Ekomercio Electrónico, S.A. de C.V., es propietario intelectual del contenido de este documento y se considera dentro del régimen de Pág. 23
información confidencial. Queda prohibida su reproducción total o parcial sin la autorización explícita.
Documento Funcional
Versión 3.0- 21 Julio 2017
3 ValidarUUIDSUCv40
Se utiliza para consultar el estado del documento, la respuesta puede ser Cancelado o Vigente.
REQUEST
Nombre Tipo de dato Longitud
CFDI_UUID char 36
RFCReceptor varchar 13
RFCEmisor varchar 13
máximo 19 dígitos y 4 de ellos pueden estar a la
MontoTotal money
derecha del decimal
TipoDoc (Requerido) Integer ( 0=CFDI , 1=RETEN ) 1
Token varchar 50
RESPONSE
Nombre Tipo de dato Longitud
Estado bool True or false
Mensaje String 250 caracteres
Datos objeto Estado, Mensaje y Dato
UUID String 36
EsCancelable String Catalogo SAT
Estado String Vigente / Cancelado
EstatusCancelacion String Catalogo SAT
ValidacionEFOS Integer 2
Ekomercio Electrónico, S.A. de C.V., es propietario intelectual del contenido de este documento y se considera dentro del régimen de Pág. 24
información confidencial. Queda prohibida su reproducción total o parcial sin la autorización explícita.
Documento Funcional
Versión 3.0- 21 Julio 2017
Ekomercio Electrónico, S.A. de C.V., es propietario intelectual del contenido de este documento y se considera dentro del régimen de Pág. 25
información confidencial. Queda prohibida su reproducción total o parcial sin la autorización explícita.
Documento Funcional
Versión 3.0- 21 Julio 2017
ERRORES ESPERADOS
Los errores esperados son:
Ekomercio Electrónico, S.A. de C.V., es propietario intelectual del contenido de este documento y se considera dentro del régimen de Pág. 26
información confidencial. Queda prohibida su reproducción total o parcial sin la autorización explícita.
Documento Funcional
Versión 3.0- 21 Julio 2017
WSCFDICancelacion
<ConsultarUUIDRelacionadosSUC xmlns="http://tempuri.org/">
<cUUID>string</cUUID>
<cToken>string</cToken>
</ConsultarUUIDRelacionadosSUC>
Este método se utiliza para consultar si un UUID en particular contiene documentos
relacionados. Si tiene documentos relacionados se retornaría la lista con el detalle
de dichos documentos.
cUUID. Requerido. Es el UUID del documento que se desea consultar
cToken. Requerido
3
La RESPUESTA del método debe retornar los siguientes parámetros en una Lista por
ConsultarUUIDRelacionadosSUC cada UUID Relacionado que contenga el UUID consultado
- Mensaje
- Estado
- CFDI_UUID
- UUID_Relacionado
- RFC_Emisor
- RFC_Receptor
- Tipo_Relacion
- Fecha_Consulta
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:tem="http://tempuri.org/">
<soapenv:Header/>
<soapenv:Body>
Ejemplo Request: <tem: ConsultarUUIDRelacionadosSUC >
ConsultarUUIDRelacionadosSUC <tem:UUID>665ABCD7-24BC-47FA-90A9-82A1D2744C61</tem:string>
<tem:cToken>XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX8=</tem:cToken>
</tem: ConsultarUUIDRelacionadosSUC >
</soapenv:Body>
</soapenv:Envelope>
Ekomercio Electrónico, S.A. de C.V., es propietario intelectual del contenido de este documento y se considera dentro del régimen de Pág. 27
información confidencial. Queda prohibida su reproducción total o parcial sin la autorización explícita.
Documento Funcional
Versión 3.0- 21 Julio 2017
CancelarDocumentoFirmadoSUCv40
Se utiliza para generar una solicitud de cancelación Firmada de un documento.
Las solicitudes serán recibidas y validadas con el token Externo obtenido y debe corresponder al usuario.
** NO es necesario realizar el registro del Certificado y el RFC Emisor al usuario.
REQUEST
Nombre Tipo de dato Longitud
RFCEmisor varchar 13
XML Firmado en Base 64
RequestFirmadoCF Cancelacion_CFDI_4
DI.xml .0.pdf
RequestFirmadoRet CancelacionRetV2.p
cSolicitudFirmada String Base 64 encion.xml df
Se utiliza para generar una solicitud de cancelación Firmada de un documento.
Las solicitudes serán recibidas y validadas con el token Externo obtenido y debe
corresponder al usuario.
** NO es necesario realizar el registro del Certificado y el RFC Emisor al usuario.
CFDI_UUID char 36
RFCReceptor varchar 13
máximo 19 dígitos y 4 de ellos pueden estar a la derecha del
MontoTotal money
decimal
Motivo (Requerido) String ( 01, 02, 03, 04) 2
FolioSustitucion (Condicional) String (UUID) 36 (Requerido si Motivo = 01)
TipoDoc (Requerido) Integer ( 0=CFDI , 1=RETEN ) 1
Token varchar 50
<CancelarDocumentoFirmadoSUCv40 xmlns="http://tempuri.org/">
<cRFCEmisor>string</cRFCEmisor>
<cSolicitudFirmada>StringBase64_XMLFirmado</cSolicitudFirmada>
<cToken>string</cToken>
<oListaSolicitudCancelacion>
<SolicitudCancelacionDTO>
<CFDI_UUID>string</CFDI_UUID>
<RFCReceptor>string</RFCReceptor>
<RFCEmisor>string</RFCEmisor>
<MontoTotal>decimal</MontoTotal>
<Motivo>string</Motivo>
<FolioSustitucion>string</FolioSustitucion>
<TipoDoc>integer</TipoDoc>
</SolicitudCancelacionDTO>
<SolicitudCancelacionDTO>
<CFDI_UUID>string</CFDI_UUID>
<RFCReceptor>string</RFCReceptor>
<RFCEmisor>string</RFCEmisor>
<MontoTotal>decimal</MontoTotal>
<Motivo>string</Motivo>
<FolioSustitucion>string</FolioSustitucion>
<TipoDoc>integer</TipoDoc>
</SolicitudCancelacionDTO>
</oListaSolicitudCancelacion>
</CancelarDocumentoFirmadoSUCv40>
Ekomercio Electrónico, S.A. de C.V., es propietario intelectual del contenido de este documento y se considera dentro del régimen de Pág. 28
información confidencial. Queda prohibida su reproducción total o parcial sin la autorización explícita.
Documento Funcional
Versión 3.0- 21 Julio 2017
RESPONSE
Nombre Tipo de dato Longitud
Estado bool True or false
Mensaje String 250 caracteres
Datos objeto Estado, Mensaje y Dato
CFDI_UUID String 36
RFCEmisor varchar 13
RFCReceptor varchar 13
máximo 19 dígitos y 4 de ellos pueden estar a la derecha
MontoTotal money
del decimal
Motivo (Requerido) String ( 01, 02, 03, 04) 2
FolioSustitucion (Condicional) String (UUID) 36 (Requerido si Motivo = 01)
TipoDoc (Requerido) Integer ( 0=CFDI , 1=RETEN ) 1
Ekomercio Electrónico, S.A. de C.V., es propietario intelectual del contenido de este documento y se considera dentro del régimen de Pág. 29
información confidencial. Queda prohibida su reproducción total o parcial sin la autorización explícita.
Documento Funcional
Versión 3.0- 21 Julio 2017
Ekomercio Electrónico, S.A. de C.V., es propietario intelectual del contenido de este documento y se considera dentro del régimen de Pág. 30
información confidencial. Queda prohibida su reproducción total o parcial sin la autorización explícita.
Documento Funcional
Versión 3.0- 21 Julio 2017
WSCFDICancelacion
<CancelarDocumentoFirmadoSUC xmlns="http://tempuri.org/">
<cRFCEmisor>string</cRFCEmisor>
<cSolicitudFirmada>string</cSolicitudFirmada>
<cToken>string</cToken>
<oListaSolicitudCancelacion>
<SolicitudCancelacionDTO>
<CFDI_UUID>string</CFDI_UUID>
<RFCReceptor>string</RFCReceptor>
<RFCEmisor>string</RFCEmisor>
<MontoTotal>decimal</MontoTotal>
</SolicitudCancelacionDTO>
<SolicitudCancelacionDTO>
<CFDI_UUID>string</CFDI_UUID>
4 <RFCReceptor>string</RFCReceptor>
<RFCEmisor>string</RFCEmisor>
CancelarDocumento <MontoTotal>decimal</MontoTotal>
FirmadoSUC </SolicitudCancelacionDTO>
</oListaSolicitudCancelacion>
</CancelarDocumentoFirmadoSUC>
Se utiliza para generar una solicitud de cancelación Firmada de un documento.
Las solicitudes serán recibidas y validadas con el token Externo obtenido y debe
corresponder al usuario.
** NO es necesario realizar el registro del Certificado y el RFC Emisor al usuario.
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:tem="http://tempuri.org/">
<soapenv:Header/>
<soapenv:Body>
<tem:CancelarDocumentoFirmadoSUC>
<tem:cRFCEmisor>AAQM610917QJA</tem:cRFCEmisor>
<tem:cSolicitudFirmada>XML Firmado en Base 64 </tem:cSolicitudFirmada>
<tem:oListaSolicitudCancelacion>
Ejemplo Request: <!--One or more repetitions:-->
CancelarDocumento <tem:SolicitudCancelacionFirmadaDTO>
FirmadoSUC <tem:CFDI_UUID>108a66af-d537-4fb9-b5e8-b0bda282afb7</tem:CFDI_UUID>
<tem:RFCReceptor>PZA000413788</tem:RFCReceptor>
<tem:MontoTotal>6695.79</tem:MontoTotal>
</tem:SolicitudCancelacionFirmadaDTO>
</tem:oListaSolicitudCancelacion>
<tem:cToken>xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx=<</tem:cToken>
</tem:CancelarDocumentoFirmadoSUC>
</soapenv:Body>
</soapenv:Envelope>
Ekomercio Electrónico, S.A. de C.V., es propietario intelectual del contenido de este documento y se considera dentro del régimen de Pág. 31
información confidencial. Queda prohibida su reproducción total o parcial sin la autorización explícita.
Documento Funcional
Versión 3.0- 21 Julio 2017
Ekomercio Electrónico, S.A. de C.V., es propietario intelectual del contenido de este documento y se considera dentro del régimen de Pág. 32
información confidencial. Queda prohibida su reproducción total o parcial sin la autorización explícita.
Documento Funcional
Versión 3.0- 21 Julio 2017
public static string SignXml(ref XmlDocument Doc, RSA Key, X509Certificate2 cert)
{
// Check arguments.
if (Doc == null)
throw new ArgumentException("Doc");
if (Key == null)
throw new ArgumentException("Key");
// Create a SignedXml object.
SignedXml signedXml = new SignedXml(Doc);
// Add the key to the SignedXml document.
signedXml.SigningKey = Key;
signedXml.KeyInfo = new KeyInfo();
KeyInfoX509Data keyInfoClause = new KeyInfoX509Data(cert);
string serialNumber = cert.GetSerialNumberString();
keyInfoClause.AddIssuerSerial(cert.IssuerName.Name, serialNumber);
signedXml.KeyInfo.AddClause(keyInfoClause);
// Create a reference to be signed.
Reference reference = new Reference();
reference.Uri = "";
// Add an enveloped transformation to the reference.
XmlDsigEnvelopedSignatureTransform env = new XmlDsigEnvelopedSignatureTransform();
reference.AddTransform(env);
// Add the reference to the SignedXml object.
signedXml.AddReference(reference);
// Compute the signature.
signedXml.ComputeSignature();
// Get the XML representation of the signature and save
// it to an XmlElement object.
XmlElement xmlDigitalSignature = signedXml.GetXml();
// Append the element to the XML document.
Doc.DocumentElement.AppendChild(Doc.ImportNode(xmlDigitalSignature, true));
return Doc.OuterXml;
}
Ekomercio Electrónico, S.A. de C.V., es propietario intelectual del contenido de este documento y se considera dentro del régimen de Pág. 33
información confidencial. Queda prohibida su reproducción total o parcial sin la autorización explícita.
Documento Funcional
Versión 3.0- 21 Julio 2017
5 ConsultaCancelacionSUC
Se utiliza para consultar el estado de cancelación.
Los tipos de datos enviados son:
Nombre Tipo de dato Longitud
CFDI_UUID char 36
FechaInicio
datetime datetime
FEchaFin
Token varchar 50
Los tipos de datos recibidos son:
Nombre Tipo de dato Longitud
CFDI_UUID char 36
RFCEmisor varchar 14
RFCREceptor varchar 14
EstadoDucmento varchar 150
FechaSolicitud datetime datetime
EstadoCancelacion varchar 50
Observaciones Varchar 250
FechaEstatus Datetime datetime
máximo 19 dígitos y 4 de ellos pueden estar a la
MontoTotal money
derecha del decimal
XMLAcuseB64 Varchar MAX
EJEMPLO REQUEST (Cancelado) EJEMPLO RESPONSE
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
<Envelope xmlns="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>
<Body> <ConsultaCancelacionSUCResponse xmlns="http://tempuri.org/">
<ConsultaCancelacionSUC xmlns="http://tempuri.org/"> <ConsultaCancelacionSUCResult>
<Estado>true</Estado>
<!-- Optional --> <Mensaje>La consulta ha sido obtenida</Mensaje>
<oListUUID> <Datos>
<CancelacionDTO>
<string>00000EDF-E03E-4C4D-BF1B-13DC84236899</string> <CFDI_UUID>00000EDF-E03E-4C4D-BF1B-13DC84236899</CFDI_UUID>
<RFCReceptor>MOPJ531118QX1</RFCReceptor>
</oListUUID> <RFCEmisor>PSS970203FI6</RFCEmisor>
<dFechaInicio>2020-01-01</dFechaInicio> <EstadoDocumento>Cancelado</EstadoDocumento>
<FechaSolicitud>2020-01-01T15:13:44.493</FechaSolicitud>
<dFechaFin>2020-01-01</dFechaFin> <EstadoCancelacion>Cancelado sin aceptación</EstadoCancelacion>
<AutorizoCliente xsi:nil="true" />
<Observaciones>Cancelable sin aceptación</Observaciones>
<cToken>fyrphJNw7QBGUmb8yA2Kby9MppIF9bWmtxOZsYHvcxY=</cT <FechaEstatus>2020-01-01T03:15:31</FechaEstatus>
<MontoTotal>1388.0100</MontoTotal>
oken> <XMLAcuseB64>PD94bWwgdmVyc2lvbj0iMS4wIj8+DQo8QWN1c2U
</ConsultaCancelacionSUC> geG1sbnM6eHNpPSJodHRwOi8vd3d3Lncz
Lm9yZy8yMDAxL1hNTFNjaGVtYS1pbnN0YW5jZSIgeG1sbnM6eHNkPSJodHRwOi8
</Body> vd3d3LnczLm9yZy8yMDAxL1hNTFNjaGVtYSI+
</Envelope> DQogIDxFeHRlbnNpb25EYXRhIC8+DQogIDxDb2RpZ29Fc3RhdHVzPlMgLSBDb21w
cm9iYW50ZSBvYnRlbmlkbyBzYXRpc2ZhY3Rv
cmlhbWVudGUuPC9Db2RpZ29Fc3RhdHVzPg0KICA8RXNDYW5jZWxhYmxlPkNh
bmNlbGFibGUgc2luIGFjZXB0YWNp8248L0VzQ
2FuY2VsYWJsZT4NCiAgPEVzdGFkbz5DYW5jZWxhZG88L0VzdGFkbz4NCiAgPEV
zdGF0dXNDYW5jZWxhY2lvbj5DYW5jZWxhZG
8gc2luIGFjZXB0YWNp8248L0VzdGF0dXNDYW5jZWxhY2lvbj4NCjwvQWN1c
2U+</XMLAcuseB64>
</CancelacionDTO>
</Datos>
</ConsultaCancelacionSUCResult>
</ConsultaCancelacionSUCResponse>
</soap:Body>
</soap:Envelope>
Ekomercio Electrónico, S.A. de C.V., es propietario intelectual del contenido de este documento y se considera dentro del régimen de Pág. 34
información confidencial. Queda prohibida su reproducción total o parcial sin la autorización explícita.
Documento Funcional
Versión 3.0- 21 Julio 2017
</ConsultaCancelacionSUC> <MontoTotal>342.0200</MontoTotal><XMLAcuseB64>PD94bWwgdmVyc2lvbj0iMS4wIj8+DQo8QWN1c2UgeG1sbnM6eHNp
</Body> PSJodHRw
Oi8vd3d3LnczLm9yZy8yMDAxL1hNTFNjaGVtYS1pbnN0YW5jZSIgeG1sbnM6eHNkPSJodHRwOi8vd3d3LnczL
</Envelope> m9yZy8yMDAxL1hNTFNjaGVtYSI+DQogIDxFeHRlbnNpb25EYXRhIC8+DQogIDxDb2RpZ29Fc3RhdHVzPlMgLS
BDb21wcm9iYW50ZSBvYnRlbmlkbyBzYXRpc2ZhY3RvcmlhbWVudGUuPC9Db2RpZ29Fc3RhdHVzPg0KICA8R
XNDYW5jZWxhYmxlPk5vIGNhbmNlbGFibGU8L0VzQ2FuY2VsYWJsZT4NCiAgPEVzdGFkbz5WaWdlbnRlPC9Fc3
RhZG8+DQogIDxFc3RhdHVzQ2FuY2VsYWNpb24gLz4NCjwvQWN1c2U+</XMLAcuseB64>
</CancelacionDTO>
</Datos>
</ConsultaCancelacionSUCResult>
</ConsultaCancelacionSUCResponse>
</soap:Body>
</soap:Envelope>
Ekomercio Electrónico, S.A. de C.V., es propietario intelectual del contenido de este documento y se considera dentro del régimen de Pág. 35
información confidencial. Queda prohibida su reproducción total o parcial sin la autorización explícita.
Documento Funcional
Versión 3.0- 21 Julio 2017
ERRORES ESPERADOS
WSCFDICancelacion
Ekomercio Electrónico, S.A. de C.V., es propietario intelectual del contenido de este documento y se considera dentro del régimen de Pág. 36
información confidencial. Queda prohibida su reproducción total o parcial sin la autorización explícita.
Documento Funcional
Versión 3.0- 21 Julio 2017
<?xml version="1.0"?>
<Acuse xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<CodigoEstatus>S - Comprobante obtenido satisfactoriamente.</CodigoEstatus>
<EsCancelable>Cancelable sin aceptacin</EsCancelable>
<Estado>Vigente</Estado>
<EstatusCancelacion>En Proceso</EstatusCancelacion>
</Acuse>
<?xml version="1.0"?>
5 <Acuse xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<CodigoEstatus>S - Comprobante obtenido satisfactoriamente.</CodigoEstatus>
EJEMPLOS <EsCancelable>Cancelable con aceptacin</EsCancelable>
XMLAcuseB64 <Estado>Cancelado</Estado>
<EstatusCancelacion>Aceptado</EstatusCancelacion>
</Acuse>
<?xml version="1.0"?>
<Acuse xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<CodigoEstatus>S - Comprobante obtenido satisfactoriamente.</CodigoEstatus>
<EsCancelable>Cancelable con aceptacin</EsCancelable>
<Estado>Vigente</Estado>
<EstatusCancelacion>Rechazado</EstatusCancelacion>
</Acuse>
Ekomercio Electrónico, S.A. de C.V., es propietario intelectual del contenido de este documento y se considera dentro del régimen de Pág. 37
información confidencial. Queda prohibida su reproducción total o parcial sin la autorización explícita.
Documento Funcional
Versión 3.0- 21 Julio 2017
PROCESO 2 RECEPCION
SIN REGISTRO DE LLAVES EN LA PLATAFORMA DE EKOMERCIO
WSCFDICancelacion
< ConsultarCancelacionesMultiReceptorSUC xmlns="http://tempuri.org/" >
<cToken>string</cToken>
<cRFCReceptor>string</c cRFCReceptor >
</ConsultarCancelacionesMultiReceptorSUC >
Este método sirve para consultar las cancelaciones pendientes de Aceptar o Rechazar.
La consulta se emite por un solo RFC el cual será el Receptor del o los documentos que
requieran la Autorización.
6
cToken. Requerido. Token de Autenticación el cual puede estar ligado a MULTIPLES
RFC.
ConsultarCancelacionesMultiReceptorSUC
La respuesta del WS debe retornar un LISTADO DE UUID PENDIENTES DE ACEPTAR O
RECHAZAR POR EL RFC SOLICITADO.
EJMPLO DE RESPUESTA:
<oListUUIDs>
<uuid>XXXXXXX</uuid>
<uuid>XXXXXXX</uuid>
<uuid>XXXXXXX</uuid>
<uuid>XXXXXXX</uuid>
<oListUUIDs>
Ekomercio Electrónico, S.A. de C.V., es propietario intelectual del contenido de este documento y se considera dentro del régimen de Pág. 38
información confidencial. Queda prohibida su reproducción total o parcial sin la autorización explícita.
Documento Funcional
Versión 3.0- 21 Julio 2017
WSCFDICancelacion
< AceptarRechazarReceptorFirmadoSUC xmlns="http://tempuri.org/">
<cToken>string</cToken>
<cXMLRespuestaFirmadoB64>XMLBASE64</cXMLRespuestaFirmadoB64>
</ AceptarRechazarReceptorFirmadoSUC >
Este método sirve para dar la aceptación o rechazo a las cancelaciones consultadas
previamente. La aceptación se emite por un solo RFC el cual será el Receptor del o los
documentos.
cToken. Requerido. Token de Autenticación el cual puede estar ligado a Múltiples
RFC.
cXMLRespuestaFirmadoB64. Requerido. XML de Respuesta en formato Base 64. Este
7 XML debe estar firmado con las llaves del RFC Receptor y deberá estar codificado en
Base 64.
AceptarRechazarReceptorFirmadoSUC La respuesta del WS debe retornar un LISTADO DE UUID con la indicación definitiva
del SAT respecto a la respuesta de Aceptación o Rechazo.
EJMPLO DE RESPUESTA:
<oListUUIDs>
<oUUIDs>
<cCFDI_UUID>string</cCFDI_UUID>
<cRespuestaSAT>binary</ cRespuestaSAT >
</oUUIDs>
< oUUIDs >
<cCFDI_UUID>string</cCFDI_UUID>
<cRespuestaSAT>binary</ cRespuestaSAT >
</oUUIDs>
</oListUUIDs>
Ekomercio Electrónico, S.A. de C.V., es propietario intelectual del contenido de este documento y se considera dentro del régimen de Pág. 39
información confidencial. Queda prohibida su reproducción total o parcial sin la autorización explícita.
Documento Funcional
Versión 3.0- 21 Julio 2017
<Transforms>
<Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature" />
</Transforms>
<DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1" />
<DigestValue>JD5L7EFAlJkAARDVTQN10+cq2JQ=</DigestValue>
</Reference>
</SignedInfo>
<SignatureValue>DRL8HT2......o8o5CnywQ==</SignatureValue>
<KeyInfo>
<X509Data>
<X509IssuerSerial>
<X509IssuerName>OID.1.2.840.113549.1.9.2=Responsable: Administración Central de Servicios Tributarios al
Contribuyente, OID.2.5.4.45=SAT970701NN3, L=Cuauhtémoc, S=Distrito Federal, C=MX, PostalCode=06300, STREET="Av. Hidalgo 77,
Col. Guerrero", E=acods@sat.gob.mx, OU=Administración de Seguridad de la Información, O=Servicio de Administración Tributaria,
CN=A.C. del Servicio de Administración Tributaria</X509IssuerName>
<X509SerialNumber>275106190557734483187066766810932857008485905973</X509SerialNumber>
</X509IssuerSerial>
<X509Certificate>MIIGVDCCB.....Og==</X509Certificate>
</X509Data>
</KeyInfo>
</Signature>
</SolicitudAceptacionRechazo>
Aceptacion_SINFirm Aceptacion_Firmad
ar.xml o.xml
WSCFDICancelacion
<Envelope xmlns="http://schemas.xmlsoap.org/soap/envelope/">
<Body>
<ConsultarRelacionadosSUC xmlns="http://tempuri.org/">
<cRFC>[string?]</cRFC>
<cTipoRFC>[int]</cTipoRFC>
<cCFDI_UUID>[string?]</cCFDI_UUID>
<cToken>[string?]</cToken>
</ConsultarRelacionadosSUC>
</Body>
</Envelope>
Este método se utiliza para consultar si un UUID en particular tiene
8 documentos relacionados (hijos o padres). La consulta se puede realizar
cuando se conoce el UUUID y el RFC que emitió o recibió dicho documento.
ConsultarRelacionadosEmisorReceptorSUC
Variables de la petición
<cRFC> RFC que emitió o recibió el documento
<cTipoRFC> Indicar 1 si es RFC Emisor y 2 si es RFC Receptor.
<cCFDI_UUID> Indicar el CFDI_UUID a consultar.
<cToken> Token asociado ligado al RFC ingresado. El token debe pertenecer
al RFC con el que se está consultando ya sea emisor o receptor.
Ekomercio Electrónico, S.A. de C.V., es propietario intelectual del contenido de este documento y se considera dentro del régimen de Pág. 40
información confidencial. Queda prohibida su reproducción total o parcial sin la autorización explícita.
Documento Funcional
Versión 3.0- 21 Julio 2017
<Envelope xmlns="http://schemas.xmlsoap.org/soap/envelope/">
<Body>
<ConsultarRelacionadosSUC xmlns="http://tempuri.org/">
<cRFC>SIH9511279T7</cRFC>
Ejemplo Request: <cTipoRFC>2</cTipoRFC>
ConsultarRelacionadosEmisorReceptorSUC <cCFDI_UUID>F197AD0A-5A3D-4997-AA72-240561EA7590</cCFDI_UUID>
<cToken>qW+aR1zAgOAUr2VwwK4bI9LeF20tRj3BjJVYvguP4Ss=</cToken>
</ConsultarRelacionadosSUC>
</Body>
</Envelope>
Ekomercio Electrónico, S.A. de C.V., es propietario intelectual del contenido de este documento y se considera dentro del régimen de Pág. 41
información confidencial. Queda prohibida su reproducción total o parcial sin la autorización explícita.
Documento Funcional
Versión 3.0- 21 Julio 2017
SolicitarCancelacionSUC
Se utiliza para solicitar cancelaciones.
Los tipos de datos enviados son:
Nombre Tipo de dato Longitud
CFDI_UUID char 36
RFCEmisor Varchar 14
RFCReceptor Varchar 14
máximo 19 dígitos y 4 de ellos pueden estar a la
MontoTotal Money
derecha del decimal
Token Varchar 50
Los tipos de datos recibidos son:
Nombre Tipo de dato Longitud
Estado bool True/False
Mensaje string 250 caracteres
Datos objecto Estado, Mensaje y Datos
CFDI_UUID char 36
RFCEmisor varchar 14
RFCREceptor varchar 14
EstadoDucmento varchar 150
máximo 19 dígitos y 4 de ellos pueden estar a la
MontoTotal money
derecha del decimal
EJEMPLO REQUEST (Solicitar Cancelación) EJEMPLO RESPONSE
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="utf-8"?> <soap:Envelope
<Envelope xmlns="http://schemas.xmlsoap.org/soap/envelope/"> xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
<Body> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
<SolicitarCancelacionSUC xmlns="http://tempuri.org/"> xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<!-- Optional --> <soap:Body>
<oListaSolicitudCancelacion> <SolicitarCancelacionSUCResponse xmlns="http://tempuri.org/">
<!-- Optional --> <SolicitarCancelacionSUCResult>
<SolicitudCancelacionDTO> <Estado>true</Estado>
<CFDI_UUID>F1FB464A-3DE0-4794-B287- <Mensaje />
4DE9972A7D6F</CFDI_UUID> <Datos>
<RFCEmisor>BAR011108CC6</RFCEmisor> <RespuestaDTOOfCancelacionDTO>
<RFCReceptor>MEMD720615GC7</RFCReceptor> <Estado>true</Estado>
<MontoTotal>102.45</MontoTotal> <Mensaje>Cancelacion recibida</Mensaje>
</SolicitudCancelacionDTO> <Datos>
</oListaSolicitudCancelacion> <CFDI_UUID> F1FB464A-3DE0-4794-B287-
4DE9972A7D6F </CFDI_UUID>
<cToken>o6KNI+gX++bEYUiWT+AWmHpr2QvLu1hZUY9igHaZuzg=</cToken> <RFCReceptor> MEMD720615GC7</RFCReceptor>
</SolicitarCancelacionSUC> <RFCEmisor> BAR011108CC6</RFCEmisor>
</Body> <FechaSolicitud>2020-01-01T12:59:50</FechaSolicitud>
<AutorizoCliente xsi:nil="true" />
</Envelope>
<FechaEstatus xsi:nil="true" />
<MontoTotal>100.00</MontoTotal>
</Datos>
</RespuestaDTOOfCancelacionDTO>
</Datos>
</SolicitarCancelacionSUCResult>
</SolicitarCancelacionSUCResponse>
</soap:Body>
</soap:Envelope>
ERRORES ESPERADOS
Ekomercio Electrónico, S.A. de C.V., es propietario intelectual del contenido de este documento y se considera dentro del régimen de Pág. 42
información confidencial. Queda prohibida su reproducción total o parcial sin la autorización explícita.
Documento Funcional
Versión 3.0- 21 Julio 2017
SolicitarCancelacionSUC
(CancelarDocumentos) Número máximo de cancelaciones
UUID es omitido
Ekomercio Electrónico, S.A. de C.V., es propietario intelectual del contenido de este documento y se considera dentro del régimen de Pág. 43
información confidencial. Queda prohibida su reproducción total o parcial sin la autorización explícita.
Documento Funcional
Versión 3.0- 21 Julio 2017
SolicitarCancelacionSUC
(CancelarDocumentos) Si el monto es null o vacío, por el tipo de dato esperado lo
asigna como 0 y guarda en base la cancelación.
Ekomercio Electrónico, S.A. de C.V., es propietario intelectual del contenido de este documento y se considera dentro del régimen de Pág. 44
información confidencial. Queda prohibida su reproducción total o parcial sin la autorización explícita.
Documento Funcional
Versión 3.0- 21 Julio 2017
ConsultaCancelacionSUC
(ConsultarCancelacionesEmisor)
UUID omitido
Ekomercio Electrónico, S.A. de C.V., es propietario intelectual del contenido de este documento y se considera dentro del régimen de Pág. 45
información confidencial. Queda prohibida su reproducción total o parcial sin la autorización explícita.
Documento Funcional
Versión 3.0- 21 Julio 2017
ValidarUUIDSUC
(CancelarDocumentos)
UUID omitido
Ekomercio Electrónico, S.A. de C.V., es propietario intelectual del contenido de este documento y se considera dentro del régimen de Pág. 46
información confidencial. Queda prohibida su reproducción total o parcial sin la autorización explícita.
Documento Funcional
Versión 3.0- 21 Julio 2017
ValidarUUIDSUC
(CancelarDocumentos)
Ekomercio Electrónico, S.A. de C.V., es propietario intelectual del contenido de este documento y se considera dentro del régimen de Pág. 47
información confidencial. Queda prohibida su reproducción total o parcial sin la autorización explícita.