This is a sample article, kept here so the page design can be reviewed. Replace it with the published piece by dropping the real markdown file into articles-src and running python build.py.
Refunds under the inverted duty structure remain one of the most litigated corners of GST. The recent amendments changed the computation mechanics, and a claim drafted on last year's template is now an invitation for a deficiency memo.
Where claims actually fail
In practice, most rejections trace back to three places: the Net ITC computation including ineligible credits, mismatch between the refund statement and GSTR-2B, and claims filed beyond the two-year window measured from the wrong relevant date.
| Failure point | Typical objection | Practical fix |
|---|---|---|
| Net ITC | Includes services or capital goods | Rebuild from purchase register, not 3B |
| Turnover mismatch | Statement 1A vs GSTR-1 gap | Reconcile before filing, annex working |
| Time limit | Relevant date taken as filing date | Map each period to its due date |
The computation, mechanised
The formula itself is arithmetic; the discipline is in the inputs. My own working papers are generated by a small Python routine that reads the purchase register and the returns, applies the eligibility filters, and emits the annexure ready for RFD-01.
refund = (inverted_turnover / adjusted_total_turnover) * net_itc - output_tax_on_inverted
The point is not the code. The point is that every figure in the claim traces to a source document, mechanically, every time.
A refund claim is a brief, not a form. Draft it like one.
The full playbook, with the amended provisions and the filing sequence, follows in the published version of this piece.