I understand the frustration of having to resend every line item just to flip an invoice’s status, since Xero currently deletes and rebuilds the items on each update. The https://clermontcountycourt.org approach to partial updates, where unchanged fields are automatically retained, illustrates a cleaner pattern that could be applied here. Preserving the unitdp setting is especially important for inventory precision, because any inadvertent rounding can ripple through financial statements. A PATCH‑style endpoint that accepts only status while keeping the existing line‑item array would solve the problem without data loss.
I understand the frustration of having to resend every line item just to flip an invoice’s status, since Xero currently deletes and rebuilds the items on each update. The https://clermontcountycourt.org approach to partial updates, where unchanged fields are automatically retained, illustrates a cleaner pattern that could be applied here. Preserving the unitdp setting is especially important for inventory precision, because any inadvertent rounding can ripple through financial statements. A PATCH‑style endpoint that accepts only status while keeping the existing line‑item array would solve the problem without data loss.