Skip to content

All guides MSME & Vendor Compliance

MSME Compliance & Section 43B(h): The 45-Day Payment Rule Playbook

OneFinOps Editorial

OneFinOps Editorial

Editorial Team · • 10 min read

Last reviewed: 26 Apr 2026

Quick answer. Section 43B(h) of the Income Tax Act (effective AY 2024–25) disallows your business expense as a tax deduction in the year it was incurred if you don’t pay your Micro or Small vendor within 45 days (where written agreement) or 15 days (no written agreement). The amount becomes deductible only in the year of actual payment. The operational discipline is: (1) classify every vendor as Micro / Small / Medium / Non-MSME at onboarding, (2) verify Udyam registration, (3) tag the agreement-vs-no-agreement status per vendor, (4) track the payment-due clock from invoice acceptance, (5) prioritise the AP cycle to clear M+S invoices within window, (6) file MSME Form 1 half-yearly with the dues. Done right, this becomes invisible. Done wrong, you’ll find out at year-end with a tax bill that wipes out a chunk of your profit.


Why this rule exists and why it bites

The MSMED Act, 2006 mandated 45-day payment timelines for buyers paying Micro and Small enterprises. For 17 years, enforcement was weak, buyers routinely stretched payments to 90, 120, 180 days. MSMEs absorbed the cash-flow pain.

The Finance Act, 2023 inserted Section 43B(h) into the Income Tax Act with effect from 1 April 2023 (i.e., for FY 2023–24 / AY 2024–25 onwards). The mechanism is brutal in its simplicity:

“Any sum payable to a Micro or Small enterprise beyond the time limit specified in section 15 of the MSMED Act, 2006, shall be allowed as a deduction only in the previous year in which the sum has been actually paid.”

Translation:

  • You buy services worth ₹10 lakh from a Small enterprise on 1 March 2026.
  • You don’t pay until 30 June 2026.
  • Days of delay: ~120 (way past the 45-day limit).
  • The ₹10 lakh expense is disallowed in your FY 2025–26 books for tax purposes. Your taxable income for that year goes up by ₹10 lakh. At a 25% corporate rate, that’s ₹2.5 lakh of additional tax.
  • The ₹10 lakh becomes deductible in FY 2026–27 instead, but you’ve already paid the tax mismatch.

Multiplied across hundreds of MSME vendors, this is genuinely material.


Who is “Micro” and “Small”, the classification

Per the MSMED Act, classification is based on investment in plant & machinery + annual turnover, whichever puts the enterprise in the higher tier:

TierInvestment in P&MAnnual turnover
Micro≤ ₹1 cr≤ ₹5 cr
Small≤ ₹10 cr≤ ₹50 cr
Medium≤ ₹50 cr≤ ₹250 cr

Section 43B(h) applies only to Micro and Small. Medium enterprises don’t trigger it. Non-MSME (above ₹50 cr P&M or ₹250 cr turnover) are completely outside.

The classification is self-declared by the enterprise via Udyam Registration at udyamregistration.gov.in. Every MSME vendor should furnish their Udyam certificate. Each certificate has:

  • Udyam Registration Number (URN), format: UDYAM-XX-NN-NNNNNNN
  • Date of registration
  • Tier: Micro / Small / Medium
  • NIC code (industry classification)
  • Issuance and renewal dates

Critical: traders are excluded from 43B(h), until 2024

A CBDT clarification confirmed that wholesale and retail traders registered as MSMEs are outside the 43B(h) scope (because they were brought under the MSMED definition only from 2 July 2021, and the Section 15 limits don’t extend to them).

So if your Small vendor is classified as a trader (NIC 45–47), 43B(h) does not apply. You still owe under MSMED, but the income tax disallowance hammer doesn’t drop.

This is a sharp distinction. Validate trader classification from the Udyam certificate’s NIC code, don’t take the vendor’s word for it.


The 15-day vs 45-day clock

ScenarioClock startsClock duration
Written agreement specifies payment termsDate of acceptance / deemed acceptance of goods/servicesmin(agreement days, 45)
No written agreementDate of acceptance / deemed acceptance15 days

A few nuances:

  • “Acceptance” means the day you accept the goods/services (or the day they’re delivered if you don’t object within 15 days, that’s “deemed acceptance” under Section 2(b) of MSMED).
  • “Written agreement” doesn’t have to be a master services agreement. A purchase order with payment terms is enough. An email confirming “Net 60” terms works. A vendor’s invoice stating “payment in 60 days” alone is NOT a written agreement, both parties must have agreed.
  • The 45-day cap is statutory, you cannot agree to a 60-day or 90-day term with a Micro/Small enterprise. Any clause stretching beyond 45 days is void to the extent it exceeds 45 days.

