API > SPFE - Consulta de pagos, cobros, rechazos e impagos

SPFE - Consulta de pagos, cobros, rechazos e impagos

GET  https://{entorno}.ticketbaiws.eus/spfe-estados/

La Ley 18/2022 «Crea y Crece» (desarrollada por el RD 238/2026 y la Orden HAC/1028/2026) obliga a expedir las facturas entre empresas y profesionales en formato electrónico y a informar de su estado: pago, cobro, rechazo o impago. Ticketbai WS envía automáticamente a la Solución Pública de Facturación Electrónica (SPFE) de la AEAT las facturas completas a clientes españoles con NIF que emites con el API, en formato UBL, y descarga las facturas que recibes de tus proveedores.

Estos métodos solo están disponibles para las empresas que tienen activado el envío a la SPFE. Se activa en los datos de la empresa del área privada (Factura electrónica B2B) o con el parámetro spfe de los métodos Nueva empresa y Editar datos empresa. Al activarlo se envían las facturas desde ese día.

Devuelve los últimos 100 estados (pago, cobro, rechazo, impago) comunicados a la SPFE con POST spfe-estados o desde el área privada, con el resultado de cada uno: PENDING (en cola), OK (aceptado por la AEAT) o ERROR (con la lista de errores). Todos los filtros son opcionales y se pueden combinar.

Los métodos GET permiten el envío de los parámetros en el body como payload JSON o mediante query string en la URL como se ve en el ejemplo cURL.

PARÁMETROS

id integer opcional
Identificador devuelto por POST spfe-estados
128
serie string opcional
Serie de una factura emitida
A
numero string opcional
Número de una factura emitida
2026000245
factura string opcional
Serie y número de la factura (emitida o recibida)
F2026-0153
nif_emisor string opcional
NIF del emisor de la factura
B01000012


RESPUESTA (return, una fila por estado)

id integer
Identificador del estado en Ticketbai WS
128
estado / baja
Estado comunicado y si es una anulación
pago
factura, fecha_factura, nif_emisor
Factura a la que se refiere
F2026-0153
fecha / vencimiento
Fechas comunicadas (dd/mm/yyyy)
10/11/2026
result string
PENDING en cola, OK aceptado por la AEAT, ERROR rechazado (ver errores)
OK
errores array
Lista de errores de la AEAT: codigo y descripcion


GET https://{entorno}.ticketbaiws.eus/spfe-estados/
$ curl --request GET \
     --url 'https://api-test.ticketbaiws.eus/spfe-estados/?factura=F2026-0153&nif_emisor=B01000012' \
     --header 'Accept: application/json' \
     --header 'Token: xxx' \
     --header 'Nif: 00000014Z'
$ composer require guzzlehttp/guzzle
<?php
require_once('vendor/autoload.php');

$client = new \GuzzleHttp\Client();

$response = $client->request('GET', 'https://api-test.ticketbaiws.eus/spfe-estados/?factura=F2026-0153&nif_emisor=B01000012', [
  'headers' => [
    'Accept' => 'application/json',
    'Token' => 'xxx',
    'Nif' => '00000014Z'
  ],
]);

echo $response->getBody();
$ python -m pip install requests
import requests

url = "https://api-test.ticketbaiws.eus/spfe-estados/?factura=F2026-0153&nif_emisor=B01000012"
headers = {"Accept": "application/json", "Token": "xxx", "Nif": "00000014Z"}
response = requests.request("GET", url, headers=headers)
print(response.text)
CURL *hnd = curl_easy_init();

curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "GET");
curl_easy_setopt(hnd, CURLOPT_URL, "https://api-test.ticketbaiws.eus/spfe-estados/?factura=F2026-0153&nif_emisor=B01000012");

struct curl_slist *headers = NULL;
headers = curl_slist_append(headers, "Accept: application/json");
headers = curl_slist_append(headers, "Token: xxx");
headers = curl_slist_append(headers, "Nif: 00000014Z");
curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers);

CURLcode ret = curl_easy_perform(hnd);
OkHttpClient client = new OkHttpClient();

Request request = new Request.Builder()
  .url("https://api-test.ticketbaiws.eus/spfe-estados/?factura=F2026-0153&nif_emisor=B01000012")
  .get()
  .addHeader("Accept", "application/json")
  .addHeader("Token", "xxx")
  .addHeader("Nif", "00000014Z")
  .build();

Response response = client.newCall(request).execute();
{ } Response JSON
HTTP/1.1 200 OK
{
    "result": "OK",
    "return": [
        {
            "id": 128,
            "estado": "pago",
            "baja": false,
            "factura": "F2026-0153",
            "fecha_factura": "03\/11\/2026",
            "nif_emisor": "B01000012",
            "fecha": "10\/11\/2026",
            "vencimiento": "03\/12\/2026",
            "result": "OK",
            "errores": []
        },
        {
            "id": 131,
            "estado": "cobro",
            "baja": false,
            "factura": "A2026000245",
            "fecha_factura": "28\/10\/2026",
            "nif_emisor": "00000014Z",
            "fecha": "09\/11\/2026",
            "vencimiento": "27\/11\/2026",
            "result": "OK",
            "errores": []
        }
    ],
    "msg": null
}

Métodos TicketBAI / Verifactu

Documento representación

Métodos específicos para BATUZ BIZKAIA

Factura electrónica B2B - SPFE (Ley Crea y Crece)

Otros métodos