The treaty twist: your CPP and OAS are Canada's to tax, not India's
Most tax treaties tax a pension where you live. The India-Canada treaty does the opposite. Under Article 18, a pension is taxable only in the country it arises in, so a pension arising in Canada stays taxable only in Canada. Your CPP and your Old Age Security both arise in Canada, which means India does not tax them at all, even after you become a resident taxed on worldwide income.
That has a clean practical result: there is no Indian tax on your CPP or OAS, and therefore no foreign tax credit to claim on them, because there is nothing on the Indian side to relieve. Canada takes its own tax at source on the pension, and that is the end of it for those two streams. This is genuinely counter-intuitive, and a lot of general advice gets it wrong by saying a Canadian pension becomes taxable in India once you are ordinarily resident. For a true pension like CPP or OAS, it does not. India exempts it; you still report it as exempt so your return is complete.
Your RRSP is the opposite: India taxes the withdrawal, with a credit
An RRSP or RRIF is not treated as a pension for this purpose, and that changes everything. India, consistent with the Section 89A framework, treats a Canadian retirement savings account as a taxable account rather than a treaty-exempt pension, so once you are ordinarily resident, India taxes the withdrawal at your slab rates. Canada also taxes it, withholding at source, so the same withdrawal is taxed on both sides, and you relieve that with a foreign tax credit for the Canadian tax against the Indian tax on it.
The practical trap is timing. Canada does not tax the money inside an RRSP until you withdraw it, but India, once you are ordinarily resident, taxes worldwide income as it accrues, so India could tax the fund's yearly growth while Canada taxes nothing yet, leaving your Canadian tax and Indian tax in different years and the credit wasted. This is exactly what Section 89A exists to fix, which is next.
Section 89A lines up the RRSP timing, because Canada is notified
Section 89A is the tool that stops the RRSP timing mismatch, and it is available because Canada is one of the three notified countries for it, alongside the US and the UK. Without it, India taxes the RRSP's internal growth year by year once you are ordinarily resident, while Canada waits until you withdraw, so the two taxes fall in different years and the foreign tax credit does not line up.
With the Section 89A election, you elect to have India tax the RRSP in the year you actually withdraw, matching Canada, so the incomes and the credit meet in the same year. You make it on Form 10-EE, which becomes Form 40 under the Income-tax Act 2025. The election is sticky: it applies to all later years and cannot simply be withdrawn, so it is worth modelling before you elect, not electing by default. While you are still Resident but Not Ordinarily Resident, the RRSP's growth is outside the Indian net anyway, so the election matters from the year you become ordinarily resident.
The TFSA trap: tax-free in Canada, fully taxed in India
A TFSA carries no protection once India can tax you. It is tax-free only for a Canadian resident; India does not recognise it, and it is not a Section 89A retirement account, so there is no deferral. Once you are resident and ordinarily resident, India taxes the interest and the dividends inside your TFSA at your slab rates and the gains under the capital-gains rules, as they arise, with no exemption.
What makes it sting is the credit side. Because Canada charges nothing on a TFSA, there is no Canadian tax to credit against the Indian tax, so you carry the full Indian tax on income that was completely tax-free the year before. It is the same shape as the NRE-interest trap: tax-free on one side does not mean tax-free once the other side can tax you. The TFSA is also a foreign asset, so it goes in Schedule FA every year once you are ordinarily resident, and a missing foreign asset is a default under the Black Money Act in its own right. The RNOR window is the time to decide what to do with it before India's worldwide-income tax fully applies.
A worked example: Harpreet's CPP, RRSP and TFSA
Harpreet worked in Toronto for twenty years and has moved back to Chandigarh, now in her first ordinarily-resident year. She draws CPP and OAS, takes withdrawals from an RRSP, and still holds a TFSA.
Her CPP and OAS are taxable only in Canada under Article 18, so India does not tax them; she reports them as exempt and claims no credit, because there is nothing on the Indian side to relieve. Her RRSP withdrawals are taxable in India at slab rates, with a credit for the Canadian tax withheld, and her CA has made the Section 89A election so India taxes them in the year she withdraws rather than on the fund's yearly growth. Her TFSA is now fully taxable in India on its income and gains, with no Canadian tax to credit, and it goes in her Schedule FA. Sorting this, Harpreet pays India nothing on the CPP and OAS, the right tax on the RRSP with the credit, and the full Indian tax on the TFSA, and nothing is taxed in the wrong year or missed on disclosure.