Skip to main content
ChangeBreaking
Delivery-line match conflicts

Breaking

A held delivery-note line has its own error code

A delivery-note line’s received quantity is counted across every bill, so allocating a line another bill already matched is refused. That refusal used to be Match.DnOverReceipt — the same code you get when a supplier bills for more than was ever delivered, even though the two need opposite responses from a reviewer.Adding an allocation now returns Match.DnLineHeld when the quantity you asked for fits inside what was received but is already matched elsewhere. The response names the bill holding it:
To move the line to your bill, remove the allocation named by matchGroupId and matchAllocationId, then post yours again. A match can only be changed while the bill holding it is in review — if that bill has been approved, the removal returns Match.BillNotInReview and the line cannot be reassigned.Match.DnOverReceipt keeps its original meaning: more than was ever received on that line. You still get it when releasing the other bill’s hold would not free enough quantity for your request.What to check. The HTTP status is still 409, so error handling keyed on the status is unaffected. If you branch on the error code, a conflict that previously arrived as Match.DnOverReceipt now arrives as Match.DnLineHeld.

Updates

Finding which bill holds a delivery note

To answer the same question before you hit the error, list the bills matched to a delivery note, and read matchedQuantity and fullyMatched on each line of the delivery note. The three-way matching guide covers the reassignment flow end to end.