Skip to content

prepaid_deposit_unsigned

Raised by POST /admin/tenants/{id}/prepaid-deposit (action billing.prepaid.deposit.record) when the deposit's order_acceptance_id names no agreement_acceptances row belonging to this tenant - a deposit that would cite paper this counterparty never signed. The deposit's FK tests existence and its NOT NULL column tests presence, so this route-level resolution is the correlation ADR-0028 d3 / ADR-0035 d1 exist to guarantee, exactly as subscription_terms_unsigned is for the terms row. A prepayment is a negotiated commitment with a counterparty (ADR-0035 d1), so the acceptance is required and there is no override. What an operator does: record the signed prepaid/commitment addendum through the agreements flow, then re-send naming that acceptance id. P1 - built 2026-08-29 (ADR-0035; billing_admin.py _require_deposit_acceptance; prepaid_deposits shipped as migration 0119).

Problem shape

Every non-2xx response is an RFC 9457 application/problem+json body. The type URI below is stable and machine-matchable, so branch on the final path segment (the code) and treat the status as redundant confirmation. See the error-handling guide.

{
  "type": "https://docs.vocapable.com/errors/prepaid_deposit_unsigned",
  "title": "…",
  "status": 422,
  "detail": "…",
  "instance": "/v1/…"
}

← Back to the error registry