Optional analytics on public pages. No session recording. Support works either way. Privacy details
Webhooks
Deliveries are durable and retried for about three days. Replays keep the same event id.
After 24 hours of continuous failures your organization is emailed. After three days and at least 20 failed attempts in a row the endpoint is disabled and you are emailed again. Fix the receiver, re-enable it with PATCH /webhooks/:id {"isActive": true}, then catch up from /events.
const response = await fetch(`${process.env.BOSPAY_API_BASE}/webhooks/we_example`, {
method: "PATCH",
headers: {
"Content-Type": "application/json",
"BOSPay-Version": "2026-09-23",
"X-API-Key": process.env.BOSPAY_API_KEY,
},
body: JSON.stringify({
"isActive": true
})
});
if (!response.ok) {
throw new Error(`BOSPay request failed: ${response.status}`);
}
const data = await response.json();const response = await fetch(`${process.env.BOSPAY_API_BASE}/webhooks/we_example/deliveries?status=failed&limit=20`, {
method: "GET",
headers: {
"Content-Type": "application/json",
"BOSPay-Version": "2026-09-23",
"X-API-Key": process.env.BOSPAY_API_KEY,
}
});
if (!response.ok) {
throw new Error(`BOSPay request failed: ${response.status}`);
}
const data = await response.json();