Skip to content

Closing a tender

Not every tender that reaches Mercura is worked in Mercura. A small one may be quoted by hand, or it may belong to a product line that is not onboarded — and its case is then closed in your CRM while the tender stays open in Mercura forever. Left alone, those accumulate until the open list is unusable.

Send status: "CANCELLED" to close such a tender so it leaves the open inbox:

PATCH /tenders/63365
{ "status": "CANCELLED" }
  • CANCELLED is the only writable transition. Everything else is Mercura-side workflow — a tender becomes DONE by being exported, and NEW → IN_PROGRESS when someone starts working it. Any other target is a 400.
  • Echoing the current status is a no-op, so a full GET body still round-trips through PATCH whatever the tender's status is.
  • 409 for PARSING and DONE. A PARSING tender is mid-flight (retry once it lands); a DONE one has already been completed in Mercura, and silently downgrading that to CANCELLED would lose the result. Everything else — NEW, IN_PROGRESS, PARSING_FAILED — is cancellable.
  • Cancelling is not an acknowledgement. Use POST /tenders/{tender_id}/acknowledgements to report an import outcome; use this to close a tender nobody will work.