API > Documento Representación Verifactu - Enviar documento
Documento Representación Verifactu - Enviar documento
POST https://{entorno}.ticketbaiws.eus/doc-representante/
Permite cargar el modelo del documento de representación de Verifactu requerido para poder hacer envíos a Verifactu con el certificado de Ticketbai WS. Es importante que el fichero que se envíe esté firmado digitalmente por el representante de la empresa con un certificado de representante válido para la AEAT (FNMT, Izenpe...)
PARÁMETROS
-- El método no permite parámetros --
POST https://api.ticketbaiws.eus/doc-representante/
$ curl --request POST \
--url https://api.ticketbaiws.eus/doc-representante/ \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'Token: xxx' \
--header 'Nif: 00000014Z'
--form 'file=@"/ruta/documento-firmado.pdf"'
$ composer require guzzlehttp/guzzle
<?php
require_once('vendor/autoload.php');
$client = new \GuzzleHttp\Client();
$response = $client->request('POST', 'https://api.ticketbaiws.eus/doc-representante/', [
'headers' => [
'Accept' => 'application/json',
'Content-Type' => 'application/json',
'Token' => 'xxx',
'Nif' => '00000014Z'
],
'multipart' => [
[
'name' => 'file',
'contents' => fopen('/ruta/documento-firmado.pdf', 'r'),
'filename' => 'documento-firmado.pdf'
]
]
]);
echo $response->getBody();
$ python -m pip install requests
import requests
url = "https://api.ticketbaiws.eus/doc-representante/"
headers = {"Accept": "application/json", "Token" : "xxx", "Nif" : "00000014Z"}
files = {
"file": ("document-firmado.pdf", open("/ruta/documento-firmado.pdf", "rb"), "application/pdf")
}
response = requests.post(url, headers=headers, files=files)
print(response.text)
CURL *hnd = curl_easy_init();
curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "POST");
curl_easy_setopt(hnd, CURLOPT_URL, "https://api.ticketbaiws.eus/doc-representante/");
struct curl_slist *headers = NULL;
headers = curl_slist_append(headers, "Accept: application/json");
curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers);
// -------------------------
// FORMULARIO MULTIPART
// -------------------------
curl_mime *mime;
curl_mimepart *part;
mime = curl_mime_init(hnd);
// Campo "filename"
part = curl_mime_addpart(mime);
curl_mime_name(part, "filename");
curl_mime_data(part, "documento-firmado.pdf", CURL_ZERO_TERMINATED);
// Campo "file" → fichero real
part = curl_mime_addpart(mime);
curl_mime_name(part, "file");
curl_mime_filedata(part, "/ruta/documento-firmado.pdf");
// Asignar formulario al handle
curl_easy_setopt(hnd, CURLOPT_MIMEPOST, mime);
CURLcode ret = curl_easy_perform(hnd);
OkHttpClient client = new OkHttpClient();
MediaType mediaType = MediaType.parse("application/json");
// Archivo a enviar
File file = new File("/ruta/documento-firmado.pdf");
// Construimos el body multipart
RequestBody requestBody = new MultipartBody.Builder()
.setType(MultipartBody.FORM)
// Campo "file"
.addFormDataPart(
"file", // nombre del campo
file.getName(), // nombre del archivo
RequestBody.create(file, MediaType.parse("application/pdf"))
)
// Puedes agregar más campos si el endpoint lo requiere
.addFormDataPart("filename", file.getName())
.build();
Request request = new Request.Builder()
.url("https://api.ticketbaiws.eus/doc-representante/")
.post(RequestBody)
.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": "Documento procesado correctamente",
"msg": null
}
Métodos TicketBAI / Verifactu
- POST Nueva factura / subsanación (zuzendu) TicketBAI / Verifactu
- POST Completar factura simplificada
- GET Consulta factura TicketBAI / Verifactu
- GET Listado facturas TicketBAI / Verifactu
- GET Descarga XML TicketBAI / Verifactu
- GET Descarga factura en formato FacturaE
- GET Descarga factura en PDF
- GET Estado sistema
- DEL Anular factura TicketBAI / Verifactu
- PUT Forzar reenvío TicketBAI / Verifactu
- POST Validar NIF en la AEAT
- POST Validar NIF en el VIES
Métodos específicos para Verifactu
- GET Documento Representación Verifactu - Descargar modelo
- POST Documento Representación Verifactu - Enviar documento
- GET Documento Representación Verifactu - Descargar documento cargado
- DELETE Documento Representación Verifactu - Revocar documento cargado
Métodos específicos para BATUZ BIZKAIA
- GET Listado de epígrafes
- POST LROE - Facturas recibidas - Envío (BATUZ)
- PUT LROE - Facturas recibidas - Modificar (BATUZ)
- GET LROE - Facturas recibidas - Consulta (BATUZ)
- DEL LROE - Facturas recibidas - Anular (BATUZ)
- POST LROE - Criterio Caja COBROS - Envío (BATUZ)
- PUT LROE - Criterio Caja COBROS - Modificar (BATUZ)
- GET LROE - Criterio Caja COBROS - Consulta (BATUZ)
- DEL LROE - Criterio Caja COBROS - Anular (BATUZ)
- POST LROE - Criterio Caja PAGOS - Envío (BATUZ)
- PUT LROE - Criterio Caja PAGOS - Modificar (BATUZ)
- GET LROE - Criterio Caja PAGOS - Consulta (BATUZ)
- DEL LROE - Criterio Caja PAGOS - Anular (BATUZ)
