---
title: "Webhook"
method: POST
path: "/api/v1/billing/webhook"
tags: ["billing"]
---

# Webhook

`POST /api/v1/billing/webhook`

## Request

- Base URL: `https://api.nudgelink.co` (the document declares no server; this is the origin it was published from)
- URL: `https://api.nudgelink.co/api/v1/billing/webhook`
- Auth: none declared

Verified, transactional ledger processing. Failed writes are retried by Stripe.

Invoice payment owns credits and revenue. Checkout completion alone does
not prove payment (delayed payment methods can complete before settlement).
A client row lock serializes different events for the same customer; the
unique event id handles retries without hiding unrelated database errors.

## Response `200`

Successful Response

- object

---

[API](https://skmtc.dev/nudgelink/apis/nudgelink-api.md) · [All operations](https://skmtc.dev/nudgelink/apis/nudgelink-api/llms.txt) · [OpenAPI document](https://skmtc.dev/nudgelink/apis/nudgelink-api/revisions/baa46e6db986?raw)
