Referencia
Para todas las solicitudes SOAP que realice al servicio web de CSPlug consulte la referencia que aquí se describe.
CSPlug WS puede ser consumido prácticamente desde cualquier lenguaje de programación, la capa SOAP es de tipo Document/literal wrapped
para asegurar la mayor compatibilidad. Se recomienda utilizar SOAP 1.2.
WS SOAP 1.2. Document/literal wrapped
Credenciales de contratación vigente mediante nodo SOAP.
password
: Password de contratación.
Emisión
Funciones para la emisión de CFDI 4.0 mediante remisiones en formato txt
y xml
.
Remisiones TXT
Emite facturas mediante remisiones en formato TXT
siguiendo las especificaciones de los layouts publicados por CSFacturación. Método timbrarTxt
.
Cuerpo SOAP
Emite facturas mediante remisiones en formato TXT siguiendo las especificaciones de los layouts publicados por CSFacturación. Método timbrarTxt
Nombre de la variable | Tipo | Requerido | Descripción |
---|---|---|---|
password | String | Sí | Password de tu cuenta de CSFacturación |
txt | String | Sí | Archivo TXT codificado en Base64 |
Timbrar remisiones XML
Emite facturas mediante remisiones en formato XML
siguiendo las especificaciones XSD publicadas por el SAT. Método timbrarXml
.
Cuerpo SOAP
Nombre de la variable | Tipo | Requerido | Descripción |
---|---|---|---|
password | String | Sí | Password de tu cuenta de CSFacturación |
xml | Binary | Sí | Archivo XML codificado en Base64 |
Respuesta SOAP
Todas las respuestas de procesos de facturación están definidas por la estructura TimbradoResponse
:
Campo | Tipo | Nillable | Descripción |
---|---|---|---|
xml | String | Sí | CFDI codificado en base64 |
String | Sí | Representación impresa codificada en base64 | |
mensaje | String | No | Mensaje descriptivo sobre la operación realizada |
código | String | No | Código de referencia sobre la operación realizada |
codigoPac | String | Sí | Código de referencia en situaciones de errores a nivel de certificación |
qr | String | Sí | Cadena de texto del código QR |
resumen | String | SÍ | Resumen de la transacción |
uuid | String | Sí | Folio fiscal asignado al CFDI |
exito | bool | No | Indica si la operación fue exitosa o no |
Códigos de Referencia
Código | Descripción |
---|---|
000 | La operación de timbrado fue exitosa. |
100 | Ocurrió un error a nivel de base de datos. Contacte al equipo de soporte |
101 | La construcción del XML fallo debido a una violación al estandar XSD del SAT. |
102 | La construcción del XML fue exitosa, pero no superó las validaciones de certificación (PAC). Consulte el campo codigoPac para referenciar en la matriz de errores correspondiente. |
103 | No se cuenta con una contratación válida o no se dispone de transacciones adicionales. |
104 | La serie establecida no existe. |
105 | No se cuenta con CSD vigentes o activos para el sellado. |
106 | Credenciales inválidas. |
199 | Error desconocido. Contacte al equipo de soporte. |
Resumen TXT
En casos de timbrados exitosos, la respuesta SOAP incluye un resumen de la transacción delimitado por campo|valor
.
Campo | Tipo | Nillable | Descripción |
---|---|---|---|
RFC_EMISOR | String | No | RFC del emisor del CFDI |
CER_EMISOR | String | No | No. Certificado del emisor del CFDI |
UUID | String | No | Folio fiscal del CFDI |
SERIE | String | No | Serie del CFDI |
EMISION | String | No | Fecha de emisión del CFDI |
SELLO_EMISOR | String | No | Sello del emisor (firma digital) |
FECHA_CER | String | No | Fecha de certificación del CFDI |
CER_SAT | String | No | No. Certificado del SAT |
SELLO_SAT | String | No | Sello del SAT (firma digital) |
CADENA_SELLO | String | No | Cadena original, fuente de la firma digital |
Cancelación
Iniciar el proceso de cancelación de CFDI emitidos mediante CSPlug o CSWeb. Método cancelar
.
Nota
Utilice este servicio unicamente y exclusivamente para cancelar Facturas emitidas desde CSPlug
o CSWeb
.
Para cancelar CFDI emitidos desde otro sistema externo a CSFacturación, consulte la sección de Cancelación
Para iniciar el proceso de cancelación, construya un archivo txt
con base a la siguiente estructura:
Campo | Requerido | Descripción |
---|---|---|
rfcEmisor | Sí | RFC del emisor del CFDI a cancelar |
uuid | Sí | Folio fiscal del CFDI a cancelar |
emailEmisor | No | Email del emisor donde se envía la notificación de cancelación. (si no se especifica, se obtiene desde el sistema) |
emailReceptor | No | Email del receptor donde se envía la notificación de cancelación. (ídem) |
motivo | Sí | El motivo o justificación de cancelación |
uuidRelacion | Sí | El UUID relacionado con motivo 01 |
Warning
Todas las solicitudes de cancelación de CFDI NUNCA representan que el CFDI en cuestión ha sido cancelado exitosamente, sino que, el proceso ha sido aceptado y el SAT decidirá si procede o no la cancelación.
Respuesta SOAP
Todas las respuestas de procesos de cancelación están definidas por la estructura CancelacionResponse
:
Campo | Tipo | Nillable | Descripción |
---|---|---|---|
codigo | String | No | Código de referencia sobre la operación |
mensaje | String | No | Mensaje descriptivo sobre la operación |
acuse | String | Sí | Acuse del SAT (XML), indicando que se procedió correctamente con la solicitud. Se codifica en base64 |
Nota
Es importante destacar que, para utilizar este proceso de cancelación, es requerido que el Certificado de Sellos del contribuyente emisor haya sido instalado en nuestra plataforma web. Nuestro equipo técnico explicará detalladamente este proceso en la implementación.
Catálogos
CSFacturación pone a disposición los catálogos del SAT mediante un servicio REST para su consulta en procesos de facturación de sistema a sistema. Están disponibles todos los catálogos que publica el SAT oficialmente. Para listar el nombre completo de cada uno de los catálogos disponibles, consulte:
https://csplug.csfacturacion.com/catalogos
Utilice el esquema de autenticación Basic Auth
para realizar las solicitudes al servicio. Especifique sus
credenciales de contratación:
GET catalogos/${catalogo} HTTP/1.1
Authorization: Basic Zm9vOmJhcg==
Host: csplug.csfacturacion.com
Para consultar los campos disponibles de búsqueda en cada catálogo, realice una petición GET
al catálogo deseado:
GET /catalogos/{nombre_catalogo}
Respuesta:
{
"message": "Catalogos",
"data": [
{
"campo": "valor",
"campo_1": "valor_1"
}
]
}
Ejemplo, consultar las claves de producto o servicio cuya descripción incluya la palabra gasolina
:
GET /catalogos/cfdi_40_productos_servicios?filter[texto]=gasolina HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Basic QUFBMDEwMTAxQUFBOnBhc3M=
Host: csplug.csfacturacion.com
Respuesta:
{
"message": "Catalogos",
"data": [
{
"id": "15101514",
"texto": "Gasolina regular menor a 91 octanos",
"iva_trasladado": "",
"ieps_trasladado": "",
"complemento": "",
"vigencia_desde": "2022-01-01",
"vigencia_hasta": "",
"estimulo_frontera": "1",
"similares": ""
}
// se omite el resto del output para fines de pruebas.
]
}
Multiples Filtros
Puedes realizar busquedas más finas o precisas estableciendo multiples filtros utilizando diferentes campos.
Por ejemplo, filtar por texto = 'azucar' y que tenga estimulo fronterizo:
/catalogos/cfdi_40_productos_servicios?filter[texto]=azucar&filter[estimulo_frontera]=1