Lifecycle
Eleven states, two approval gates · nothing ships from draft, and nothing is written off without Finance
Getting stock and money back out of a rejected receipt · raise, approve, ship, supplier receipt, then a credit note or a Finance-approved write-off · the whole point of this page is to make the write-off the expensive path
RTS_PENDING units splits by location, not by state. Stock staged at HQ_319 is still on our shelf and still ours to lose; stock at SUPPLIER_HOLD is in the supplier's custody. Same stock type, two very different answers to "where is it and who eats the loss".
Eleven states, two approval gates · nothing ships from draft, and nothing is written off without Finance
Claimed against credited, this quarter · the percentage is the only supplier metric that measures whether a claim was worth raising
No incumbent system can produce this chart. ops2 stores a credited quantity as free text appended to a notes column ("re-QC credited:14") and has no credit amount, no credit-note number and no currency anywhere in iwms_rts or its twelve ALTERs. i2 has a single credit_fils integer and nothing ever wrote to it.
Where the days actually go · the 14-day credit SLA is drawn
24 this quarter · staged location is where the units physically are, which is not the same as the case state
| RTS | Supplier | SKU | Qty | Kind | Reason | State | Staged at | Value AED | Credit exp | Credit rec | Age | Approval |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| RTS-2026-0184 | CIC | MST-CRM-42-BLK | 40 | reject | STITCH_FAIL | shipped | SUPPLIER_HOLD | 3,200 | 3,200 | 0 | 1d | ops signed |
| RTS-2026-0183 | VJ Jewels | MIN-2159 | 14 | reject | CLASP_BROKEN | shipped | SUPPLIER_HOLD | 1,120 | 1,120 | 0 | 3d | ops signed |
| RTS-2026-0181 | ORO Leather | MSR31-07 | 12 | repair | EDGE_PAINT | received by supplier | SUPPLIER_HOLD | 4,800 | - | 0 | 9d | ops signed |
| RTS-2026-0178 | Ceramica MEA | MIN-2204 | 12 | reject | GLAZE_CRACK | received by supplier | SUPPLIER_HOLD | 1,440 | 1,440 | 0 | 11d | ops signed |
| RTS-2026-0176 | CIC | MST-CRM-42-TAN | 40 | reject | COLOR_MISMATCH | escalated | SUPPLIER_HOLD | 3,200 | disputed | 0 | 8d | arbitration |
| RTS-2026-0174 | Shenzhen Fittings | LDF01 | 24 | reject | HARDWARE_TARNISH | rejected by supplier | SUPPLIER_HOLD | 1,920 | disputed | 0 | 18d | write-off pending |
| RTS-2026-0172 | Yiwu Home | MIN-PKG-014 | 180 | reject | PACKAGING_CRUSH | escalated | SUPPLIER_HOLD | 5,400 | disputed | 0 | 22d | write-off pending |
| RTS-2026-0171 | LC Straps | LBA15 | 24 | repair | STITCH_FAIL | returned | HQ_319 | 1,920 | - | - | 14d | GRN-2026-0406 |
| RTS-2026-0169 | ORO Leather | MSR31-09 | 18 | reject | EDGE_PAINT | ready | HQ_319 | 7,200 | 7,200 | 0 | 5d | ops signed |
| RTS-2026-0168 | Bursa Textiles | MIN-TXT-088 | 44 | reject | COLOR_MISMATCH | ready | HQ_319 | 2,640 | 2,640 | 0 | 6d | ops signed |
| RTS-2026-0167 | Sharq Metalworks | MIN-HW-042 | 8 | reject | WRONG_LABEL | draft | HQ_319 | 640 | 640 | 0 | 2d | awaiting ops |
| RTS-2026-0166 | CIC | MST-CRM-42-TAN | 14 | reject | COLOR_MISMATCH | credit issued | left ledger | 1,120 | 1,120 | 560 | 28d | CN-CIC-2588 |
| RTS-2026-0164 | Ceramica MEA | MIN-SMP-021 | 6 | sample reject | GLAZE_CRACK | draft | HQ_319 | - | no invoice | - | 4d | awaiting ops |
| RTS-2026-0162 | VJ Jewels | MIN-2159 | 58 | over-ship return | OVER_SHIPMENT | draft | HQ_319 | 4,640 | 4,640 | 0 | 7d | keep or return |
| RTS-2026-0151 | CIC | MIN-2159 | 10 | reject | STITCH_FAIL | resolved | left ledger | 800 | 800 | 800 | 44d | CN-CIC-2504 |
| RTS-2026-0108 | CIC | MST-CRM-42-TAN | 24 | reject | HARDWARE_TARNISH | written off | SUPPLIER_HOLD | 1,920 | rejected | 0 | 66d | finance · muhammad.f |
A write-off needs an approval row whose approver holds finance_writeoff. Until then these units stay in RTS_PENDING at SUPPLIER_HOLD, which means they are still counted, still valued and still visible. An unapproved write-off is not a quiet zero, it is an aging number that someone has to look at.
The supplier's document number, its currency and the FX rate that produced the AED figure, always together
| Credit note | Supplier | RTS | Ccy | Original | FX | Rate date | AED | Issued | Applied |
|---|---|---|---|---|---|---|---|---|---|
| CN-CIC-2611 | CIC | RTS-2026-0151 | USD | 2,616 | 3.67 | 18-06 | 9,600 | 18-06 | 21-06 |
| CN-ORO-1188 | ORO Leather | RTS-2026-0158 | EUR | 4,240 | 4.01 | 02-07 | 17,002 | 02-07 | 05-07 |
| CN-CIC-2588 | CIC | RTS-2026-0166 | USD | 153 | 3.67 | 12-07 | 560 | 12-07 | 15-07 |
| CN-VJ-0914 | VJ Jewels | RTS-2026-0148 | USD | 2,180 | 3.67 | 24-06 | 8,001 | 24-06 | 28-06 |
| CN-LC-0442 | LC Straps | RTS-2026-0142 | AED | 6,240 | 1.00 | 11-06 | 6,240 | 11-06 | 12-06 |
| CN-CER-0208 | Ceramica MEA | RTS-2026-0134 | AED | 4,320 | 1.00 | 28-05 | 4,320 | 28-05 | 30-05 |
Where rejected stock lives, and what each move posts
Staged is a state, at the supplier is a place. A rejected unit sitting on a pallet in the RTS_STAGING zone at HQ_319 is still on our shelf, still ours to lose in a fire, and still our warehouse's problem to count. It is RTS_PENDING at HQ_319: a stock type at a real location.
The moment it ships, a party outside i3 becomes accountable for it, it may be credited and never come back, and no warehouse of ours will ever count it again. That is the deciding test for a virtual location, so it becomes RTS_PENDING at SUPPLIER_HOLD.
Shipping therefore posts a compensating pair that nets to zero, never a single row. There is no moment at which the same units are both staged and at the supplier, and no moment at which they are neither.
Credit and write-off both remove the units, and they are not the same event. A credit means the supplier owns them now and the money came back. A write-off means we still lost them. Both post out of RTS_PENDING; only the write-off posts into WRITTEN_OFF, so a loss stays valued rather than disappearing.
The stepper and both charts hold their heights so the page does not jump when 24 cases land.
No open RTS at any location. Cases are raised automatically when QC records a reject disposition, so an empty queue means QC accepted everything it inspected.
The compensating pair could not be written, so neither row posted. The units are still staged at HQ_319 and the case is still ready. A half-posted move would put stock in two places at once.
rts-ship-4e21 · 29-07-2026 14:48 GST
Raising needs role >= manager. Approving a ship needs ops_manager. Approving a write-off needs the finance_writeoff feature, which three people hold.
apps.i3.role = manager · no finance feature
3 filters hide all 24 cases.
The ledger is in its nightly verify window, so no compensating pair can be written. Raising, approving and recording correspondence all still work.
21:00 to 21:25 GST
The percentage needs a full settled cohort behind it, and only 4 days of receipts have posted through i3. The number is computed and is marked not yet authoritative, so nobody re-tiers a supplier on it.
GATE 3 day 4 of 7
Zero cases may reach a terminal state with neither a credit note nor a Finance-approved write-off. That assertion runs nightly, and it is the only thing standing between a claim register and a wish list.