PHPackages                             susheelhbti/laravel-itr - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [API Development](/categories/api)
4. /
5. susheelhbti/laravel-itr

ActiveLibrary[API Development](/categories/api)

susheelhbti/laravel-itr
=======================

Laravel REST API package for ITR-1 (Sahaj) filing assistance — AY 2025-26

00PHP

Since May 18Pushed 2mo agoCompare

[ Source](https://github.com/susheelhbti/laravel-itr)[ Packagist](https://packagist.org/packages/susheelhbti/laravel-itr)[ RSS](/packages/susheelhbti-laravel-itr/feed)WikiDiscussions main Synced 1w ago

READMEChangelogDependenciesVersions (2)Used By (0)

susheelhbti/laravel-itr
=======================

[](#susheelhbtilaravel-itr)

**Laravel REST API Package for Indian Income Tax Return (ITR) Filing — AY 2026-27**

> Supports ITR-1, ITR-2, ITR-3, ITR-4 · New Regime Only · JSON generation for portal upload · No direct e-filing

---

Table of Contents
-----------------

[](#table-of-contents)

1. [Overview](#1-overview)
2. [What This Package Does](#2-what-this-package-does)
3. [AY 2026-27 Key Changes](#3-ay-2026-27-key-changes)
4. [Installation](#4-installation)
5. [Configuration](#5-configuration)
6. [Authentication](#6-authentication)
7. [ITR-1 — Salaried Individuals](#7-itr-1--salaried-individuals)
8. [ITR-2 — Capital Gains &amp; Multiple Properties](#8-itr-2--capital-gains--multiple-properties)
9. [ITR-3 — Full Business Income](#9-itr-3--full-business-income)
10. [ITR-4 — Presumptive Taxation](#10-itr-4--presumptive-taxation)
11. [JSON Upload &amp; Import from Portal](#11-json-upload--import-from-portal)
12. [Form 26AS / AIS Reconciliation](#12-form-26as--ais-reconciliation)
13. [Penalty Calculator](#13-penalty-calculator)
14. [Bulk Filing (CSV)](#14-bulk-filing-csv)
15. [Webhooks](#15-webhooks)
16. [Eligibility Validation](#16-eligibility-validation)
17. [Complete API Reference](#17-complete-api-reference)
18. [Database Tables](#18-database-tables)
19. [Tax Calculation — New Regime AY 2026-27](#19-tax-calculation--new-regime-ay-2026-27)
20. [Complete Workflow Guides](#20-complete-workflow-guides)

---

1. Overview
-----------

[](#1-overview)

`susheelhbti/laravel-itr` provides a complete **REST API backend** for ITR filing assistance in India.

**How it works:**

1. User enters income / deduction data via the API
2. Package calculates tax (New Regime — AY 2026-27)
3. Package generates an IT Dept–compatible JSON file
4. User downloads the JSON and **manually uploads it** at [incometax.gov.in](https://www.incometax.gov.in)

> There is **no direct e-filing** integration. This package is a data preparation tool.

---

2. What This Package Does
-------------------------

[](#2-what-this-package-does)

FeatureITR-1ITR-2ITR-3ITR-4New Regime tax (only regime)✅✅✅✅Standard deduction ₹75,000✅✅✅✅JSON generation (portal upload)✅✅✅✅JSON upload &amp; parse from portal✅✅✅✅LTCG u/s 112A (up to ₹1.25L)✅✅✅✅Capital gains (full STCG/LTCG)❌✅✅❌House propertiesup to 2multiplemultiple1Presumptive income (44AD/ADA/AE)❌❌❌✅Business income (P&amp;L, balance sheet)❌❌✅❌Depreciation schedule❌❌✅❌F&amp;O trading (separate futures/options)❌❌✅❌26AS / AIS reconciliation✅✅✅✅Penalty calculator (234A/B/C/F)✅✅✅✅Bulk CSV filing✅❌❌✅Webhooks✅✅✅✅Eligibility validation✅❌❌✅---

3. AY 2026-27 Key Changes
-------------------------

[](#3-ay-2026-27-key-changes)

> **Old Regime has been removed.** Only the New Regime is supported from AY 2026-27.

ItemAY 2025-26AY 2026-27Standard deduction₹50,000**₹75,000**Nil slabUp to ₹3L**Up to ₹4L**Rebate 87A (income limit)₹7 lakh**₹12 lakh**Rebate 87A (max amount)₹25,000**₹60,000**44AD digital limit₹2 crore**₹3 crore** (≥95% digital)44ADA digital limit₹50 lakh**₹75 lakh** (≥95% digital)44AE HGV rate₹7,500/vehicle**₹1,000/ton/month**LTCG 112A in ITR-1/4❌**✅ up to ₹1.25L**ITR-1 house properties1**up to 2**80G donationOptional IFSC**IFSC + TXN ref mandatory**80GGC political donationBasic**Party name + PAN mandatory**F&amp;O turnover (ITR-3)Combined**Separate futures/options**MSME interest (Sec 43B(h))Not tracked**New disallowance field**Due date (non-audit)July 31**July 31, 2026**Due date (ITR-3 no audit)July 31**August 31, 2026**Schema versionVer1.0**Ver2.0**---

4. Installation
---------------

[](#4-installation)

```
composer require susheelhbti/laravel-itr
```

### Publish &amp; Migrate

[](#publish--migrate)

```
php artisan vendor:publish --tag=itr-config
php artisan vendor:publish --tag=itr-migrations
php artisan migrate
```

### JWT Setup

[](#jwt-setup)

```
php artisan jwt:secret
```

Add to `config/auth.php`:

```
'guards' => [
    'itr' => ['driver' => 'jwt', 'provider' => 'itr_users'],
],
'providers' => [
    'itr_users' => [
        'driver' => 'eloquent',
        'model'  => \Susheelhbti\LaravelItr\Models\ItrUser::class,
    ],
],
```

---

5. Configuration
----------------

[](#5-configuration)

`config/itr.php` key values:

```
'assessment_year'     => '2026-27',
'standard_deduction'  => 75000,          // ₹75,000
'rebate_87a'          => ['max_income' => 1200000, 'rebate' => 60000],
'ltcg_112a_exemption' => 125000,

'presumptive' => [
    '44AD'  => ['cash_limit' => 20000000, 'digital_limit' => 30000000, 'cash_rate' => 8, 'digital_rate' => 6],
    '44ADA' => ['cash_limit' => 5000000,  'digital_limit' => 7500000,  'rate' => 50],
    '44AE'  => ['max_vehicles' => 10, 'hgv_rate_per_ton_month' => 1000, 'lgv_rate_per_vehicle' => 7500],
],

'due_dates' => [
    'non_audit'         => '2026-07-31',
    'business_no_audit' => '2026-08-31',
    'audit'             => '2026-10-31',
],
```

---

6. Authentication
-----------------

[](#6-authentication)

```
POST /api/itr/register
{
  "name": "Susheel Kumar",
  "email": "susheelhbti@gmail.com",
  "password": "secret123",
  "password_confirmation": "secret123",
  "pan": "ABCDE1234F",
  "dob": "1990-05-15",
  "mobile": "9876543210"
}
```

Returns `access_token`. Use as `Authorization: Bearer ` on all protected routes.

MethodEndpointDescriptionPOST`/api/itr/register`RegisterPOST`/api/itr/login`LoginGET`/api/itr/me`ProfilePUT`/api/itr/me`Update profilePOST`/api/itr/logout`LogoutPOST`/api/itr/refresh`Refresh token---

7. ITR-1 — Salaried Individuals
-------------------------------

[](#7-itr-1--salaried-individuals)

**Use for:** Salary only, income ≤ ₹50L, up to 2 house properties, LTCG ≤ ₹1.25L u/s 112A.

### Create Filing

[](#create-filing)

```
POST /api/itr/filings
{
  "gross_salary": 1200000,
  "tds_salary": 100000,
  "savings_interest": 8000,
  "fd_interest": 5000,
  "advance_tax": 0,
  "ltcg_112a": 50000,
  "bank_ifsc": "SBIN0001234",
  "bank_account_number": "12345678901",
  "bank_name": "State Bank of India",
  "bank_account_type": "SB",
  "extra_flags": {
    "is_director": false,
    "holds_unlisted_shares": false,
    "has_foreign_assets": false
  },
  "donation_80g_ifsc": "HDFC0001234",
  "donation_80g_txn_ref": "TXN20251201"
}
```

### Complete Flow

[](#complete-flow)

```
POST /api/itr/filings                    → Create (status: draft)
GET  /api/itr/filings/{id}/eligibility   → Verify ITR-1 eligibility
POST /api/itr/filings/{id}/calculate     → Compute tax
GET  /api/itr/filings/{id}/summary       → View summary
POST /api/itr/filings/{id}/generate-json → Build JSON
GET  /api/itr/filings/{id}/download-json → Download file → Upload to portal

```

### Calculate Response

[](#calculate-response)

```
{
  "data": {
    "regime": "new",
    "gross_salary": 1200000,
    "standard_deduction": 75000,
    "net_salary": 1125000,
    "taxable_income": 1138000,
    "tax_before_cess": 57200,
    "rebate_87a": 0,
    "cess": 2288,
    "total_tax": 59488,
    "total_tax_paid": 100000,
    "refund": 40512,
    "balance_tax_due": 0
  }
}
```

---

8. ITR-2 — Capital Gains &amp; Multiple Properties
--------------------------------------------------

[](#8-itr-2--capital-gains--multiple-properties)

**Use for:** Salary + capital gains + multiple house properties, no business income.

### House Properties

[](#house-properties)

```
POST /api/itr/filings/{id}/house-properties
{
  "property_type": "let_out",
  "address": "123 MG Road, Bangalore",
  "annual_rent_received": 240000,
  "municipal_taxes_paid": 12000,
  "interest_on_loan_24b": 150000
}
```

`property_type`: `self_occupied` | `let_out` | `deemed_let_out`

```
POST /api/itr/filings/{id}/house-properties/calculate

```

### Capital Gains

[](#capital-gains)

```
POST /api/itr/filings/{id}/capital-gains
{
  "asset_type": "equity_shares",
  "gain_type": "ltcg",
  "asset_name": "Reliance Industries",
  "purchase_date": "2022-03-15",
  "sale_date": "2025-09-20",
  "purchase_price": 250000,
  "sale_price": 420000,
  "transfer_expenses": 2000,
  "indexation_applicable": false
}
```

`asset_type`: `equity_shares` | `equity_mf` | `debt_mf` | `gold` | `property` | `bonds` | `other`

```
GET /api/itr/cii-table   ← Cost Inflation Index table
POST /api/itr/filings/{id}/capital-gains/calculate
```

### ITR-2 Extra Income &amp; Generate

[](#itr-2-extra-income--generate)

```
POST /api/itr/filings/{id}/itr2/details
{
  "family_pension": 0,
  "dividend_income": 15000,
  "lottery_winnings": 0,
  "deduction_80e": 50000,
  "deduction_80g": 10000,
  "deduction_80eea": 0
}

POST /api/itr/filings/{id}/calculate
POST /api/itr/filings/{id}/itr2/generate-json
GET  /api/itr/filings/{id}/download-json
```

---

9. ITR-3 — Full Business Income
-------------------------------

[](#9-itr-3--full-business-income)

**Use for:** Individuals with business/profession income, F&amp;O traders, partners in firms.

### Business Income

[](#business-income)

```
POST /api/itr/filings/{id}/business
{
  "business_name": "Raj Consulting",
  "nature_of_business": "0101",
  "gross_turnover": 3500000,
  "purchases": 800000,
  "direct_expenses": 200000,
  "wages_salaries": 400000,
  "rent_rates_taxes": 120000,
  "other_expenses": 80000,
  "msme_interest_disallowance": 25000
}
```

Add itemized expenses:

```
POST /api/itr/filings/{id}/business/{bid}/expenses
{
  "expense_type": "electricity",
  "expense_label": "Office electricity bills",
  "amount": 48000,
  "is_allowable": true
}
```

### Depreciation

[](#depreciation)

```
GET  /api/itr/tax/depreciation-blocks   ← Available blocks: plant_40 (40%), vehicles_15 (15%), etc.

POST /api/itr/filings/{id}/depreciation
{
  "asset_block": "plant_40",
  "asset_description": "Computers",
  "wdv_opening": 200000,
  "additions": 80000,
  "additional_dep_applicable": true
}

POST /api/itr/filings/{id}/depreciation/calculate

```

### F&amp;O Trading (AY 2026-27: separate fields)

[](#fo-trading-ay-2026-27-separate-fields)

```
POST /api/itr/filings/{id}/fno
{
  "total_turnover": 5000000,
  "fno_futures_turnover": 3000000,
  "fno_options_turnover": 2000000,
  "profit_loss": 125000,
  "fno_futures_profit_loss": 80000,
  "fno_options_profit_loss": 45000,
  "brokerage": 15000,
  "other_expenses": 5000
}
```

### Brought Forward Losses

[](#brought-forward-losses)

```
POST /api/itr/filings/{id}/losses
{
  "loss_type": "business_non_speculative",
  "assessment_year": "2024-25",
  "amount": 75000
}
```

`loss_type`: `house_property` | `business_non_speculative` | `business_speculative` | `short_term_capital` | `long_term_capital` | `other_sources`

### Complete ITR-3 Flow

[](#complete-itr-3-flow)

```
POST /filings → POST /business → POST /business/{id}/expenses
→ POST /depreciation → POST /fno → POST /losses
→ POST /calculate → POST /calculate-business → POST /depreciation/calculate
→ POST /generate-json-itr3 → GET /download-json

```

---

10. ITR-4 — Presumptive Taxation
--------------------------------

[](#10-itr-4--presumptive-taxation)

**Use for:** Business/professional income under presumptive scheme (44AD/44ADA/44AE), income ≤ ₹50L.

### AY 2026-27 Limits

[](#ay-2026-27-limits)

```
GET /api/itr/tax/presumptive-limits

```

SectionCategoryLimitRate44ADCash receipts₹2 crore8%44AD≥95% digital**₹3 crore**6%44ADACash₹50 lakh50%44ADA≥95% digital**₹75 lakh**50%44AEHGV (&gt;12,000 kg)max 10₹1,000/ton/month44AEOther vehiclesmax 10₹7,500/vehicle/month### Section 44AD (Business)

[](#section-44ad-business)

```
POST /api/itr/filings/{id}/presumptive
{
  "section": "44AD",
  "business_name": "Raj Traders",
  "nature_of_business": "0101",
  "turnover_or_receipts": 25000000,
  "digital_receipts_percentage": 97
}
```

Response:

```
{
  "section": "44AD",
  "digital_threshold_met": true,
  "limit_applied": 30000000,
  "rate_applied": 6,
  "presumptive_income": 1500000,
  "note": "6% of ₹25000000 = ₹1500000 (≥95% digital receipts)"
}
```

### Section 44ADA (Professional)

[](#section-44ada-professional)

```
{
  "section": "44ADA",
  "business_name": "Dr. Sharma Clinic",
  "turnover_or_receipts": 7000000,
  "digital_receipts_percentage": 98
}
```

→ ₹75L limit applies (≥95% digital) → 50% = ₹35,00,000 presumptive income

### Section 44AE (Goods Transport)

[](#section-44ae-goods-transport)

```
{
  "section": "44AE",
  "vehicles_count": 4,
  "vehicle_type": "LGV",
  "months_operated": 11
}
```

→ 4 vehicles × 11 months × ₹7,500 = ₹3,30,000

### ITR-4 Complete Flow

[](#itr-4-complete-flow)

```
POST /filings → POST /filings/{id}/presumptive
→ POST /filings/{id}/calculate
→ POST /filings/{id}/calculate-presumptive
→ POST /filings/{id}/generate-json-itr4
→ GET  /filings/{id}/download-json  → Upload to portal

```

---

11. JSON Upload &amp; Import from Portal
----------------------------------------

[](#11-json-upload--import-from-portal)

Upload a JSON file you downloaded from incometax.gov.in. The package parses it and creates a filing.

### Upload

[](#upload)

```
POST /api/itr/upload-json
Content-Type: multipart/form-data
Authorization: Bearer

json_file: [your ITR JSON file, .json, max 5MB]
```

```
{
  "data": {
    "upload_id": 5,
    "filing_type": "ITR-1",
    "pan": "ABCDE1234F",
    "validation_status": "valid",
    "warnings": {},
    "extracted_summary": {
      "gross_salary": 1200000,
      "tds_salary": 100000,
      "total_tax": 59488,
      "refund_due": 40512
    }
  }
}
```

### Import to Filing

[](#import-to-filing)

```
POST /api/itr/uploads/5/import
```

→ Creates `ItrUser` (by PAN), `ItrFiling`, capital gains, house properties automatically.

### Compare Portal vs Your Entry

[](#compare-portal-vs-your-entry)

```
GET /api/itr/compare/1
```

```
{
  "summary": { "mismatches": 1, "status": "has_mismatches" },
  "field_comparison": {
    "tds_salary": {
      "your_filing": 90000,
      "portal_json": 100000,
      "match": false,
      "difference": 10000
    }
  },
  "suggestions": [
    "TDS on Salary: Portal shows ₹1,00,000. Update to claim full credit."
  ]
}
```

---

12. Form 26AS / AIS Reconciliation
----------------------------------

[](#12-form-26as--ais-reconciliation)

```
POST /api/itr/import/26as
{
  "import_type": "ais_json",
  "filename": "AIS_FY2025_26.json",
  "data": { ...raw AIS JSON from portal... }
}
```

```
POST /api/itr/import/{id}/reconcile
{ "filing_id": 5 }
```

Response includes:

- Total TDS in 26AS vs your filing
- Mismatch list with ₹ differences
- Undeclared income found in AIS

---

13. Penalty Calculator
----------------------

[](#13-penalty-calculator)

```
POST /api/itr/filings/{id}/penalty/calculate
{
  "filing_date": "2026-08-15"
}
```

```
{
  "data": {
    "due_date": "2026-07-31",
    "is_late": true,
    "234a": { "months": 1, "interest": 1190, "note": "1% per month on unpaid tax" },
    "234b": { "shortfall": 0, "interest": 0 },
    "234c": { "interest": 0 },
    "234f": { "fee": 5000, "note": "₹5,000 (income > ₹5 lakh)" },
    "total_interest_penalty": 6190,
    "tips": ["File before July 31 to avoid 234A.", "234F fee is non-refundable."]
  }
}
```

---

14. Bulk Filing (CSV)
---------------------

[](#14-bulk-filing-csv)

Process multiple ITR-1 records from a CSV file.

```
GET  /api/itr/bulk/template       ← Download CSV template
POST /api/itr/bulk/upload         ← Upload filled CSV (max 5MB)
GET  /api/itr/bulk/{job_id}/status
GET  /api/itr/bulk/{job_id}/errors
GET  /api/itr/bulk/{job_id}/download-csv-summary

```

Required CSV columns: `name, email, pan, dob, gross_salary, tds_salary, deduction_80c, deduction_80d, bank_ifsc, bank_account_number`

Each valid row → creates user + filing + computes tax + generates JSON automatically.

---

15. Webhooks
------------

[](#15-webhooks)

```
POST /api/itr/webhooks
{
  "url": "https://your-app.com/itr-events",
  "secret": "hmac-secret-key",
  "events": ["filing.calculated", "filing.json_generated"]
}
```

**Events:** `filing.created` | `filing.calculated` | `filing.json_generated` | `filing.downloaded` | `penalty.calculated` | `bulk.completed` | `bulk.failed`

Each delivery sends `X-ITR-Signature: sha256=` for verification. Auto-retries 3 times on failure.

```
GET  /api/itr/webhooks/events       ← List all event types
POST /api/itr/webhooks/{id}/test    ← Send test ping
GET  /api/itr/webhooks/{id}/logs    ← Delivery history

```

---

16. Eligibility Validation
--------------------------

[](#16-eligibility-validation)

Set `extra_flags` when creating a filing:

```
{
  "extra_flags": {
    "is_director": false,
    "holds_unlisted_shares": false,
    "esop_tax_deferred": false,
    "has_foreign_assets": false,
    "tds_194n": false,
    "agricultural_income": 0
  }
}
```

```
GET /api/itr/filings/{id}/eligibility?form_type=ITR-1
GET /api/itr/tax/eligibility-criteria

```

ConditionITR-1ITR-4Director in a company❌ Cannot❌ CannotHolds unlisted shares❌ Cannot❌ CannotForeign assets❌ Cannot❌ CannotESOP tax deferral❌ Cannot❌ CannotTDS u/s 194N❌ Cannot✅ CanAgricultural income &gt; ₹5,000✅ Can❌ CannotIncome &gt; ₹50 lakh❌ Cannot❌ CannotIf ineligible, `generate-json` returns 422 with clear reasons.

---

17. Complete API Reference
--------------------------

[](#17-complete-api-reference)

### Public (No Auth)

[](#public-no-auth)

MethodEndpointDescriptionPOST`/api/itr/register`Register userPOST`/api/itr/login`Login, get JWTGET`/api/itr/tax/slabs`New Regime slabs AY 2026-27POST`/api/itr/tax/calculate`Quick tax previewGET`/api/itr/tax/eligibility-criteria`Eligibility rules referenceGET`/api/itr/tax/presumptive-limits`44AD/44ADA/44AE limitsGET`/api/itr/tax/depreciation-blocks`Depreciation asset blocksGET`/api/itr/bulk/template`CSV template downloadGET`/api/itr/cii-table`Cost Inflation Index table### Auth

[](#auth)

MethodEndpointDescriptionGET`/api/itr/me`ProfilePUT`/api/itr/me`Update profilePOST`/api/itr/logout`LogoutPOST`/api/itr/refresh`Refresh JWT### Filings (All Forms)

[](#filings-all-forms)

MethodEndpointDescriptionGET`/api/itr/filings`ListPOST`/api/itr/filings`CreateGET/PUT/DELETE`/api/itr/filings/{id}`Read / Update / DeletePOST`/api/itr/filings/{id}/calculate`Compute taxGET`/api/itr/filings/{id}/summary`SummaryGET`/api/itr/filings/{id}/eligibility`Eligibility checkPOST`/api/itr/filings/{id}/generate-json`Generate ITR-1 JSONGET`/api/itr/filings/{id}/download-json`Download JSON### ITR-2

[](#itr-2)

MethodEndpointGET/POST`/api/itr/filings/{id}/house-properties`PUT/DELETE`/api/itr/filings/{id}/house-properties/{prop}`POST`/api/itr/filings/{id}/house-properties/calculate`GET/POST`/api/itr/filings/{id}/capital-gains`PUT/DELETE`/api/itr/filings/{id}/capital-gains/{entry}`POST`/api/itr/filings/{id}/capital-gains/calculate`POST`/api/itr/filings/{id}/itr2/details`POST`/api/itr/filings/{id}/itr2/generate-json`### ITR-3

[](#itr-3)

MethodEndpointGET/POST`/api/itr/filings/{id}/business`PUT/DELETE`/api/itr/filings/{id}/business/{bid}`POST`/api/itr/filings/{id}/business/{bid}/expenses`DELETE`/api/itr/filings/{id}/business/{bid}/expenses/{eid}`GET/POST`/api/itr/filings/{id}/depreciation`POST`/api/itr/filings/{id}/depreciation/calculate`POST`/api/itr/filings/{id}/fno`GET/POST`/api/itr/filings/{id}/losses`DELETE`/api/itr/filings/{id}/losses/{lid}`POST`/api/itr/filings/{id}/calculate-business`POST`/api/itr/filings/{id}/generate-json-itr3`### ITR-4

[](#itr-4)

MethodEndpointGET/POST`/api/itr/filings/{id}/presumptive`DELETE`/api/itr/filings/{id}/presumptive/{pid}`POST`/api/itr/filings/{id}/calculate-presumptive`POST`/api/itr/filings/{id}/generate-json-itr4`### Upload &amp; Compare

[](#upload--compare)

MethodEndpointPOST`/api/itr/upload-json`GET`/api/itr/uploads`GET/DELETE`/api/itr/uploads/{id}`POST`/api/itr/uploads/{id}/import`GET`/api/itr/compare/{filing_id}`### 26AS / AIS

[](#26as--ais)

MethodEndpointGET`/api/itr/import`POST`/api/itr/import/26as`GET`/api/itr/import/{id}`POST`/api/itr/import/{id}/reconcile`### Penalty

[](#penalty)

MethodEndpointPOST`/api/itr/filings/{id}/penalty/calculate`GET`/api/itr/filings/{id}/penalty`### Bulk

[](#bulk)

MethodEndpointPOST`/api/itr/bulk/upload`GET`/api/itr/bulk/{job_id}/status`GET`/api/itr/bulk/{job_id}/errors`GET`/api/itr/bulk/{job_id}/download-csv-summary`### Webhooks

[](#webhooks)

MethodEndpointGET`/api/itr/webhooks/events`GET/POST`/api/itr/webhooks`DELETE`/api/itr/webhooks/{id}`POST`/api/itr/webhooks/{id}/test`GET`/api/itr/webhooks/{id}/logs`---

18. Database Tables
-------------------

[](#18-database-tables)

TablePurpose`itr_users`Taxpayer accounts`itr_filings`Core filing data (all forms)`capital_gain_entries`STCG/LTCG per transaction`house_properties`Multiple properties`itr2_details`ITR-2 extra incomes &amp; deductions`presumptive_details`44AD/ADA/AE (ITR-4)`business_incomes`Business P&amp;L (ITR-3)`business_expenses`Itemized expenses`depreciation_entries`Block-wise WDV depreciation`fno_trading`F&amp;O trading (with futures/options split)`loss_brought_forward`Carry-forward losses`balance_sheet_assets`BS assets (ITR-3)`balance_sheet_liabilities`BS liabilities (ITR-3)`penalty_calculations`234A/B/C/F results`form26as_imports`AIS/26AS data`itr_json_uploads`Portal JSON uploads`bulk_filing_jobs`CSV bulk jobs`bulk_filing_errors`Per-row bulk errors`webhook_subscriptions`Webhook URLs`webhook_delivery_logs`Delivery history---

19. Tax Calculation — New Regime AY 2026-27
-------------------------------------------

[](#19-tax-calculation--new-regime-ay-2026-27)

### Slabs

[](#slabs)

Income RangeRateUp to ₹4,00,0000%₹4,00,001 – ₹8,00,0005%₹8,00,001 – ₹12,00,00010%₹12,00,001 – ₹16,00,00015%₹16,00,001 – ₹20,00,00020%₹20,00,001 – ₹24,00,00025%Above ₹24,00,00030%**Health &amp; Education Cess:** 4% on tax amount

**Rebate u/s 87A:** Full rebate (max ₹60,000) if total income ≤ ₹12,00,000 → effective zero tax

**Standard Deduction:** ₹75,000 automatically applied from salary

**Not allowed:** 80C, 80D, 80TTA, HRA exemption, Home Loan Principal repayment

### Example: ₹12L Salary

[](#example-12l-salary)

```
Gross Salary:          ₹12,00,000
Standard Deduction:    ₹   75,000
Net Salary:            ₹11,25,000
Taxable Income:        ₹11,25,000
Tax (slabs):           ₹   57,500
Rebate 87A:            ₹   57,500  (income ≤ ₹12L → full rebate)
Tax After Rebate:      ₹        0
Cess:                  ₹        0
Total Tax:             ₹        0

```

### Example: ₹15L Salary

[](#example-15l-salary)

```
Gross Salary:          ₹15,00,000
Standard Deduction:    ₹   75,000
Net Salary:            ₹14,25,000
Taxable Income:        ₹14,25,000
Tax (slabs):           ₹   93,750
Rebate 87A:            ₹        0  (income > ₹12L)
Cess @ 4%:             ₹    3,750
Total Tax:             ₹   97,500

```

---

20. Complete Workflow Guides
----------------------------

[](#20-complete-workflow-guides)

### ITR-1 (Salaried)

[](#itr-1-salaried)

```
POST /register  →  POST /login  →  POST /filings
→  GET  /filings/{id}/eligibility?form_type=ITR-1
→  POST /filings/{id}/calculate
→  GET  /filings/{id}/summary
→  POST /filings/{id}/generate-json
→  GET  /filings/{id}/download-json
   Upload ITR1_PAN_202627_ID.json at incometax.gov.in

```

### ITR-4 (Presumptive)

[](#itr-4-presumptive)

```
POST /filings  →  POST /filings/{id}/presumptive
→  POST /filings/{id}/calculate
→  POST /filings/{id}/calculate-presumptive
→  POST /filings/{id}/generate-json-itr4
→  GET  /filings/{id}/download-json

```

### ITR-3 (Business)

[](#itr-3-business)

```
POST /filings
→  POST /filings/{id}/business         (add each business)
→  POST /filings/{id}/business/{id}/expenses
→  POST /filings/{id}/depreciation     (add asset blocks)
→  POST /filings/{id}/fno              (if F&O trader)
→  POST /filings/{id}/losses           (if carry-forward losses)
→  POST /filings/{id}/calculate
→  POST /filings/{id}/calculate-business
→  POST /filings/{id}/depreciation/calculate
→  POST /filings/{id}/generate-json-itr3
→  GET  /filings/{id}/download-json

```

### Portal JSON → Import → Reconcile

[](#portal-json--import--reconcile)

```
GET  /bulk/template  →  fill CSV  →  POST /bulk/upload
POST /upload-json                  →  POST /uploads/{id}/import
POST /import/26as                  →  POST /import/{id}/reconcile
GET  /compare/{filing_id}

```

---

Important Notes
---------------

[](#important-notes)

- **Amounts:** All in INR as integers (no paise/decimals)
- **PAN format:** `AAAAA9999A` (5 letters, 4 digits, 1 letter)
- **IFSC format:** `ABCD0123456` (4 letters, 0, 6 alphanumeric)
- **No direct e-filing:** Generated JSON must be uploaded manually at incometax.gov.in
- **New Regime only:** Old Regime removed as of AY 2026-27
- **Due dates AY 2026-27:** July 31, 2026 (ITR-1/2/4) | August 31, 2026 (ITR-3 no audit)

---

License
-------

[](#license)

MIT © [Susheel Kumar](https://github.com/susheelhbti)

###  Health Score

19

—

LowBetter than 9% of packages

Maintenance57

Moderate activity, may be stable

Popularity0

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity13

Early-stage or recently created project

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

### Community

Maintainers

![](https://www.gravatar.com/avatar/d1526758095ab08d95266bdd365dcf42735bf80c4a6eb1056f1b084c39a10dcb?d=identicon)[saksh-sky](/maintainers/saksh-sky)

---

Top Contributors

[![susheelhbti](https://avatars.githubusercontent.com/u/9462770?v=4)](https://github.com/susheelhbti "susheelhbti (1 commits)")

### Embed Badge

![Health badge](/badges/susheelhbti-laravel-itr/health.svg)

```
[![Health](https://phpackages.com/badges/susheelhbti-laravel-itr/health.svg)](https://phpackages.com/packages/susheelhbti-laravel-itr)
```

###  Alternatives

[exsyst/swagger

A php library to manipulate Swagger specifications

35916.4M7](/packages/exsyst-swagger)[hubspot/api-client

Hubspot API client

24016.2M20](/packages/hubspot-api-client)[pocketmine/bedrock-protocol

An implementation of the Minecraft: Bedrock Edition protocol in PHP

172445.0k18](/packages/pocketmine-bedrock-protocol)[botman/driver-telegram

Telegram driver for BotMan

93459.5k6](/packages/botman-driver-telegram)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