So the practical rule for a Micro or Small vendor is:

Pay within the agreed term, never exceeding 45 days. If there’s no written agreement, pay within 15 days.


The operational workflow

Step 1, Classify vendors at onboarding

Add to your vendor master:

FieldSource
MSME tierUdyam certificate; values: Micro / Small / Medium / Non-MSME / Trader-MSME
Udyam Registration NumberVendor-furnished, validate format
NIC codeUdyam certificate
Trader statusDerived from NIC; flag NIC 45–47
Written agreement on fileYes / No, with reference to the agreement
Agreed payment daysIf written agreement, the days specified
43B(h) applicableComputed: (Micro or Small) AND NOT Trader
Payment-due-daysComputed: (43B(h) applicable) ? min(agreed days, 45) : (45 if Medium-MSME else company default)

A Non-MSME vendor and a Trader-MSME vendor get a payment-due-days of “company default” (typically 30 / 45 / 60 days per company policy). Only for non-trader Micro and Small does the 43B(h) clock matter.

Step 2, Validate Udyam at onboarding (and periodically)

Don’t trust a self-declared certificate at face value:

  • At onboarding: verify the URN at udyamregistration.gov.in/Udyam_Verify.aspx. It returns the current tier, NIC code, and issuance details.
  • Annually: revalidate. Udyam certificates auto-update when an enterprise’s investment / turnover crosses tiers (with a one-year grace before reclassification).
  • At payment: if the certificate has expired or been deactivated, treat the vendor as Non-MSME for that payment cycle but document the change.

Step 3, Anchor the clock at acceptance, not at invoice

The clock starts from the date of acceptance of goods/services. Many ERPs default to “date of invoice” or “date of bill posting”, which can be days later. The right discipline:

  • For goods: the acceptance date is the GRN (Goods Receipt Note) date, not the invoice date.
  • For services: the acceptance date is the date of deemed acceptance, typically the date the deliverable was approved (sign-off email, milestone confirmation).
  • If your books only capture invoice date, your 43B(h) clock will run late. Capture the GRN/acceptance date as a mandatory field.

Step 4, Prioritise the AP cycle

The default AP queue runs by ageing or by amount. For 43B(h), the queue must run by proximity to deadline:

Days to deadlinePriority
< 5Critical, release today
5–10High, release this week
10–20Normal
20+Low

Most teams need a separate “MSME watch” dashboard that surfaces every M/S vendor invoice with its computed deadline.

Step 5, File MSME Form 1 half-yearly

Buyers with outstanding payments to Micro or Small enterprises beyond 45 days must file MSME Form 1 with MCA half-yearly:

PeriodReporting deadline
1 Apr – 30 Sep31 Oct
1 Oct – 31 Mar30 Apr

The form discloses:

  • Vendor name, PAN, Udyam URN
  • Outstanding amount
  • Reason for delay

Failure to file is a corporate offence, penalty up to ₹25,000 on the company, ₹25,000 on each defaulting officer, plus daily continuing penalty.

Step 6, Year-end disallowance computation

At year-end, run:

For each Micro/Small/non-trader vendor, for each unpaid invoice on 31 March:
  if days_outstanding > 45 (or 15 if no written agreement):
    flag for 43B(h) disallowance
    add to "Sec 43B(h) Disallowed Amount" report

The disallowed amount is added back to taxable income in the ITR. It becomes deductible in the year of actual payment. Track this as a deferred tax adjustment.


Common operational pitfalls

PitfallWhy it happensFix
Treating all MSMEs the sameVendor master has only an “MSME yes/no” flagCapture tier separately
Missing the trader exclusionTeam doesn’t know the ruleTag NIC 45–47 trader vendors and exclude from 43B(h) gate
43B(h) clock starts from invoice dateERP doesn’t capture GRN/acceptance dateMandatory acceptance-date field
Stale Udyam certificatesOne-time validation at onboarding onlyAnnual revalidation, plus re-check at payment if > 12 months old
MSME Form 1 missedNo calendar reminderAdd to half-yearly compliance calendar with MCA
43B(h) disallowance discovered at year-end auditNo mid-year trackingMonthly disallowance report run to flag aging M/S invoices
Treating Medium-MSME as triggering 43B(h)Misreading the sectionSection 43B(h) is only for Micro and Small
Verbal payment termsTreated as “agreed”If not written, the 15-day default applies regardless of what was discussed

