v1.033
Returns now show what the warehouse reported finding in the parcel.
When a returned parcel holds something you never sent, such as a counterfeit, a substitute item or nothing at all, the warehouse reports it and disposes of it. These reports were not visible through the API until now. GET /v1/integrations/returns-list, GET /v1/integrations/returns and the Return status change webhook now include them on every return.
🚀 New Endpoints
None
🛠 Schema & Property Updates
Reported Units on Returns
Both fields are added to the return object (ReturnOutput), which is shared by GET /v1/integrations/returns-list, GET /v1/integrations/returns and the Return status change webhook (returnStatusChange). They are always present: an empty array and null when nothing was reported.
fraudulent_units(array) - Units the warehouse found in the return that you never sent, in the order they were reported. They are not listed underitems, because they match no item of the return and do not change any item'sreceived_quantity. Each entry contains:unit_uuid(string) - UUID of the reported unit.classification(string) -fraudulentfor an item that is not yours, such as a counterfeit or a substitute, orunknown_merchant_itemfor an item that may be yours but was not part of this return.final_disposition(string) - What happened to the unit. Reported units are disposed of, so this isdispose.received_at(string, date-time) - When the warehouse finished reporting the unit at the grading station.
empty_package_report(object|null) - Present when the warehouse reported that the return package arrived with nothing in it:unit_uuid(string) - UUID of the unit that records the empty package.reported_at(string, date-time) - When the warehouse reported the package as empty and disposed of it.
A report appears only after the warehouse has finished handling it. A report that is withdrawn as a correction disappears from both fields.
Enums
- FlaggedUnitReportClassification: New enum with the values
fraudulentandunknown_merchant_item, used byfraudulent_units[].classification.
Return-to-Merchant Disposition on Unit Records
items[].receiving_details[].final_disposition(string|null) - areturn_unitrecord of a unit the warehouse decided to return to you now reportsreturn_to_merchant, the value areceiverecord of such a unit already reports. It used to reportother. This affects only historical records that originated from the legacy Optoro flow.
📦 New Support Schemas
The following schemas were introduced to support reported units on returns:
ShipMonk_Warehouse_Returns_Api_Output_PublicApi_ReturnFraudulentUnitPublicApiOutputShipMonk_Warehouse_Returns_Api_Output_PublicApi_ReturnEmptyPackageReportPublicApiOutputShipMonk_Warehouse_Returns_Enum_FlaggedUnitReportClassification
📖 Documentation & Constraints Changes
None
No endpoints, fields or enum values were removed. Both new fields are additions to the response and the webhook payload, and return_to_merchant was already a documented final_disposition value, so this version is backward-compatible. Clients that reject unknown properties must accept the two new fields.