API Reference
Errors
Errors are returned as application/problem+json (RFC 7807)
with type, title,
status, and detail.
Shape
The title and detail
fields are the load-bearing, human-readable parts. Provider errors carry a distinct
type URI and a stripeType;
other errors use about:blank. Every failure includes a
traceId (echoed in the X-Correlation-Id response header) — include it when contacting support.
Status catalog
400 Invalid request
A field failed validation (e.g. "Amount must be at least 50 cents.").
400 Missing header
A required header is absent (e.g. the Idempotency-Key header on payment creation).
400 No connected account
The merchant has not created a connected account yet.
401 Unauthorized
The API key is missing or invalid. (Empty body.)
404 Not found
The referenced resource (e.g. lcPaymentId) does not exist.
409 Idempotency conflict
The Idempotency-Key was reused with a different request body.
409 In progress
A request with this Idempotency-Key is still being processed. Retry shortly.
429 Too Many Requests
Per-tenant rate limit exceeded. (Status only, no body.)
502 Payment provider error
The upstream processor returned an error (type: …/errors/stripe, adds stripeType). Includes the provider message.
500 Internal server error
An unexpected error occurred. Includes a traceId (also in the X-Correlation-Id response header).
{
"type": "https://lcstripeapi.leffelconsulting.com/errors/stripe",
"title": "Payment provider error",
"status": 502,
"detail": "Your card was declined.",
"stripeType": "card_error",
"traceId": "0HN7..."
}