Every registered business furnishing outward supplies under Section 37(1) of the CGST Act must file Form GSTR-1 by the 11th of the succeeding month for monthly filers, or the 13th for quarterly filers under Rule 59 of the CGST Rules. Generating this return directly from your accounting software eliminates repetitive manual typing on the portal. However, an unverified export frequently fails portal validation due to formatting errors or invalid GSTINs.
While reconciliation posts such as how to reconcile GSTR-2B with accounting software focus on inward purchase credits, this guide addresses outward supply reporting: generating clean GSTR-1 JSON files in Busy and passing portal validation on your first attempt.
Step 1: Run the GST error check utility in Busy
Before exporting data to JSON, Busy requires you to run its GST Error Check tool. This routine audits vouchers against statutory GST validation rules, identifying errors that would cause the GST portal to mark your upload as processed with error.
In Busy, open the menu: Display → GST Reports → GST Returns → GSTR-1. Select the relevant tax period and specify your date range. Before generating the final report, click on Check GST Errors.
Common mistake: Exporting JSON without checking GST errors leads to common portal rejections, such as an invalid state code in party masters, missing HSN summaries, or invalid GSTIN formats. Fixing these errors directly in Busy vouchers saves hours of manual troubleshooting on the portal.
The error check utility flags errors into two categories:
- Master errors: Invalid GSTIN checksum, incorrect state code assigned to a party master, or blank country code in export ledgers.
- Transaction errors: Blank HSN/SAC codes on sale items, tax rate mismatches between item masters and voucher tax categories, or missing place of supply on interstate transactions.
Step 2: Generate the GSTR-1 JSON file directly
After resolving all flagged errors, return to the GSTR-1 return window in Busy. Busy provides direct JSON export configured to the official GSTN schema without requiring the separate GST offline tool.
- Click the Export button (or press the export shortcut key) at the top of the GSTR-1 screen.
- Choose Direct JSON (As per GST Portal) from the export format options.
- Specify the target directory path where you want Busy to save the output file, for example C:\GST_Returns\GSTR1_Oct2026.json.
- Click Generate. Busy processes the transactions and saves the JSON file to your specified directory.
File size limit: According to the GSTN Returns Offline Tool User Manual, the size of a generated JSON file must not exceed 5 MB. If your outward invoice volume is exceptionally large, export quarterly or monthly chunks within acceptable file limits.
Step 3: Upload the JSON file on the GST portal
Once your JSON file is generated from Busy, upload it to the GST portal following the official submission procedure documented in the GSTN GSTR-1 Filing User Guide.
- Log in to the GST portal (gst.gov.in).
- Navigate to Services → Returns → Returns Dashboard.
- Select the Financial Year and the Return Filing Period, then click Search.
- In the Details of outward supplies of goods or services (GSTR-1) tile, click on Prepare Offline.
- Under the Upload tab, click Choose File and select your Busy exported JSON file.
- The portal displays an upload status of In Progress. Refresh after two minutes. The status should update to Processed with zero error records.
Worked example: Validating invoice totals against Busy books
Before submitting GSTR-1 on the portal, verify that the exported values in Busy match your outward sales registers and financial books. Consider a distributor, Shiva Electricals, filing GSTR-1 for October 2026 in Busy with three distinct transaction types:
| Voucher category | Taxable value | CGST | SGST | IGST | Total value |
|---|---|---|---|---|---|
| B2B Local Supplies | ₹5,00,000 | ₹45,000 | ₹45,000 | Nil | ₹5,90,000 |
| B2B Inter-State Supplies | ₹3,00,000 | Nil | Nil | ₹54,000 | ₹3,54,000 |
| B2C Small Supplies | ₹1,20,000 | ₹10,800 | ₹10,800 | Nil | ₹1,41,600 |
| Total summary | ₹9,20,000 | ₹55,800 | ₹55,800 | ₹54,000 | ₹10,85,600 |
Calculate the total outward tax liability to reconcile books against the return:
Total Tax = CGST (₹55,800) + SGST (₹55,800) + IGST (₹54,000) = ₹1,65,600
When the JSON file is uploaded to the portal, confirm that the summary displayed on the GSTR-1 dashboard mirrors these figures exactly. If tax payable reported in GSTR-1 exceeds the tax declared in Form GSTR-3B, the taxpayer risks receiving an automated tax difference notice under Rule 88C in Form DRC-01B.
Resolving common portal JSON upload errors
If the GST portal marks the uploaded JSON file as Processed with Error, click on Generate error report in the Error Report column. Download the error file, open it in Busy or the offline tool, and address the specific issue:
- Duplicate invoice number: An invoice number already uploaded in a previous tax period cannot be re-uploaded. Check your voucher series in Busy.
- Inactive recipient GSTIN: If the buyer's GST registration was cancelled or suspended prior to the invoice date, the portal rejects B2B table entry. Move the transaction to B2C or obtain clarification from the buyer.
- HSN summary mismatch: The aggregate taxable value and tax amounts in the HSN summary table must match the total invoice-level supplies across B2B, B2C, and export tables.
Frequently asked questions
Why does the GST portal reject the JSON file exported from Busy?
The portal rejects a JSON file if it contains structural errors such as an invalid or inactive recipient GSTIN, missing HSN summaries, negative tax values, or file size exceeding 5 MB. Running the error check utility inside Busy before export resolves these mismatches.
Can I upload a GSTR-1 JSON file directly to the GST portal without the offline tool?
Yes, Busy generates a portal-compliant JSON file directly. On the GST portal, go to Services > Returns > Returns Dashboard, select your tax period, click Prepare Offline under Form GSTR-1, and upload the JSON file directly.
What is the file size limit for uploading a GSTR-1 JSON file?
The size of a single JSON file uploaded to the GST portal must not exceed 5 MB according to GSTN offline utility guidelines. If your transaction volume exceeds this limit, you must export and upload data in smaller date batches or split files.
Check your purchase register against GSTR-2B
While Busy exports your outward GSTR-1 return, claiming input tax credit requires matching your purchase register against auto-drafted GSTR-2B data. Reconcile thousands of purchase vouchers in seconds with our privacy-first browser matching tool.
Your GSTR-2B and purchase register files are read in your browser and never uploaded to any server.
Last checked: 27 October 2026. Sources: CBIC CGST Rule 59, GSTN GSTR-1 Filing Manual.