<?xml version="1.0" encoding="UTF-8" ?><!-- generator=Zoho Sites --><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><atom:link href="https://www.taass.in/blogs/gst/feed" rel="self" type="application/rss+xml"/><title>Thombre and Associates - Blog , GST</title><description>Thombre and Associates - Blog , GST</description><link>https://www.taass.in/blogs/gst</link><lastBuildDate>Tue, 14 Apr 2026 22:29:35 -0700</lastBuildDate><generator>http://zoho.com/sites/</generator><item><title><![CDATA[GST on Sale of Buildings]]></title><link>https://www.taass.in/blogs/post/GST-on-Sale-of-Buildings</link><description><![CDATA[Understand GST on property sales in India with our interactive guide. Learn how the Occupancy Certificate (OC) and payment timing affect GST on the sale of a building under the CGST Act. Clarify rules for under-construction vs. completed real estate to see if tax is applicable to you.]]></description><content:encoded><![CDATA[<div class="zpcontent-container blogpost-container "><div data-element-id="elm_NJqb-t8oR42DEeBxR9HbzA" data-element-type="section" class="zpsection "><style type="text/css"></style><div class="zpcontainer-fluid zpcontainer"><div data-element-id="elm_mZUYpUzVTyeBJ04n5Sd7Vw" data-element-type="row" class="zprow zprow-container zpalign-items- zpjustify-content- " data-equal-column=""><style type="text/css"></style><div data-element-id="elm_e44Ah0a4RySi8e-WNTKqxA" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-12 zpcol-sm-12 zpalign-self- "><style type="text/css"></style><div data-element-id="elm_yoO-abCYDuBleL1FcTNqhg" data-element-type="codeSnippet" class="zpelement zpelem-codesnippet "><div class="zpsnippet-container"><!DOCTYPE html><html lang="en"><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>GST on Building Sales: An Interactive Guide</title><script src="https://cdn.tailwindcss.com"></script><!-- Chosen Palette: Warm Neutrals --><!-- Application Structure Plan: The application is designed as an interactive, scenario-based tool rather than a static report. This structure was chosen because the core of the source material is based on conditional logic ("if this, then that") concerning Indian tax law. The primary user goal is to understand how specific circumstances affect GST liability. The structure consists of: 1. A clear introduction stating the general rule. 2. An interactive "Scenario Explorer" where users can select key variables (OC status, payment timing, registration timing). 3. A dynamic "Analysis" panel that instantly provides the GST implication and a legal rationale based on the user's selections. 4. Pre-defined "Common Scenarios" for quick reference. 5. A glossary for clarity. This task-oriented flow guides the user from a general principle to a specific, personalized conclusion, making the complex information highly digestible and useful. --><!-- Visualization & Content Choices: The source material is legal and procedural, not quantitative, so traditional data charts are unsuitable. The presentation methods are chosen to visualize the logic and flow: 1. Core Rule (from Schedule III): Presented as a prominent text block to establish the baseline. Goal: Inform. Method: Styled HTML. Justification: Sets the context immediately. 2. Interactive Logic (Payment/OC/Registration Timing): Presented as an interactive form/wizard. Goal: Organize & Explore. Method: HTML form elements controlled by Vanilla JS. Interaction: User selects options, and a result panel updates in real-time. Justification: Allows users to actively learn the cause-and-effect relationship between different timings, which is the crux of the issue. 3. Common Scenarios: Presented as an accordion. Goal: Compare & Inform. Method: HTML/Tailwind with JS for toggling. Interaction: User clicks to reveal details of common situations. Justification: Provides quick answers and reinforces learning. 4. Key Terms: Presented in a simple definition list. Goal: Inform. Method: HTML list. Justification: Ensures users understand the specific legal terminology. --><!-- CONFIRMATION: NO SVG graphics used. NO Mermaid JS used. --><style> body { font-family: 'Inter', sans-serif; } @import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap'); .result-card { transition: all 0.3s ease-in-out; } .scenario-card.active { max-height: 500px; opacity: 1; } .scenario-card { max-height: 0; opacity: 0; overflow: hidden; transition: max-height 0.5s ease-out, opacity 0.3s ease-out; } .timeline { display: flex; justify-content: space-between; position: relative; margin: 2rem 0; } .timeline::before { content: ''; position: absolute; top: 50%; left: 0; right: 0; height: 2px; background-color: #e2e8f0; transform: translateY(-50%); } .timeline-item { position: relative; text-align: center; width: 80px; } .timeline-dot { position: relative; width: 16px; height: 16px; border-radius: 50%; background-color: #cbd5e1; margin: 0 auto; z-index: 1; } .timeline-dot.active { background-color: #3b82f6; } .timeline-label { margin-top: 0.5rem; font-size: 0.75rem; color: #4b5563; } </style><body class="bg-stone-50 text-stone-800"><div class="container mx-auto p-4 md:p-8 max-w-5xl"><header class="text-center mb-10"><h1 class="text-3xl md:text-4xl font-bold text-stone-900">GST on Sale of Buildings</h1><p class="mt-2 text-lg text-stone-600">An Interactive Guide to Understanding Tax Implications in India</p></header><section class="mb-12 bg-white p-6 rounded-lg shadow-sm border border-stone-200"><h2 class="text-2xl font-semibold text-stone-800 mb-3">The General Rule: Schedule III of the CGST Act, 2017</h2><p class="text-stone-700 leading-relaxed">The Central Goods and Services Tax (CGST) Act specifies certain activities that are treated neither as a supply of goods nor a supply of services. As per Paragraph 5 of Schedule III of the Act, the <span class="font-semibold text-blue-600">"sale of land and, subject to clause (b) of paragraph 5 of Schedule II, sale of building"</span> is excluded from the scope of "supply". This means if a completed building is sold, and the entire payment (consideration) is received after the issuance of a completion/occupancy certificate, no GST is applicable.</p></section><main class="grid grid-cols-1 lg:grid-cols-3 gap-8"><div class="lg:col-span-2 bg-white p-6 rounded-lg shadow-sm border border-stone-200"><h2 class="text-2xl font-semibold text-stone-800 mb-6">Scenario Explorer</h2><div class="space-y-8"><div><label class="block text-lg font-medium text-stone-700 mb-2">1. Status of Occupancy Certificate (OC)</label><p class="text-sm text-stone-500 mb-3">Has the Occupancy Certificate (or Completion Certificate) been issued by the competent authority at the time of the transaction?</p><div class="flex space-x-4" id="ocStatus"><button data-value="before" class="flex-1 text-center p-3 border rounded-lg transition hover:bg-stone-100">OC Not Issued Yet</button><button data-value="after" class="flex-1 text-center p-3 border rounded-lg transition hover:bg-stone-100 bg-blue-500 text-white border-blue-500">OC Has Been Issued</button></div>
</div><div><label class="block text-lg font-medium text-stone-700 mb-2">2. Timing of Payment (Consideration)</label><p class="text-sm text-stone-500 mb-3">What portion of the total payment for the property was received <span class="font-semibold">before</span> the OC was issued?</p><div class="flex items-center space-x-4"><span class="text-sm">0%</span><input id="paymentSlider" type="range" min="0" max="100" value="0" step="1" class="w-full h-2 bg-stone-200 rounded-lg appearance-none cursor-pointer"><span class="text-sm">100%</span></div>
<div class="text-center mt-2 font-medium text-blue-600" id="paymentValue">0% received before OC</div>
</div><div><label class="block text-lg font-medium text-stone-700 mb-2">3. Timing of Sale Registration</label><p class="text-sm text-stone-500 mb-3">Was the sale deed registered before or after the OC was issued?</p><div class="flex space-x-4" id="regStatus"><button data-value="before" class="flex-1 text-center p-3 border rounded-lg transition hover:bg-stone-100">Before OC</button><button data-value="after" class="flex-1 text-center p-3 border rounded-lg transition hover:bg-stone-100 bg-blue-500 text-white border-blue-500">After OC</button></div>
</div></div></div><div class="lg:col-span-1"><div id="result" class="result-card bg-white p-6 rounded-lg shadow-sm border sticky top-8"><h3 class="text-xl font-semibold text-stone-800 mb-4">Analysis</h3><div id="gstOutcome" class="p-4 rounded-md text-center mb-4 font-bold text-lg"></div>
<div id="gstReason" class="text-sm text-stone-600 space-y-2"></div></div></div></main><section class="mt-12 bg-white p-6 rounded-lg shadow-sm border border-stone-200"><h2 class="text-2xl font-semibold text-stone-800 mb-6">Common Scenarios Explained</h2><div class="space-y-4"><div class="border border-stone-200 rounded-lg"><button class="w-full text-left p-4 font-medium text-stone-700 flex justify-between items-center hover:bg-stone-50 scenario-toggle" data-target="scenario1"><span>Scenario A: Sale after Completion</span><svg class="w-5 h-5 transition-transform" fill="none" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M19 9l-7 7-7-7"></path></svg></button><div id="scenario1" class="scenario-card px-4 pb-4 text-stone-600"><p class="mt-2"><strong>Situation:</strong> An individual purchases a ready-to-move-in apartment. The Occupancy Certificate (OC) has already been issued. The entire payment is made and the sale is registered after the OC date.</p><p class="mt-3 font-semibold text-green-700"><strong>GST Implication:</strong> No GST is applicable.</p><p class="mt-1 text-sm"><strong>Reason:</strong> This is a straightforward sale of a completed building where the entire consideration is received after the completion certificate. It falls squarely under Schedule III of the CGST Act and is not considered a supply.</p></div>
</div><div class="border border-stone-200 rounded-lg"><button class="w-full text-left p-4 font-medium text-stone-700 flex justify-between items-center hover:bg-stone-50 scenario-toggle" data-target="scenario2"><span>Scenario B: Partial Payment Before OC</span><svg class="w-5 h-5 transition-transform" fill="none" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M19 9l-7 7-7-7"></path></svg></button><div id="scenario2" class="scenario-card px-4 pb-4 text-stone-600"><p class="mt-2"><strong>Situation:</strong> A buyer books an under-construction flat and pays 20% of the value as an advance. The builder receives the OC a few months later. The remaining 80% is paid and the sale is registered after the OC is issued.</p><p class="mt-3 font-semibold text-orange-700"><strong>GST Implication:</strong> GST is applicable only on the 20% portion paid before the OC.</p><p class="mt-1 text-sm"><strong>Reason:</strong> Any consideration received before the OC is for the supply of a service (construction service) as per Schedule II. The portion of consideration received after the OC is for the sale of a completed building, which is not a supply. Therefore, GST is levied only on the pre-OC payment.</p></div>
</div><div class="border border-stone-200 rounded-lg"><button class="w-full text-left p-4 font-medium text-stone-700 flex justify-between items-center hover:bg-stone-50 scenario-toggle" data-target="scenario3"><span>Scenario C: Sale Before Completion</span><svg class="w-5 h-5 transition-transform" fill="none" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M19 9l-7 7-7-7"></path></svg></button><div id="scenario3" class="scenario-card px-4 pb-4 text-stone-600"><p class="mt-2"><strong>Situation:</strong> A buyer purchases an under-construction property. The entire payment is made and the sale is registered before the builder applies for or receives the OC.</p><p class="mt-3 font-semibold text-red-700"><strong>GST Implication:</strong> GST is applicable on the entire transaction value.</p><p class="mt-1 text-sm"><strong>Reason:</strong> Since the entire consideration is received before the issuance of the completion certificate, the transaction is treated as a supply of construction services under Schedule II of the CGST Act. The exclusion under Schedule III does not apply.</p></div>
</div></div></section><section class="mt-12 bg-white p-6 rounded-lg shadow-sm border border-stone-200"><h2 class="text-2xl font-semibold text-stone-800 mb-4">Glossary</h2><dl class="grid grid-cols-1 md:grid-cols-2 gap-x-8 gap-y-4"><div><dt class="font-semibold text-stone-700">Supply</dt><dd class="text-stone-600 text-sm">In GST law, "supply" is the taxable event. It includes all forms of supply of goods or services such as sale, transfer, barter, exchange, license, rental, lease or disposal made for a consideration.</dd></div>
<div><dt class="font-semibold text-stone-700">Consideration</dt><dd class="text-stone-600 text-sm">Refers to the payment made or to be made, whether in money or otherwise, for the supply of goods or services.</dd></div>
<div><dt class="font-semibold text-stone-700">Occupancy/Completion Certificate (OC)</dt><dd class="text-stone-600 text-sm">A legal document issued by a local government agency or planning authority, certifying that a building is compliant with all applicable building codes and laws, and is in a condition suitable for occupancy.</dd></div>
<div><dt class="font-semibold text-stone-700">Schedule II & III</dt><dd class="text-stone-600 text-sm">Schedules to the CGST Act. Schedule II classifies certain activities as either a supply of goods or a supply of services. Schedule III lists activities that are not considered a supply at all.</dd></div>
</dl></section><footer class="mt-12 text-center text-sm text-stone-500"><p><strong>Disclaimer:</strong> This tool is for informational and educational purposes only. It should not be considered as legal or financial advice. Please consult with a qualified tax professional for advice specific to your situation.</p></footer></div>
<script>
    document.addEventListener('DOMContentLoaded', function () {
        const state = {
            ocStatus: 'after',
            paymentBeforeOC: 0,
            regStatus: 'after',
        };

        const ocStatusEl = document.getElementById('ocStatus');
        const paymentSliderEl = document.getElementById('paymentSlider');
        const paymentValueEl = document.getElementById('paymentValue');
        const regStatusEl = document.getElementById('regStatus');

        const gstOutcomeEl = document.getElementById('gstOutcome');
        const gstReasonEl = document.getElementById('gstReason');
        const resultCardEl = document.getElementById('result');

        function updateUI() {
            Array.from(ocStatusEl.children).forEach(btn => {
                btn.classList.toggle('bg-blue-500', btn.dataset.value === state.ocStatus);
                btn.classList.toggle('text-white', btn.dataset.value === state.ocStatus);
                btn.classList.toggle('border-blue-500', btn.dataset.value === state.ocStatus);
            });
            Array.from(regStatusEl.children).forEach(btn => {
                btn.classList.toggle('bg-blue-500', btn.dataset.value === state.regStatus);
                btn.classList.toggle('text-white', btn.dataset.value === state.regStatus);
                btn.classList.toggle('border-blue-500', btn.dataset.value === state.regStatus);
            });

            paymentSliderEl.value = state.paymentBeforeOC;
            paymentValueEl.textContent = `${state.paymentBeforeOC}% received before OC`;
            
            paymentSliderEl.disabled = state.ocStatus === 'before';
             if (state.ocStatus === 'before') {
                paymentSliderEl.value = 100;
                state.paymentBeforeOC = 100;
                paymentValueEl.textContent = `100% received before OC`;
            }

            renderAnalysis();
        }
        
        function renderAnalysis() {
            let outcomeText = '';
            let reasonHtml = '';
            let cardColor = '';
            let textColor = '';

            if (state.paymentBeforeOC > 0) {
                outcomeText = "GST is Applicable";
                cardColor = 'bg-orange-100';
                textColor = 'text-orange-800';
                reasonHtml = `<p><strong>Legal Basis:</strong> As per Schedule II, Paragraph 5(b) of the CGST Act, the construction of a complex or building intended for sale to a buyer is a supply of service, except where the entire consideration has been received after issuance of completion certificate.</p>
                              <p><strong>Conclusion:</strong> Since ${state.paymentBeforeOC}% of the payment was received <strong>before</strong> the OC, the transaction is considered a supply of service to that extent. GST will be levied on this ${state.paymentBeforeOC}% portion of the total value.</p>`;
                if(state.paymentBeforeOC === 100) {
                    outcomeText = "GST is Applicable on Full Value";
                    cardColor = 'bg-red-100';
                    textColor = 'text-red-800';
                    reasonHtml = `<p><strong>Legal Basis:</strong> The transaction is classified as a supply of construction services under Schedule II because the entire consideration was received before the completion certificate was issued.</p>
                                  <p><strong>Conclusion:</strong> The exclusion under Schedule III does not apply. GST is levied on the <strong>entire 100%</strong> of the transaction value.</p>`;
                }

            } else {
                 outcomeText = "No GST Applicable";
                 cardColor = 'bg-green-100';
                 textColor = 'text-green-800';
                 reasonHtml = `<p><strong>Legal Basis:</strong> The sale of a building falls under Schedule III of the CGST Act, which lists activities not treated as a supply.</p>
                               <p><strong>Conclusion:</strong> Since the entire consideration (100%) was received <strong>after</strong> the issuance of the Occupancy Certificate, this transaction qualifies as a 'sale of building' and is excluded from GST.</p>`;
            }
            
            if (state.ocStatus === 'before') {
                 outcomeText = "GST is Applicable on Full Value";
                 cardColor = 'bg-red-100';
                 textColor = 'text-red-800';
                 reasonHtml = `<p><strong>Legal Basis:</strong> If the OC has not been issued, the property is considered under-construction.</p>
                               <p><strong>Conclusion:</strong> Any consideration received for an under-construction property is for the supply of a construction service under Schedule II. Therefore, GST is applicable on the <strong>entire value</strong> of the transaction.</p>`;
            }


            gstOutcomeEl.textContent = outcomeText;
            gstOutcomeEl.className = `p-4 rounded-md text-center mb-4 font-bold text-lg ${cardColor} ${textColor}`;
            gstReasonEl.innerHTML = reasonHtml;

            resultCardEl.classList.remove('border-green-300', 'border-orange-300', 'border-red-300');
            if(cardColor === 'bg-green-100') resultCardEl.classList.add('border-green-300');
            if(cardColor === 'bg-orange-100') resultCardEl.classList.add('border-orange-300');
            if(cardColor === 'bg-red-100') resultCardEl.classList.add('border-red-300');
        }

        ocStatusEl.addEventListener('click', (e) => {
            if(e.target.tagName === 'BUTTON') {
                state.ocStatus = e.target.dataset.value;
                if(state.ocStatus === 'before') {
                    state.paymentBeforeOC = 100;
                    state.regStatus = 'before';
                }
                updateUI();
            }
        });

        paymentSliderEl.addEventListener('input', (e) => {
            state.paymentBeforeOC = parseInt(e.target.value, 10);
            updateUI();
        });
        
        regStatusEl.addEventListener('click', (e) => {
             if(e.target.tagName === 'BUTTON') {
                state.regStatus = e.target.dataset.value;
                updateUI();
            }
        });

        const scenarioToggles = document.querySelectorAll('.scenario-toggle');
        scenarioToggles.forEach(toggle => {
            toggle.addEventListener('click', () => {
                const targetId = toggle.dataset.target;
                const targetPanel = document.getElementById(targetId);
                const icon = toggle.querySelector('svg');

                const isActive = targetPanel.classList.contains('active');
                
                document.querySelectorAll('.scenario-card.active').forEach(panel => {
                    panel.classList.remove('active');
                });
                 document.querySelectorAll('.scenario-toggle svg').forEach(svg => {
                    svg.classList.remove('rotate-180');
                });

                if(!isActive) {
                    targetPanel.classList.add('active');
                    icon.classList.add('rotate-180');
                }
            });
        });

        updateUI();
    });
    </script></div>
</div></div></div></div></div></div> ]]></content:encoded><pubDate>Sat, 11 Oct 2025 10:04:36 +0500</pubDate></item></channel></rss>