NewStripe: manual 0 % rates and the buyer's country on paid invoices
BeeL
Get startedMulti-NIFVeriFactuRulesStripeAPI referenceChangelog
ErrorsAll codes

LINE_UNIT_PRICE_TOO_MANY_DECIMALS

The unit price ‹value› has more than 4 decimals and cannot be stored without changing it: use a price with at most 4 decimals.


Category: Invoices

HTTP status422 Unprocessable Content
RetryAfter fixing the cause

When it happens

A line's unit_price has more than 4 significant decimals, typically a price your system computed by division (total / quantity) without rounding. It is rejected instead of rounded, so the line's base never differs from what you sent; trailing zeros do not count (10.500000 is 10.5). The invoice is not created or changed.

How to fix it

Round the price to 4 decimals before sending it. If what you know is the line total, send it in total_excluding_tax or total_including_tax instead, and the unit price is derived from it.

Retry

Not as is: the same request fails the same way. Fix the cause described above, then send the request again, under a new Idempotency-Key if the body changed.

Returned by

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

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/LINE_UNIT_PRICE_TOO_MANY_DECIMALS",
  "title": "LINE_UNIT_PRICE_TOO_MANY_DECIMALS",
  "detail": "The unit price ‹value› has more than 4 decimals and cannot be stored without changing it: use a price with at most 4 decimals.",
  "instance": "/v1/<resource>",
  "errors": [],
  "success": false,
  "error": {
    "code": "LINE_UNIT_PRICE_TOO_MANY_DECIMALS",
    "message": "The unit price ‹value› has more than 4 decimals and cannot be stored without changing it: use a price with at most 4 decimals.",
    "details": {}
  },
  "meta": {
    "timestamp": "2026-05-21T10:00:00Z",
    "request_id": "4bf92f3577b34da6a3ce929d0e0e4736"
  }
}

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

Message

The unit price ‹value› has more than 4 decimals and cannot be stored without changing it: use a price with at most 4 decimals.
El precio unitario ‹value› tiene más de 4 decimales y no se puede guardar sin cambiarlo: usa un precio con 4 decimales como mucho.
El preu unitari ‹value› té més de 4 decimals i no es pot desar sense canviar-lo: fes servir un preu amb 4 decimals com a molt.

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

Placeholders are filled in at runtime:

  • ‹value› — the unit_price as it was sent.

Other errors in this category

Keep exploring