CFO dashboard, what to watch monthly

  • MSME exposure, total payable to Micro and Small (excluding traders), aged
  • At-risk amount, payable beyond 45 days OR within 5 days of deadline
  • 43B(h) projected disallowance, if every aged invoice slipped past 31 March, what’s the tax impact at the corporate rate
  • MSME Form 1 readiness, vendors with outstanding > 45 days, ready for the half-yearly filing
  • Vendor-master health, % of vendors with current Udyam validation, missing NIC codes, no agreement on file

A pattern in many companies: 43B(h) exposure is concentrated in 5–15 vendors even when there are 500+ MSME vendors. Identify those, pay them on time, and 90% of the risk evaporates.


What this changes for procurement

43B(h) shifts MSME procurement from “lowest price wins” to “lowest landed cost wins”:

  • A Micro vendor offering a 5% discount but requiring 30-day terms is always cheaper than a Non-MSME at 90 days (you weren’t paying tax on the float).
  • Stretching MSME payments to fund working capital is now actively expensive, the disallowance dwarfs the financing benefit.
  • Procurement should negotiate written agreements with MSME vendors at 30 or 45 days max, not “best efforts”.
  • For services-heavy spend (consulting, design, content), where most providers are Small or Micro, a 30-day SLA is the new normal.

Some companies have responded by reducing MSME engagement entirely. That’s the wrong response: it punishes the SMEs the law was designed to protect, and it doesn’t avoid the obligation (it just shifts spend to non-MSME vendors at higher prices). The right response is operational discipline.


Tooling: what to look for

  • Udyam URN validation at vendor master level
  • NIC-based trader auto-detection
  • Agreement-on-file flag with link to the document
  • Acceptance-date capture at GRN level (separate from invoice date)
  • Per-invoice MSME deadline countdown with prioritised AP queue
  • MSME Form 1 generation (XLSX/PDF, ready for MCA upload)
  • Year-end 43B(h) disallowance projection with month-by-month aging
  • Audit trail, every payment delay reason logged

OneFinOps treats MSME compliance as a first-class concern in Payables. Vendor classification, deadline tracking, MSME Form 1, and 43B(h) projection are all by-products of the AP cycle, not a separate workflow. Start a free trial or book a 30-min walkthrough.


Frequently asked questions

Does 43B(h) apply if my vendor is registered as MSME but the goods/services are personal use?

No. 43B(h) only impacts a business expense claimed as a deduction. Personal expenses don’t get a deduction in the first place, so there’s nothing to disallow.

What if my MSME vendor doesn’t furnish their Udyam certificate?

In the absence of a Udyam certificate, you cannot establish MSME status, and Section 43B(h) doesn’t apply by default. Some companies adopt a defensive policy of treating any plausibly MSME vendor as MSME until proven otherwise, but legally the burden is on the supplier to declare. Document your standard vendor-onboarding ask.

Can my vendor confirm Udyam status verbally?

Verbal claims aren’t sufficient for audit. Get the URN in writing (vendor master, contract, or invoice). The URN is verifiable on the Udyam portal, that’s the only evidence your auditor will accept.

Does 43B(h) apply to capital expenditure?

Section 43B(h) applies to “any sum payable”, so technically yes for a capital purchase from an MSME. But practically, capital expenses are not claimed as a current-year deduction (they’re depreciated). The disallowance impact is on the depreciation in the year of capitalisation if the underlying payment is delayed. Most CAs treat this as a residual risk and recommend paying capex MSME invoices on time.

What about disputed invoices?

Disputes don’t pause the 43B(h) clock. If you dispute the invoice and don’t pay, the deduction is disallowed in the year of incurrence. The right path is to resolve the dispute fast or issue a debit note that reduces the payable (which then has no MSME implication).

Does the rule apply to government / PSU buyers?

Yes, but Section 43B(h) is in the Income Tax Act, so it applies to anyone claiming a deduction under that Act. Tax-exempt entities (some govt bodies) don’t claim a deduction, so the rule doesn’t bite, but the underlying MSMED Act 45-day rule still does.

What if I’m an MSME buyer purchasing from another MSME?

Same rule. The buyer’s classification doesn’t matter, what matters is the seller’s M/S status. The disallowance hits the buyer regardless of their own size.


Sources


This guide is operational, not legal advice. Specific edge cases (capex, related-party transactions, cross-border MSME equivalents) should be reviewed with your tax counsel.

Tags

  • Section 43B(h)
  • MSME compliance
  • 45-day payment rule
  • MSME Form 1
  • Udyam registration
  • vendor classification
  • MSMED Act
  • buyer disallowance

Stop running this in spreadsheets.

OneFinOps does the work this guide describes, receivables, payables, procurement and compliance on one record.