Ondertekende verzoeken
HMAC-SHA256 over de timestamp en de ruwe body, verstuurd als X-Tailride-Signature: v1=…, met de timestamp in X-Tailride-Timestamp, zodat je oude of herhaalde verzoeken kunt weigeren.
Tailride verstuurt een ondertekende JSON-webhook zodra een factuur is verwerkt of bewerkt — leverancier, bedragen, btw, factuurregels en een link naar de PDF. Zoek facturen via een REST API, of koppel Zapier en Make zonder één regel code te schrijven.
Een webhook is een HTTP POST die Tailride naar een URL van jouw keuze stuurt. Er zijn twee gebeurtenissen: invoice.processed wanneer een nieuwe factuur is gelezen, en invoice.updated wanneer iemand de factuur bewerkt, er een document aan toevoegt of hem als betaald markeert. Elk verzoek wordt ondertekend met HMAC-SHA256, opnieuw geprobeerd als je server niet bereikbaar is en vastgelegd in de activiteitenlog van de factuur, zodat je ERP, datawarehouse of goedkeuringsflow dezelfde gegevens krijgt die jij in het dashboard ziet.
Wat je eindpunt ontvangt
Zo verstuurt Tailride een invoice.processed-levering. invoice.updated bevat dezelfde factuur plus een lijst van wat er is gewijzigd.
import crypto from "node:crypto";
export function isFromTailride(req, rawBody, secret) {
const ts = req.headers["x-tailride-timestamp"];
const sig = req.headers["x-tailride-signature"]?.replace("v1=", "") ?? "";
if (Math.abs(Date.now() / 1000 - Number(ts)) > 300) return false;
const expected = crypto.createHmac("sha256", secret)
.update(`${ts}.${rawBody}`).digest("hex");
return sig.length === expected.length &&
crypto.timingSafeEqual(Buffer.from(sig), Buffer.from(expected));
}curl "https://tailride.so/api/v1/invoices?search=northwind&limit=20" \
-H "X-Api-Key: trapi_…"POST /hooks/tailride HTTP/1.1
Content-Type: application/json
User-Agent: Tailride-Webhooks/1.0
X-Tailride-Event: invoice.processed
X-Tailride-Timestamp: 1792574400
X-Tailride-Signature: v1=5f2c8e…b41d
{
"event": "invoice.processed",
"timestamp": "2026-10-21T09:20:00.000Z",
"data": {
"invoice": {
"id": "6716f0c2e4b09a35d8f11a42",
"from": "billing@northwind.example",
"invoiceId": "INV-4471",
"invoiceDate": "2026-10-20T00:00:00.000Z",
"documentType": "invoice",
"amount": 1249,
"currency": "EUR",
"payment": { "status": "unpaid" },
"vendor": { "name": "Northwind Supplies GmbH", "countryCode": "DE", "taxId": "DE811234567" },
"items": [
{ "description": "Office chairs", "quantity": 2, "unitPrice": 524.79,
"taxRate": 19, "taxAmount": 199.42, "subtotal": 1049.58, "total": 1249 }
],
"tags": ["office"],
"attachment": { "url": "https://…/INV-4471.pdf", "expiresAt": "2026-10-22T09:20:00.000Z" }
}
}
}Vijf minuten in Instellingen, daarna komt elke factuur vanzelf binnen.
Vul in Instellingen → Webhooks een naam en een URL in, kies de gebeurtenis en voeg eventueel tot vijf aangepaste headers toe — bijvoorbeeld een API-sleutel die je eindpunt verwacht.
Elke webhook krijgt een eigen whsec_-secret. Daarmee controleer je de header X-Tailride-Signature. Vernieuw het wanneer je wilt; het oude werkt dan meteen niet meer.
Wordt een factuur verwerkt of gewijzigd, dan stuurt Tailride een POST met JSON en de volledige factuur. Antwoord binnen 10 seconden met een willekeurige 2xx-status.
Schrijf de gegevens naar je ERP, een database of een goedkeuringsflow — of laat de Tailride-apps voor Zapier en Make het doen, zonder code.
HMAC-SHA256 over de timestamp en de ruwe body, verstuurd als X-Tailride-Signature: v1=…, met de timestamp in X-Tailride-Timestamp, zodat je oude of herhaalde verzoeken kunt weigeren.
Tot drie pogingen met een time-out van 10 seconden. Netwerkfouten, time-outs en 408-, 429- en 5xx-antwoorden worden opnieuw geprobeerd; andere 4xx-antwoorden gelden als weigering. Gebruik data.invoice.id om een herhaling te negeren.
Leverancier en btw-nummer, factuurnummer en datums, bedrag, valuta, betaalstatus, abonnementsgegevens, tags en elke factuurregel met zijn belastingtarief — plus downloadlinks voor de PDF en de bewijsstukken.
invoice.updated wordt verstuurd bij bewerkingen, bij toegevoegde of verwijderde bewijsstukken en bij een gewijzigde betaalstatus, met de vorige en de huidige waarde van elk gewijzigd veld.
Privé- en interne adressen worden geblokkeerd, redirects worden nooit gevolgd, en het signing secret en de waarden van aangepaste headers worden versleuteld opgeslagen.
Elke levering — en elke mislukte — staat in de activiteitenlog van de factuur, zodat je ziet wat er wanneer naar welk adres is gestuurd.
invoice.processed wordt verstuurd wanneer een nieuw document is gelezen en als factuur is herkend. invoice.updated wordt verstuurd wanneer een verwerkte factuur daarna verandert: bewerkte velden, toegevoegde of verwijderde bewijsstukken, een nieuwe betaalstatus. Elke webhook is geabonneerd op één gebeurtenis, dus voeg een tweede webhook toe om beide te ontvangen.
Bereken HMAC-SHA256 over de waarde van X-Tailride-Timestamp, een punt en de ruwe body van het verzoek, met het whsec_-secret van de webhook. Vergelijk het hexadecimale resultaat met de waarde na v1= in X-Tailride-Signature, en weiger verzoeken waarvan de timestamp meer dan een paar minuten oud is.
Tailride probeert het tot drie keer, met een paar seconden ertussen. Netwerkfouten, time-outs en 408-, 429- of 5xx-antwoorden worden opnieuw geprobeerd; elke andere 4xx geldt als weigering. Mislukken alle pogingen, dan zie je dat in de activiteitenlog van de factuur — haal wat je hebt gemist op via de API.
Met een trapi_-API-sleutel kun je het account uitlezen (GET /api/v1/me), verwerkte facturen doorzoeken en doorbladeren — tot 100 per pagina — met GET /api/v1/invoices, en Zapier of Make abonneren op factuurgebeurtenissen. De basis-URL is https://tailride.so/api/v1; stuur de sleutel mee als X-Api-Key of als Bearer-token.
Ja. De Zapier-app is openbaar: triggers voor New Invoice en Updated Invoice, en een zoekactie Find Invoice. De Make-app — nieuwe of bijgewerkte facturen volgen, facturen zoeken, een API-call doen — is beschikbaar op uitnodiging; vraag support om de link.
Bij alle betaalde abonnementen, voor zakelijke accounts. De accounteigenaar beheert ze in Instellingen → Webhooks: tot 10 webhooks en 10 API-sleutels, plus de webhooks die Zapier en Make voor je aanmaken.
Downloadlinks in een webhook werken 24 uur; links die de API teruggeeft, werken één uur. Sla het bestand zelf op als je het wilt bewaren.
Verder lezen
De kant-en-klare integraties, de ontwikkelaarsdocumentatie en waar de facturen in de eerste plaats vandaan komen.
Webhooks, API-sleutels en de Zapier-app zitten bij elk betaald abonnement inbegrepen.