← All Kiosk problem types

payment_failed

HTTP 402   title: Payment failed

What it means

The charge itself did not settle: declined, authentication required, insufficient funds, or a processor timeout. Not a gate — there is nothing to solve and nothing to set up.

What it carries

What to do next

Read hint. A definitive failure means no money moved: the human can fix the payment method through payment_setup, and the call may be retried. An unknown outcome means the processor never confirmed: verify the order’s paid state through the operator’s own queries before retrying, so a lost response cannot double-charge.

On the wire

{
  "type":   "https://kiosk.tech/problems/payment_failed",
  "title":  "Payment failed",
  "status": 402,
  "detail": "… what went wrong on THIS request …",
  "code":   "payment_failed"
}

This page documents the RFC 9457 type URI https://kiosk.tech/problems/payment_failed. The URI is an identifier, not a locator a client should fetch: branch on the document’s code member. The normative definition lives in the error vocabulary of the Kiosk specification (§9 of the formal spec).