reseller

POST /v1/reseller/webhooks/{code}/{orgId}

Ingest a signed callback from a reseller's OWN payment gateway.

Toate punctele finale reseller

Autentificare

Acest punct final este public. Nu necesită nicio acreditare și nicio organizație – este ceea ce citesc propriul nostru site de marketing și motoarele de răspuns AI.

Unde merge ID-ul organizației tale

Acest punct final preia ID-ul organizației tale direct în URL, sub forma orgId. Înlocuiește-l în cale — nu există niciun antet sau parametru de interogare care să țină locul acestuia.

ID-ul organizației tale se află pe ecranul cheilor API din panoul de control, lângă cheia însăși. Este același ID în fiecare apel pe care îl faci.

Încearcă

Înlocuiți tot ce se află între paranteze unghiulare cu propriile valori și substituentul cheie cu o cheie din tabloul de bord.

curl -X POST https://api.zinndigital.com/v1/reseller/webhooks/{code}/{orgId}

Autentificat? Consola API din panoul de control îți completează ID-ul real al organizației și propria cheie și rulează cererea în API-ul live, astfel încât să poți vedea răspunsul efectiv. Deschideți acest punct final în consola API

Detalii

**Unauthenticated by design**, exactly like the platform callbacks above — the provider's signature over the raw body *is* the authentication. What differs is whose secret it is verified against: this endpoint resolves the reseller's own credential from Vault first, because `/v1/webhooks/{code}` verifies against **Zinn®'s** secret and answers `400 INVALID_SIGNATURE` to anything a reseller's account sends it. Without this endpoint a BYO gateway can charge but never settle asynchronously — no SCA completion, no mandate confirmation, no crypto IPN. ⛔ A valid signature is **not** an authorization to touch a tenant. It proves only that the delivery came from the account we hold keys for; the event may act only on organizations that bill back to this reseller, and anything else is acknowledged with 200 and changes nothing. Replays are expected and converge on a dedupe key namespaced per reseller, so two accounts delivering the same provider event id cannot silently cancel each other out.

Parametri

NumeTipObligatoriuCe este
code (path)stringDaThe gateway code — `stripe`, `paypal` or `nowpayments`.
orgId (path)UuidDaThe RESELLER organization whose own gateway account is calling back. It is in the path because the signing secret is per organization: the engine must resolve *their* credential…

Răspuns

NumeTipObligatoriuCe este
statusstring<handled, ignored, duplicate>Da`handled` — acted on. `ignored` — a valid event of a type Zinn® does not consume. `duplicate` — already processed; Stripe may stop redelivering.

Erori pe care le poate returna acest punct final

400 · 404 · 503