GSTR-3B is the monthly summary return for one GSTIN: you declare total outward supplies, input tax credit (ITC) and the tax payable for the month, rather than listing individual documents. In xMatix, a GSTR 3B record is prepared after the month's GSTR-1 and GSTR-2B are in place. Process GSTR3B fills the boxes from those two returns and your own tax ledger. You then review the return, complete the boxes xMatix cannot know, and either file through your GSP integration (Save to GSTN, Check Save Status, Submit File to GSTN) or file on the government portal yourself and use Record Manual Filing. A Filed GSTR-3B feeds the annual GSTR-9.
Overview
Each GSTR 3B record covers one GSTIN and one monthly return period. It has two tabs:
- Overview shows the return in form layout: tables 3.1, 3.1.1, 4A, 4B, the derived 4C net ITC line, 4D and 6.1, each with taxable value, integrated tax, central tax, state/UT tax and cess, and a Total Amount row. Every statutory line is shown, even before the return is processed (at ₹0.00). Clicking a line, or View All under a table, opens the records behind that table for this return.
- Details holds the header fields: Label, GSTIN, Return Period, Status, Filed On, Ack Number, GSP Reference Id, Computed At, Is Nil Return and Processed Invoice Value.
The record header carries the buttons Process GSTR3B, Save to GSTN, Check Save Status, Submit File to GSTN and Record Manual Filing.
When to use it
Use GSTR-3B every month for each active, regular (non-ISD) GST registration. An Input Service Distributor registration files GSTR-6 instead and gets no GSTR-3B. Work on a month's GSTR-3B after the month's sales and purchase documents are posted, its GSTR-1 is processed and its GSTR-2B statement is loaded.
How xMatix handles it
Records are created for you. xMatix does not offer a New button for GSTR-3B. The Provision GST returns scheduled job, or the Provision GST Returns action on a GST Registration, creates one Draft GSTR-3B per active registration per month (together with GSTR-1 and GSTR-2B). The return is named after the GSTIN and period and labelled, for example, "GSTR-3B Aug 2026". Running provisioning again never creates a duplicate. See The GST console.
Process GSTR3B rebuilds the derived boxes in one pass. It first refreshes the Rule 37 tracker from your purchase bills. It then picks its sources, replaces every row it derived last time, and sets Status to Computed and stamps Computed At.
The sources are:
- GSTR-1: the same-GSTIN, same-period GSTR-1, preferring a Filed one. When none is Filed, the latest Draft is used.
- GSTR-2B: the latest same-GSTIN, same-period statement by generation date.
| Box | What xMatix puts there | Source |
|---|---|---|
| 3.1(a) | Taxable outward supplies: B2B (except SEZ), B2C large and B2C small. Credit notes reduce it and debit notes add to it | The selected GSTR-1, books side only |
| 3.1(b) | Zero-rated supplies: exports and SEZ supplies (with or without payment) | The selected GSTR-1 |
| 3.1(c) | Nil-rated and exempt supplies (value only) | The selected GSTR-1's nil/exempt rows |
| 3.1(d) | Inward supplies liable to reverse charge | Your tax ledger: input tax lines flagged reverse charge, dated in the month |
| 3.1(e) | Non-GST outward supplies | Manual — never computed |
| 3.1.1 (i) and (ii) | E-commerce supplies under section 9(5) | Manual — never computed or cleared |
| 4A line (1) | Import of goods, including from SEZ (IGST and cess) | The GSTR-2B statement, portal side |
| 4A line (2) | Import of services | Manual — never computed |
| 4A line (3) | Reverse-charge B2B invoices and amendments marked available | The GSTR-2B statement, portal side; invoices with IMS status Reject are excluded |
| 4A line (4) | ISD credits marked available (ISD credit notes are reversed in 4B(2)) | The GSTR-2B statement, portal side |
| 4A line (5) | All other B2B invoices and amendments, and supplier debit notes and debit note amendments, marked available | The GSTR-2B statement, portal side; documents with IMS status Reject are excluded |
| 4B(1) | ITC you blocked (for example under section 17(5)) | Your tax ledger: input lines with ITC eligibility Blocked, dated in the month |
| 4B(2) | Rule 37 reversals: bills still unpaid 180 days after the bill date | The Rule 37 tracker |
| 4B(2) | Credit notes: supplier credit notes, credit note amendments and ISD credit notes marked available, as a separate row | The GSTR-2B statement, portal side; notes with IMS status Reject are excluded |
| 4C | Net ITC available (4A minus 4B) | Calculated on screen and when sent to GSTN; not stored |
| 4D(1) | Rule 37 reclaims: earlier reversals whose bill was paid this month | The Rule 37 tracker |
| 4D(2) | ITC the statement shows as not available (disclosure only) | The GSTR-2B statement's ITC summary |
| 6.1 | Tax payable per head (IGST, CGST, SGST, Cess) | The tax in 3.1(a), 3.1(b) and 3.1(d), gross of ITC |
Three design points explain most questions:
- Outward figures follow the GSTR-1 exactly. Documents you marked Ignore or Carry Forward on the GSTR-1 are left out of 3.1, just as they are left out of the filed GSTR-1. A carried-forward document counts once, in the period it was carried into.
- Reversals and reverse charge come from your ledger, not the statement. GSTR-2B cannot know which credits you blocked or your reverse-charge workings, so 3.1(d) and 4B(1) are read from your own tax lines.
- 4A lines follow the government form. Line (3) is inward supplies liable to reverse charge and line (4) is inward supplies from ISD, on the Overview and in what Save to GSTN sends. B2B amendments are added at their full amended amounts, and the original invoice from an earlier month is not subtracted (see GSTR-2B). Credit and debit note amendments work the same way: they are counted at their full amended amounts in 4B(2) or 4A(5), and the original note is not offset (see GSTR-2B). ISD credit amendments are also counted at their full amended amounts, in 4A(4) or, for ISD credit notes, in 4B(2) (see GSTR-2B).
Rows you enter by hand are never overwritten. Every derived row is marked as auto-filled. Reprocessing replaces only those rows; a row without the mark survives every recompute. Table 6.1 is updated in place: Process GSTR3B refreshes only Payable and keeps whatever was recorded as paid in cash or through each credit ledger.
Saving to GSTN is a two-stage exchange. The GSTN save is asynchronous: Save to GSTN only queues the return, and Check Save Status fetches GSTN's verdict. Submit File to GSTN is allowed only after GSTN has accepted the save. None of these buttons talks to GSTN directly. Each one prepares the request on the return, and your tenant's GSP integration flows send it and write the answer back.
Prerequisites
- The month's GSTR 3B record exists (provisioned) and carries a valid 15-character GSTIN and a Return Period.
- Sales and purchase documents for the month are posted, so the tax ledger is complete.
- The month's GSTR-1 is processed. Filed is preferred; a Draft is used only when no Filed GSTR-1 exists.
- The month's GSTR-2B statement is loaded, portal side included.
- Supplier payments are posted against their bills, so the Rule 37 tracker sees which bills are settled.
- To file through the GSP: your administrator has configured the GSTR-3B integration flows (see Configuration), you have the Save to GSTN, Check Save Status and Submit File to GSTN permissions, and the filer GSTIN's GST Registration has a live GSTN session.
Procedure
Step 1 — Open the return
Open the month's GSTR-3B from the GST console filing card, or from the GSTR 3B list. On Details, check the Label, GSTIN and Return Period, and that Status is Draft (or Computed if it has been processed before).
Step 2 — Process the return
Click Process GSTR3B. When it finishes, Status is Computed and Computed At shows the time. Open Overview and refresh it. The derived lines are now filled.
If your administrator scheduled the Process GSTR-3B data job, this may already have happened overnight. Reprocessing is always safe on an unfiled return: it rebuilds only the derived rows.
Step 3 — Review every box against its source
For each filled line, reconcile the total to the source named in the table above:
- 3.1 to the selected GSTR-1's summary;
- 4A to the GSTR-2B statement;
- 3.1(d) and 4B(1) to your tax ledger for the month;
- 4B(2) and 4D(1) to the Rule 37 tracker.
Click a line to see the records behind it. Pay particular attention to 4A lines (3) and (4) (see How xMatix handles it).
If a figure is wrong, fix the source and click Process GSTR3B again; do not edit a derived row. Examples are a missing bill, a wrong ITC eligibility on a tax line, or a document that should be ignored on the GSTR-1.
Step 4 — Complete the boxes xMatix cannot know
Add these yourself as rows on the matching table:
- 3.1(e) non-GST outward supplies, as a GSTR 3B Table 3.1 row with Row Code 3.1e and the value in Taxable Value (see Common questions);
- table 3.1.1 (e-commerce supplies under section 9(5)), one row per line with Row Code 3.1.1i or 3.1.1ii (see Common questions);
- 4A line (2) import of services;
- a Rule 42/43 proportional reversal in 4B(1) (see Input tax credit management);
- any extra 4D disclosure;
- in 6.1, the amounts paid in cash and through each credit ledger, plus any interest, late fee or penalty heads.
Rows you add are kept when the return is reprocessed. In the standard configuration these tables open as read-only lists. If you cannot add a row, ask your administrator (see Common problems).
Step 5 — File through the GSP: save, check, file
- Make sure the filer GSTIN has a live session: on its GST Registration, click Request GSTN OTP, then Submit OTP with the code you receive, and wait for Auth Status to show Authenticated. A session is treated as expired 6 hours after Authenticated.
- On the GSTR-3B, click Save to GSTN and confirm Save this return to GSTN? The return's 3.1 rows and 4A/4B/4D rows, with the derived 4C net line, are queued for GSTN. Save Status becomes SaveRequested, then Submitted once the gateway issues a reference; the reference appears in GSP Reference Id.
- Click Check Save Status. xMatix asks GSTN what it did with the save; reopen the return a few seconds later. The verdict is one of:
- Accepted: GSTN committed the return, and Status becomes Saved.
- RejectedByGstn: GSTN Response lists one line per rejected box.
- Still Submitted: GSTN is still processing. Click Check Save Status again.
- When Save Status is Accepted, click Submit File to GSTN and confirm File this return with GSTN? When GSTN answers, Ack Number is filled, Status becomes Filed, and Filed On is stamped.
Table 3.1.1 and Table 6.1 are not sent to GSTN; enter any 3.1.1 figures on the portal before you file. Pay the tax and offset liabilities on the portal, where your electronic cash and credit ledgers are held.
Step 6 — Or record a filing you made on the portal
If you filed the GSTR-3B directly on the government portal, click Record Manual Filing. Enter the Ack Number (from the GSTN portal) (required, at most 20 characters) and Filed On (defaults to now if left empty). The return becomes Filed. This button sends nothing to GSTN; it only records the outcome.
Step 7 — After filing
A Filed return is a frozen statutory snapshot. Process GSTR3B, Save to GSTN and Submit File to GSTN are refused on it, and the scheduled job skips it. GSTR-9 reads only Filed GSTR-3B returns. Corrections go through a later period's return.
Fields
- 1
Label should identify the GST registration and filing period for reviewers.
- 2
GSTIN determines the registration whose liabilities and credits are computed.
- 3
Return Period fixes the statutory month or quarter represented by this snapshot.
- 4
Is Nil Return is a statutory declaration, not a shortcut for an unprocessed period.
- 5
Processed Invoice Value is not currently assigned by Compute and may remain blank; it is not completion evidence.
| Field | What it means | Notes |
|---|---|---|
| Label | The return's display name, for example "GSTR-3B Aug 2026" | Set by provisioning; required on the form |
| GSTIN | The filer's GST identification number | Must be a well-formed 15-character GSTIN; checked whenever the record is saved |
| Return Period | The monthly GST fiscal period this return covers | Required. Decides which GSTR-1, GSTR-2B and ledger lines are read |
| Status | Where the return is in its lifecycle | Written by the actions: Draft → Computed → Saved → Filed. The list also offers Pushed to GSTN and GST Payment Made, which no action sets |
| Filed On | Date the return was filed | Stamped by Submit File to GSTN, or entered in Record Manual Filing |
| Ack Number | The acknowledgement GSTN issued for the filing | At most 20 characters. Required for Record Manual Filing |
| GSP Reference Id | The reference GSTN issued for the latest save | Not a receipt — only Check Save Status can tell whether GSTN accepted the save |
| Computed At | When Process GSTR3B last ran | Read-only in practice |
| Is Nil Return | Your marker that the month is a nil return | Informational: no action reads it, and Save to GSTN still refuses a return with no rows |
| Processed Invoice Value | A header total field | Not filled by Process GSTR3B; a blank value does not mean processing failed |
| Save Status | Where the GSTN save/file exchange is | Not on the standard web form; see the table below. Never edit it by hand |
| GSTN Response | GSTN's or the gateway's last message for this return, including the per-box error list on a rejection | Not on the standard web form; shown on the mobile layout |
| Is Filed | Yes once the return is filed by either route | Set together with Status Filed |
Save Status values
| Value | Meaning | What to do |
|---|---|---|
| (empty) | Never sent to GSTN | — |
| SaveRequested | Save to GSTN was clicked; the save flow is running | Wait; after 5 minutes you may click again |
| Submitted | GSTN queued the save and issued a GSP Reference Id | Click Check Save Status |
| SubmitFailed | The gateway refused the save, or GSTN returned an unrecognised status | Read GSTN Response, fix, save again |
| StatusRequested | Check Save Status is fetching GSTN's verdict | Reopen the return in a few seconds |
| Accepted | GSTN committed the return (Status Saved) | Submit File to GSTN |
| RejectedByGstn | GSTN processed the return with errors, or refused it | Read GSTN Response, fix the source, reprocess, save again |
| FileRequested | Submit File to GSTN was clicked; the file flow is running | Wait for the acknowledgement |
| Filed | GSTN filed the return and issued an acknowledgement | Nothing — the return is final |
| FileFailed | GSTN refused the file call | Read GSTN Response; the return is not filed and can be filed again |
The full field list, including the box tables, is in the GSTR 3B entity reference.
Business rules
- GSTIN check. Creating or saving a GSTR-3B with a malformed GSTIN is refused: "'…' is not a valid 15-character GSTIN."
- Processing preconditions. Process GSTR3B is refused on a Filed return ("A filed GSTR-3B cannot be recomputed.") and when the GSTIN or Return Period is missing.
- Source selection. Process GSTR3B takes a Filed GSTR-1 before a Draft one, then the most recent filing date. It takes the GSTR-2B statement with the latest generation date. It reads only the books side of GSTR-1 and only the portal side of GSTR-2B, so the two sides are never added together.
- Ledger rows are by document date. 3.1(d) and 4B(1) read input tax lines for the GSTIN whose document date falls in the return month.
- Rule 37 tracker. Each purchase bill with eligible ITC for the GSTIN, dated on or before the month end, gets a tracker row.
- The row records the ITC (IGST, CGST, SGST), a due date 180 days after the bill date and, once the bill's open amount is zero, the latest payment date.
- A bill still unpaid at month end after its due date is reversed in 4B(2), once.
- When it is later paid, it is reclaimed in 4D(1) in the month of payment, once.
- Reprocessing a month never reverses or reclaims the same bill twice.
- 6.1 payable is gross. Payable per head is the tax on 3.1(a) + 3.1(b) + 3.1(d). ITC is a way of discharging it, not a deduction from it. Reverse-charge tax is folded into each head's single total.
- Save to GSTN is refused when:
- the return is filed;
- the return has no rows to send;
- the GSTIN has no GST Registration or no live GSTN session;
- a save, file or status check started less than 5 minutes ago.
- What Save to GSTN sends. It sends 3.1 and 4A/4B/4D, plus the 4C net line when 4A has figures. Tables with no figures are left out, so a re-save never blanks a table saved earlier. Table 6.1 is never sent.
- Submit File to GSTN is refused unless Save Status is Accepted. It rebuilds the request from the rows as they are at that moment.
- Record Manual Filing is refused when the return is already Filed, has no valid GSTIN, has no Ack Number or one longer than 20 characters, or while a GSP filing is in progress (Save Status FileRequested).
- Filed is one-way. Nothing in the product turns a Filed return back to an earlier status.
- Scheduled processing.
- The Process GSTR-3B data job processes unfiled returns in Open periods, or in a month, GSTIN or single return you name.
- It skips a return whose GSTR-1 or GSTR-2B has not been processed yet, with the reason "waiting for GSTR-1" or "waiting for GSTR-2B".
- It sets Status to Computed on every run, including on a return that was Saved. Save Status is not changed.
Example
A trading company holds GSTIN 29AAAAA0000A1Z5 and is preparing its August 2026 GSTR-3B in September.
- The scheduled provisioning created "GSTR-3B Aug 2026" in Draft on 1 August. The August GSTR-1 has been processed and filed. The August GSTR-2B statement has been loaded.
- The accountant opens the return and clicks Process GSTR3B. Overview shows:
- 3.1(a): taxable value ₹8,00,000 with IGST ₹54,000, CGST ₹45,000 and SGST ₹45,000. This already nets a ₹20,000 credit note.
- 4A line (5): IGST ₹30,000, CGST ₹20,000, SGST ₹20,000.
- 4B(2): CGST ₹3,000 and SGST ₹3,000 for a supplier bill dated 10 February 2026 that is still unpaid. Its 180-day due date was 9 August.
- 6.1: payable IGST ₹54,000, CGST ₹45,000, SGST ₹45,000.
- The accountant checks 3.1(a) against the GSTR-1 summary and 4A against the GSTR-2B statement, and confirms with purchasing that the February bill is genuinely unpaid.
- The company has no import of services, e-commerce or non-GST supplies this month, so no manual rows are needed.
- The finance manager authenticates the GSTIN on its GST Registration, clicks Save to GSTN, then Check Save Status. A few seconds later Save Status is Accepted and Status is Saved.
- The finance manager pays the net liability on the portal, clicks Submit File to GSTN, and the return comes back Filed with an Ack Number.
- The supplier is paid on 15 September. When the September GSTR-3B is processed, the same CGST ₹3,000 and SGST ₹3,000 appear in 4D(1) as a reclaim.
Training
Practice exercise
In a sandbox tenant with one active GST registration:
- Post two sales invoices and one purchase bill in the current month, then process the month's GSTR-1 and load its GSTR-2B.
- Open the month's GSTR-3B and click Process GSTR3B.
- Find the invoices' tax in 3.1(a) and the bill's credit in 4A, if the bill's supplier appears in the GSTR-2B statement.
- Click Process GSTR3B a second time.
- Click Record Manual Filing with an Ack Number of your choosing, then try Process GSTR3B once more.
Expected result:
- After the first run, Status is Computed and Computed At is set.
- After the second run, the figures are unchanged.
- After Record Manual Filing, Status is Filed, Filed On is set, and the last Process GSTR3B is refused with "A filed GSTR-3B cannot be recomputed."
Quick reference
- GSTR-3B records are created by provisioning, not with a New button.
- Process GSTR3B rebuilds only auto-filled rows; your own rows survive.
- 3.1 comes from GSTR-1 (Filed preferred), 4A from the latest GSTR-2B, and 3.1(d) and 4B(1) from your tax ledger.
- Fix the source and reprocess; never edit a derived row.
- Check 4A lines (3) and (4) on the portal before filing through the GSP.
- Save to GSTN, then Check Save Status until Accepted, then Submit File to GSTN.
- Record Manual Filing is only for a return you filed on the portal yourself.
- Table 6.1 is never sent — pay and offset on the portal.
- Filed cannot be undone; corrections go in a later period.
Permissions
Each button is a server action that a security profile must grant. In the standard profiles:
| Action | System Admin | Standard User |
|---|---|---|
| Process GSTR3B | Yes | Yes |
| GetGSTR3B (the Overview summary) | Yes | Yes |
| Record Manual Filing | Yes | Yes |
| Save to GSTN | Yes | No |
| Check Save Status | Yes | No |
| Submit File to GSTN | Yes | No |
A user whose profile lacks an action does not get that action. Because the three GSP actions transmit a real return to GSTN, grant them deliberately, and only to the finance profile that files returns. Reading the record also depends on the profile's access to the GSTR 3B entity; see Why can't a user see a record?.
Configuration
- GST registrations.
- Each GST Registration that is active and has a GSTIN gets a monthly GSTR-3B. A registration with Enable ISD gets a GSTR-6 instead.
- The registration's Provision GST Returns action creates the current month's returns on demand.
- Request GSTN OTP and Submit OTP establish the GSTN session that all three GSP actions need. A session lasts about 6 hours.
- GST fiscal periods. Each return hangs off a monthly GST fiscal period. Provisioning creates the period, Open, if it does not exist. The scheduled processing job works on Open periods unless it is given a month.
- Scheduled jobs (Setup → Administration → Jobs):
- Provision GST returns creates the Draft headers for the current month in India time.
- Process GSTR-3B data runs Process GSTR3B on unfiled returns once their GSTR-1 and GSTR-2B are processed. It makes up to 3 attempts and runs one at a time per tenant.
- Both run only when a schedule is set for them.
- Schedule GSTR-3B processing after GSTR-1 and GSTR-2B processing.
- GSP integration (Setup → Platform → Integrations). Filing through the GSP needs, in one integration app:
- a connection to your GSP gateway and its secrets;
- three flows, each with an entity-event trigger on GSTR 3B updates:
- the save flow, for Save Status SaveRequested;
- the return-status flow, for StatusRequested;
- the file flow, for FileRequested.
All three must use the same GSP partner credentials, because only the partner that received a save reference can redeem it. Without the flows the buttons still respond, but nothing reaches GSTN and Save Status stays at the requested value. See Outbound integrations.
- Security profiles. Grant Save to GSTN, Check Save Status and Submit File to GSTN on GSTR 3B to the profile that files returns (see Permissions).
- The form. The standard web form does not show Save Status or GSTN Response. Add both to the Details tab in the form designer so filers can see where the GSTN exchange stands and why GSTN rejected a save.
- Entering manual rows.
- The box tables (GSTR 3B Table 3.1, Table 3.1.1, Table 4A ITC, Table 4B ITC, Table 4D ITC and GSTR 3B Payment) ship without New or Edit actions or entry forms.
- If your team keys manual figures in xMatix, add a New action and form to the tables they use.
- Rows entered that way must have Is Auto Filled (Auto Filled on the 4B and 4D tables) off, or the next Process GSTR3B treats them as derived and replaces them.
- Table 6.1 is the exception. To record paid amounts, add an Edit action and an entry form to GSTR 3B Payment, then edit the four computed head rows. Their Is Auto Filled stays on, and reprocessing refreshes only Payable. Add separate rows only for heads xMatix does not compute, such as interest, late fee or penalty.
- GSTR 3B Payment also ships with no list view. Add one if you want View All under 6.1 to list the head rows with their paid amounts.
- Mobile. The GSTR 3B record has a mobile layout with the same five buttons, the header fields and GSTN Response. Whether it is reachable in the field app depends on your mobile app configuration.
Common problems
Box 3.1 is zero or lower than my sales
Process GSTR3B uses the same-GSTIN, same-period GSTR-1, preferring a Filed one. Check that the GSTR-1 for this GSTIN and month was processed. Also check which documents on it you marked Ignore or Carry Forward, because those are excluded from 3.1 on purpose. Reprocess the GSTR-3B after fixing the GSTR-1.
A credit I expected is missing from 4A
4A reads only the latest GSTR-2B statement for the month, portal side, and only lines marked available. An invoice with IMS status Reject is excluded. If the supplier has not reported the invoice, it is not in the statement and cannot be in 4A. Blocked credit appears in 4B(1), not 4A.
"A filed GSTR-3B cannot be recomputed."
The return is Filed and frozen. Corrections go through a later period's return.
Process GSTR3B fails because the return period or GSTIN is not set
The return is missing its Return Period or GSTIN. Provisioned returns always have both; a cloned or imported record may not. Work on the provisioned return for that GSTIN and month instead, or ask your administrator to complete the two fields.
A figure I typed into a derived row disappeared
Process GSTR3B (or the scheduled job) replaced it, because derived rows follow their sources. Correct the source document instead, or record the figure on a row that is not auto-filled.
My 3.1(e) row shows ₹0.00 on the Overview
The Overview puts a Table 3.1 record on a line only when its Row Code contains the line's code without brackets. A record coded 3.1(e) appears on no line, and Save to GSTN does not send it either, because it matches only the exact code 3.1e. Change the Row Code to 3.1e. If you added more than one 3.1e record, the Overview shows only one of them, but Save to GSTN sends their total.
I can't find where to enter a manual figure
In the standard configuration the box tables are read-only lists. Ask your administrator to add an entry form (see Configuration).
Processed Invoice Value is blank after processing
That is expected: Process GSTR3B does not fill it. Use Status, Computed At and the Overview figures to confirm the run.
"… is not authenticated with GSTN. Request an OTP and complete authentication first."
The filer GSTIN has no GSTN session, or the session has expired ("The GSTN session for … has expired"). Run Request GSTN OTP and Submit OTP on its GST Registration, then try again. If the message is "No GST registration found for …", the GSTIN on the return has no GST Registration record.
"This return has no computed rows to push."
Process GSTR3B has not been run, or produced nothing. Process the return first. For a genuine nil month, file on the portal and use Record Manual Filing; the Is Nil Return switch does not change what Save to GSTN sends.
"A push is already in progress for this return."
A save, file or status check was started less than 5 minutes ago. Wait. If Save Status is still SaveRequested, StatusRequested or FileRequested after 5 minutes, the integration flow did not run or did not write back. Your administrator should check the flow's trigger and run history. You can then click again.
"GSTN will not file a return it has not committed."
Submit File to GSTN needs Save Status Accepted. Run Save to GSTN, then Check Save Status until it reports Accepted.
"There is no queued save to check"
Check Save Status works only when Save Status is Submitted. Save the return first. If the message says GSTN issued no reference id, read GSTN Response for the reason and save again.
Save Status is RejectedByGstn
GSTN Response starts with "GSTN processed the return with errors." or "GSTN refused the return." and lists each rejected box. Correct the source, click Process GSTR3B, then Save to GSTN again.
GSTN Response says the status answer could not be read
The gateway refused the status call. The usual causes are an expired session, or a return-status flow running with different partner credentials from the save flow. Re-authenticate and click Check Save Status again. If it persists, ask your administrator to check the flows.
Status went back from Saved to Computed
The scheduled processing job reprocessed the return; it does this to every unfiled return. If the figures changed, run Save to GSTN and Check Save Status again before you file, so GSTN holds what you file.
Make Challan does nothing
xMatix does not generate GST payment challans. Create the challan and pay on the government portal.
Common questions
Do I have to file GSTR-1 before processing GSTR-3B?
No, but it is the safer order. Process GSTR3B prefers a Filed GSTR-1 for the same GSTIN and month and falls back to a Draft one only when none is Filed. Because a Draft can still change, figures computed from it can move. The scheduled job is stricter about readiness but not about filing: it waits until the month's GSTR-1 and GSTR-2B have both been processed, then computes whether or not GSTR-1 is Filed. Reprocess the GSTR-3B whenever the GSTR-1 changes, and always before you save it to GSTN.
What is the difference between Submit File to GSTN and Record Manual Filing?
Submit File to GSTN files the return through your GSP integration. It is available only after GSTN has accepted the save, and it writes back GSTN's acknowledgement itself. Record Manual Filing transmits nothing: it records a filing you already completed on the government portal, using the acknowledgement number you type in. Both end the same way, with Status Filed, Is Filed set, Filed On and Ack Number. Use one route per return; Record Manual Filing is refused while a GSP filing is in progress.
Does xMatix pay my GST or offset my credit?
No. Table 6.1 shows the gross tax payable per head, derived from table 3.1, and has fields for amounts paid in cash and through each credit ledger. However, xMatix does not hold your electronic cash and credit ledger balances, so it neither calculates the offset nor sends table 6.1 to GSTN. Pay tax, create challans and offset credit on the government portal. Record the amounts on the 6.1 rows if you want them on file, because GSTR-9 reads those rows for its tax-paid table. In the standard configuration the 6.1 rows are read-only, so your administrator must first add an Edit action and form (see Configuration).
How are the 6.1 rows stored, and what does GSTR-9 do with them?
Each head is one GSTR 3B Payment record on the return. Process GSTR3B creates four, IGST, CGST, SGST and Cess, named for example 6.1-IGST, and on later runs updates them in place. It rewrites only Payable, rounded to two decimals, and keeps Paid Cash and the four Paid ITC amounts, so recording what you paid is safe across reprocessing. The record page shows Tax Head, Payable, Paid Cash, Paid ITC IGST, Paid ITC CGST, Paid ITC SGST and Paid ITC Cess.
On the Overview each head's payable appears in its own tax column, and the paid amounts are not shown. The grand totals leave 6.1 out, so outward tax is not counted twice. A head you add by hand, such as Interest or Late fee, has no tax column, so its line shows ₹0.00. Its amount still reaches GSTR-9.
Once the return is Filed, GSTR-9 Table 9 adds up its 6.1 rows by head. It matches common spellings of a head, such as Integrated Tax or Late Fee, and puts any head it does not recognise under Other. Every row counts. So record what you paid on the existing head row rather than adding a second IGST row with a Payable, or that head's payable is counted twice.
Can I un-file a GSTR-3B?
No. Filed is one-way in xMatix, as it is at GSTN. Processing, saving and filing are all refused on a Filed return, and nothing in the product moves it back to an earlier status. If you find an error after filing, correct the source documents and report the adjustment in a later period's return. Before using Record Manual Filing, check the acknowledgement number against the portal, because a wrong entry cannot be undone from the screen.
Which 4A line holds my ISD credit and which my reverse-charge credit?
xMatix follows the government form. Line (3) holds credit on inward supplies liable to reverse charge: the B2B invoices and amendments on your GSTR-2B that are flagged reverse charge. Line (4) holds credit distributed to you by an Input Service Distributor. ISD credit notes are not counted there; they are reversed in 4B(2) together with supplier credit notes. The Overview labels and Save to GSTN use the same numbering. If you processed the return before this numbering was in place, click Process GSTR3B again. Reprocessing rewrites the auto-filled 4A rows, and rows you entered by hand are kept.
How are the 4A lines stored, and what else reads them?
Each 4A line with a figure is one GSTR 3B Table 4A ITC record on the return, holding the line number (1 to 5), the four tax amounts and the Is Auto Filled mark. Process GSTR3B writes a record only for a line that has an amount, so a line showing ₹0.00 on the Overview usually has no record behind it. Line (2) import of services is never computed. The record page is read-only: it has no Edit, Delete or Clone button. Save to GSTN adds together all records with the same line number. Once the return is Filed, the annual return reads its 4A records for Table 6: line (5) feeds 6B, line (3) feeds 6C and 6D, line (1) feeds 6E, line (2) feeds 6F and line (4) feeds 6G.
What is in Table 4D, and why is line (1) captioned "As per section 17(5)"?
Process GSTR3B stores each 4D line that has an amount as a GSTR 3B Table 4D ITC record. Line (1) is the Rule 37 reclaim of credit reversed in 4B(2) earlier, in the month the bill is paid, without cess. Line (2) is the "ITC not available" total from the GSTR-2B statement's ITC Summary, which exists only once the statement has been pulled from GSTN. The Overview captions the lines "(1) As per section 17(5)" and "(2) Others", but the figures are the reclaim and the GSTR-2B disclosure. 4D does not change the 4C net line. Save to GSTN sends line (1) as type RUL and line (2) as OTH. GSTR-9 Table 6H reads line (1) of Filed returns.
How are the 4B lines stored, and which GSTR-9 row does each reversal reach?
Process GSTR3B stores each 4B figure as a GSTR 3B Table 4B ITC record holding the line number, a Reversal Reason and the four tax amounts. There are up to three: line (1) for blocked credit, and two separate line (2) records, one for the Rule 37 reversal (reason RULE37) and one for credit notes (reason CREDIT_NOTES). Save to GSTN adds together records with the same line, and 4C subtracts them all. GSTR-9 Table 7 sorts the records of Filed returns by reason. Rule 37 goes to 7A, and credit notes and any record with no reason go to 7H. Bill lines have no blocked-reason field, so the computed line (1) record normally has no reason and reaches 7H, not 7E. Review Table 7 before you file the annual return.
Why was a bill reversed under Rule 37, or not reclaimed when I paid it?
Each run of Process GSTR3B builds a GSTR 3B Rule 37 Tracker record for every purchase bill of the GSTIN that carries eligible credit and is dated on or before the month end. The record holds the bill's credit, its 180-day due date and a Paid On date. Paid On is filled only when the bill's open amount is zero and a dated payment is applied to it, so a part-paid bill still counts as unpaid. The first return you process therefore reverses every older overdue bill at once. A reclaim lands only in the return for the month that contains Paid On. If that month's return was filed before you recorded the payment, no later return picks it up, so add the reclaim as a 4D(1) row that is not auto-filled. Tracker records are in no app and their record page is read-only.
How are the 3.1 lines stored, and what reads them?
Each run of Process GSTR3B writes four GSTR 3B Table 3.1 records on the return, one each for Row Codes 3.1a, 3.1b, 3.1c and 3.1d. It writes all four even when a figure is zero or negative, and marks them Is Auto Filled. Only the 3.1a record has Is Locked switched on, and that switch is just a marker: nothing in xMatix stops the record being changed. Line (e) is never computed. Any record you add yourself must use one of these Row Codes exactly. Save to GSTN adds together all records that share a code, but it sends only the taxable value for 3.1c and 3.1e, and no central or state tax for 3.1b. The Overview shows only the first record for each line. Table 6.1 Payable is worked out from the computed figures, so a record you add does not change it. Once the return is Filed, GSTR-9 row 4G reads the return's 3.1d records.
How do I report e-commerce supplies in Table 3.1.1, and where do they go?
Table 3.1.1 is entirely manual. Process GSTR3B never fills, clears or replaces it, so an empty table means nothing was entered, not a computed zero. Add one GSTR 3B Table 3.1.1 record per line, linked to the return, with Row Code 3.1.1i (tax payable by the e-commerce operator) or 3.1.1ii (supplies made through an operator) and the taxable value and tax amounts. The Overview shows only the first record per line and ignores other codes, such as 3.1.1(i). The table is not sent by Save to GSTN and is not in the 6.1 payable, so enter it on the portal before filing. GSTR-9 rows 4G1 and 5C1 are entered by hand as well.
Where can I see the history of a return's exchanges with GSTN?
Only the latest exchange is kept, on the return itself. Save Status shows where the exchange is, GSTN Response holds GSTN's or the gateway's last message (including the per-box error list on a rejection), GSP Reference Id holds the reference for the latest save, and Ack Number and Filed On record the filing. Each new Save to GSTN clears the previous reference and response. The data model also contains a GSTR 3B Filing Log entity, meant for one row per GSP call, but nothing in the product writes to it, and it appears in no app and on no GSTR-3B screen. An empty filing log therefore does not mean that the return was never sent. If you need a record of each attempt, copy GSTN Response before you save again.
