POST
Confirm a purchase return
Company space Cannot be undone For: Buyer, Stock keeper · Permission: purchase_returns.confirm Conditions
  • The supplier return must still be a draft; a return already confirmed is refused with a conflict (409).
  • The return must have at least one item (409).
  • The purchase must still be pending or completed.
  • When the return is attached to a reception, that reception must belong to the same purchase and be confirmed.
  • replacement_expected and has_credit_note cannot both be true.
  • Every item is checked again at confirmation against the quantities received and accepted and not already returned by other returns, and against the stock actually held in the chosen sources; quantities, units and sources that no longer fit are refused.
  • A VAT amount above zero requires a credit note.
  • With a credit note, the VAT cannot exceed the value of the returned items, and the VAT of all confirmed credit-note returns of the purchase cannot exceed the VAT recorded on the purchase.
  • With a credit note, the value of the returned items cannot exceed what remains of the supplier invoice after debt adjustments and earlier credit-note returns.
What else happens
  • Withdraws the returned quantity of each stock-tracked item from the stock sources (assets or groups) named on the item, as a purchase-return stock operation, and records on each item the inventory cost that left stock (stock_cost_total). Untracked items do not move stock.
  • Recomputes the cost_total of each item from the first-in-first-out allocation of the received quantities.
  • Sets the return status to confirmed and returned_at to the time of confirmation. A confirmed return can no longer be edited or deleted.
  • When has_credit_note is true, the value of the returned items counts as returned against the purchase, which lowers its remaining amount (it can become a supplier credit); the purchase amount paid, remaining amount and payment status are recalculated. Without a credit note the amount owed is not reduced.
  • When replacement_expected is true, the remaining quantity to receive of each purchase item grows by the returned quantity (in the purchase unit), and a completed purchase goes back to pending.
  • No accounting entry is posted by this action.
Part of Return goods to suppliers.

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Path Parameters

purchaseReturn
string
required

Identifier of the purchase return (27-character KSUID string).

Query Parameters

response
enum<string>
default:none

Response mode. Default none; none answers 204 No Content.

Available options:
none,
resource
fields
string

Comma-separated JSON keys of the root resource (id is always rendered). Available: id, purchase_id, purchase_reception_id, vendor_id, reference, status, vat_total, replacement_expected, has_credit_note, vat_is_recoverable, returned_at, created_at, updated_at.

include
string

Comma-separated include paths, each optionally followed by its fields in parentheses: units(id,sku),units.uomUnit(id,name). Max depth 6, max 40 paths. Available: items, items.purchaseItem, items.stockableUnit.

Response

Resource (only with response=resource).

id

Identifier of the supplier return (27-character KSUID string).

purchase_id

Identifier of the purchase the goods are returned to.

purchase_reception_id

Identifier of the reception the return is attached to; null when the return was created for the whole purchase.

vendor_id

Identifier of the supplier, copied from the purchase.

reference

Free reference of the return, unique among the company's purchase returns.

status

Lifecycle status: draft while it can still be edited or deleted, confirmed once the goods have left stock.

vat_total
number

VAT on the supplier credit note in major units (the minor-unit amount divided by 10 to the power currency_exponent). 0 when there is no credit note.

replacement_expected
boolean

True when the supplier is expected to send replacement goods; confirming then reopens the returned quantities for receiving.

has_credit_note
boolean

True when the supplier issues a credit note for the returned goods; confirming then reduces the amount owed on the purchase. Cannot be true together with replacement_expected.

vat_is_recoverable
boolean

Whether the VAT of the purchase is recoverable, read from the purchase at rendering time; false when the purchase never set it.

returned_at

Date and time the return was confirmed (ISO 8601); null while it is a draft.

created_at

Date and time the record was created (ISO 8601, UTC).

updated_at

Date and time the record was last changed (ISO 8601, UTC).

items
array

Lines of the return. Present only when requested with include=items.