NewStripe: a buyer with a NIF always gets a standard invoice, and the simplified threshold is deprecated
BeeL
Get startedMulti-NIFVeriFactuRulesStripeAPI referenceChangelog
ErrorsAll codes

ONLY_DRAFT_EMITTABLE

Only draft invoices can be issued. Current status: ‹status›


Category: Invoices

HTTP status422 Unprocessable Content
RetryNo

When it happens

You asked to issue an invoice that is not a DRAFT. Most often it is already ISSUED, for example because an earlier call succeeded and its response was lost, or it is SCHEDULED to be issued on a date.

How to fix it

Fetch the invoice: if it is already issued there is nothing left to do. If it is scheduled and you want it out now, remove the schedule first, which returns it to DRAFT, then issue it. Sending an Idempotency-Key on the issue call makes a lost response safe to retry.

Retry

Do not retry. The outcome is final: sending the same request again gets the same answer.

Returned by

The operations where this code is most likely. The list is not exhaustive.

Rules that cite this code

Example response

When this error occurs, the API answers 422 Unprocessable Content with a JSON body of this shape:

{
  "type": "https://docs.beel.es/errors/ONLY_DRAFT_EMITTABLE",
  "title": "ONLY_DRAFT_EMITTABLE",
  "detail": "Only draft invoices can be issued. Current status: ‹status›",
  "instance": "/v1/<resource>",
  "errors": [],
  "success": false,
  "error": {
    "code": "ONLY_DRAFT_EMITTABLE",
    "message": "Only draft invoices can be issued. Current status: ‹status›",
    "details": {}
  },
  "meta": {
    "timestamp": "2026-05-21T10:00:00Z",
    "request_id": "4bf92f3577b34da6a3ce929d0e0e4736"
  }
}

The type URI is stable and always resolves to this page.

Message

Only draft invoices can be issued. Current status: ‹status›
Solo se pueden emitir facturas en estado BORRADOR. Estado actual: ‹status›
Només es poden emetre factures en estat ESBORRANY. Estat actual: ‹status›

Send the request with Accept-Language: <es|en|ca> to receive the message in your preferred language.

Placeholders are filled in at runtime:

  • ‹status› — the invoice's current status, for example ISSUED or SCHEDULED.

Other errors in this category

Keep exploring