Transfer Pricing Algorithm WIP
(WIP)
Thin-Capitalisation (“Thin-Cap”) module
Context
This module plugs into the Transfer Pricing Algorithm after the TP-convergence loop and **before** the withholding-tax stage, adjusting ATP PBT and creating carry-forward variables where interest is disallowed.
Data structure additions
Data
Role | Label | Definition | Typing | Multiplicity behavior | Mandatory |
---|---|---|---|---|---|
Financials | ATP Debt – Related-party | Average book value of debt owed to associated enterprises during the period | Couple (Decimal;ISO 3 Currency Code) | If multiple defined, are aggregated for computation | No, if absent and Thin-Cap in scope, assumed 0 |
Financials | ATP Debt – Third-party | Average book value of debt owed to independent lenders | Couple (Decimal;ISO 3 Currency Code) | If multiple defined, are aggregated for computation | No, if absent, assumed 0 |
Financials | ATP Equity – Thin-Cap | Book or tax equity relevant for thin-cap calculations (may differ from accounting equity) | Couple (Decimal;ISO 3 Currency Code) | If multiple defined, are aggregated for computation | Yes **if** Thin-Cap in scope; otherwise optional |
Financials | ATP Net Interest Expense | Net interest expense (interest expense – interest income) *after* TP adjustments, *before* thin-cap limitation | Couple (Decimal;ISO 3 Currency Code) | If multiple defined, are aggregated for computation | Yes **if** Thin-Cap in scope |
Financials | ATP EBITDA | Earnings before interest, tax, depreciation & amortisation (post-TP, pre-thin-cap) | Couple (Decimal;ISO 3 Currency Code) | If multiple defined, are aggregated for computation | No – required only for EBITDA-based rules |
Financials | ATP Excess Interest Carry-forward N-1 | Disallowed interest from the previous year still available for future deduction | Couple (Decimal;ISO 3 Currency Code) | If multiple defined, are aggregated for computation | No, default 0 |
Rules
Role | Label | Definition | Typing | Multiplicity behavior | Mandatory |
---|---|---|---|---|---|
Thin-Cap | ATP Thin-Cap rule type | Specifies which national limitation applies | Single choice Enum : {Debt-Equity ; Fixed-Ratio ; EBITDA ; Group-Ratio ; Safe-Harbour-None} | Only one value acceptable per analysis segment | Yes if any entity flagged Thin-Cap in scope |
Thin-Cap | ATP Thin-Cap in scope | Flags whether thin-capitalisation rules apply to the entity | Boolean | Only one value acceptable per segment | No, default **False** |
Thin-Cap | ATP Debt/Equity Safe-Harbour ratio | Maximum Debt ÷ Equity allowed (e.g. 3 : 1) for Debt-Equity type | Decimal | Only one value acceptable per segment | Mandatory for Debt-Equity rules |
Thin-Cap | ATP Fixed-Ratio % EBITDA | Maximum percentage of EBITDA deductible as net interest (e.g. 30 %) | percentage | Only one value acceptable per segment | Mandatory for Fixed-Ratio / EBITDA rules |
Thin-Cap | ATP De-minimis interest threshold | Amount of net interest always deductible regardless of ratios | Couple (Decimal;ISO 3 Currency Code) | Only one value acceptable per segment | Optional – default 0 |
Thin-Cap | ATP Group-Ratio election | Allows use of a group ratio if more favourable than fixed ratio | Boolean | Only one value acceptable per segment | Optional – default False |
Thin-Cap | ATP Group-Ratio % | Group net-interest ÷ EBITDA ratio when election taken | percentage | Only one value acceptable per segment | Required if Group-Ratio election = True |
Thin-Cap | ATP Excess Interest carry-forward period | Number of years disallowed interest may be carried forward | Integer | Only one value acceptable per segment | Optional – default ∞ |
Taxation / Output
Role | Label | Definition |
---|---|---|
Taxation | ATP Disallowed Interest N | Net interest expense denied in the current year (negative adjustment to ATP PBT) |
Taxation | ATP Excess Interest Carry-forward N | Disallowed interest to carry forward to future years, after utilisation tests |
Computational step – Thin-Cap limitation
This step is performed **entity-by-entity at the “Declaring Entity” level**.
- **Compute the Allowable Interest Ceiling (AIC)**
- *Debt-Equity rule*: AIC = min(NI ; (Debt/Equity Safe-Harbour × ATP Equity – Thin-Cap))
- *Fixed-Ratio / EBITDA rule*: AIC = min(NI ; Fixed-Ratio % × ATP EBITDA)
- *Group-Ratio election*: substitute the higher of Fixed-Ratio % and Group-Ratio % in the above.
- **Apply the de-minimis threshold**
If NI ≤ De-minimis → entire NI is deductible → skip to step 4.
- **Determine current-year disallowance**
Disallowed_N = max(0 ; NI – AIC)
- **Utilise prior-year carry-forward**
Allowed_from_carry = min(Excess Carry-forward N-1 ; AIC – (NI – Disallowed_N)) Disallowed_N = Disallowed_N – Allowed_from_carry
- **Update variables**
* ΔPBT_Thin-Cap = (-1) × Disallowed_N * ATP Disallowed Interest N = Disallowed_N * ATP Excess Interest Carry-forward N = Disallowed_N (subject to carry-forward period) * Replace ATP PBT in the downstream **Tax losses** stage with New_ATP_PBT = ATP PBT + ΔPBT_Thin-Cap + ΔPBT_WHT (paid + due)
Interaction with other modules
- **Transfer Pricing convergence**: thin-cap uses the *post-TP* interest figures; it does **not** trigger another TP iteration.
- **Withholding-tax engine**: unchanged – WHT remains computed on gross interest flows.
- **Tax-loss computation**: use New_ATP_PBT that includes thin-cap adjustment.
- **Genetic optimiser**: may treat the *Debt/Equity ratio*, *interest rate*, or *Group-Ratio election* as additional variables, bounded by statutory rules.
Summary of new labels
- Data
- ATP Debt – Related-party • ATP Debt – Third-party • ATP Equity – Thin-Cap • ATP Net Interest Expense • ATP EBITDA • ATP Excess Interest Carry-forward N-1
- Rules
- ATP Thin-Cap rule type • ATP Thin-Cap in scope • ATP Debt/Equity Safe-Harbour ratio • ATP Fixed-Ratio % EBITDA • ATP De-minimis interest threshold • ATP Group-Ratio election • ATP Group-Ratio % • ATP Excess Interest carry-forward period
- Outputs
- ATP Disallowed Interest N • ATP Excess Interest Carry-forward N • ΔPBT_Thin-Cap