{
  "tool_id": "art-260-allocate-ihb-interest",
  "note": "IHB interest allocation for notional pooling and ZBA sweep structures per OECD TP Guidelines 2022.",
  "vectors": [
    {
      "name": "notional_pool_two_members_act360",
      "description": "Notional pool: PARENT +500000, SUB_A -200000, pool_net=300000, rate=5%, 30-day ACT/360. PARENT receives 1250 credit interest; SUB_A gets 0 (net pool is positive).",
      "policy_parameters": {
        "pool_type": "notional",
        "arm_length_rate": 0.05,
        "days": 30,
        "day_count_convention": "ACT/360",
        "base_currency": "USD",
        "pool_members": [
          {
            "entity_id": "PARENT_CO",
            "balance": 500000,
            "withholding_rate": 0
          },
          {
            "entity_id": "SUB_A",
            "balance": -200000,
            "withholding_rate": 0
          }
        ]
      },
      "output_payload": {
        "pool_type": "notional",
        "pool_net_balance": 300000,
        "arm_length_rate": 0.05,
        "days": 30,
        "day_count_convention": "ACT/360",
        "day_count_fraction": 0.083333,
        "base_currency": "USD",
        "total_interest_allocated": 1250,
        "net_interest_payable": 1250,
        "entity_count": 2,
        "allocations": [
          {
            "entity_id": "PARENT_CO",
            "balance": 500000,
            "gross_interest": 1250,
            "withholding_rate": 0,
            "withholding_amount": 0,
            "net_interest": 1250,
            "allocation_basis": "PRO_RATA_NOTIONAL"
          },
          {
            "entity_id": "SUB_A",
            "balance": -200000,
            "gross_interest": 0,
            "withholding_rate": 0,
            "withholding_amount": 0,
            "net_interest": 0,
            "allocation_basis": "PRO_RATA_NOTIONAL"
          }
        ],
        "oecd_tp_compliant": true,
        "table_version": "OECD-TP-IHB-INTEREST-ALLOC-2022",
        "table_source": "OECD Transfer Pricing Guidelines 2022 Ch.I (arm's-length standard) + Ch.VIII (IHB cash pools); SWIFT IHB banking guide; ECB TARGET2 compensation methodology",
        "regulatory_basis": "Interest allocation per OECD TP Guidelines 2022 Ch.VIII (cash pooling, arm's-length principle); pool leader earns spread between lending/borrowing rates; arm_length_rate should reflect comparable uncontrolled transactions. ACT/360 default per SWIFT TARGET2.",
        "pii_note": "ZERO PII: entity IDs, aggregate balances, rates, and period parameters only. No account holder, ultimate beneficiary, or personal data enters this kernel.",
        "not_legal_advice": "Not tax, legal, or accounting advice. IHB structures require review by qualified transfer-pricing advisors and local tax counsel."
      },
      "golden_hash": "17fecfe583fb2794b9141afd28767955a1fca8b5200ca924b0c387a48b08a423"
    },
    {
      "name": "zba_sweep_with_withholding",
      "description": "ZBA sweep: PARENT +100000, CHILD -60000. Rate=6%, 30-day ACT/360. PARENT earns 500, CHILD pays -300, withholding_rate=0 both.",
      "policy_parameters": {
        "pool_type": "zba",
        "arm_length_rate": 0.06,
        "days": 30,
        "day_count_convention": "ACT/360",
        "base_currency": "USD",
        "pool_members": [
          {
            "entity_id": "PARENT_CO",
            "balance": 100000,
            "withholding_rate": 0
          },
          {
            "entity_id": "CHILD_SUB",
            "balance": -60000,
            "withholding_rate": 0
          }
        ]
      },
      "output_payload": {
        "pool_type": "zba",
        "pool_net_balance": 40000,
        "arm_length_rate": 0.06,
        "days": 30,
        "day_count_convention": "ACT/360",
        "day_count_fraction": 0.083333,
        "base_currency": "USD",
        "total_interest_allocated": 200,
        "net_interest_payable": 200,
        "entity_count": 2,
        "allocations": [
          {
            "entity_id": "PARENT_CO",
            "balance": 100000,
            "gross_interest": 500,
            "withholding_rate": 0,
            "withholding_amount": 0,
            "net_interest": 500,
            "allocation_basis": "INDIVIDUAL_ZBA"
          },
          {
            "entity_id": "CHILD_SUB",
            "balance": -60000,
            "gross_interest": -300,
            "withholding_rate": 0,
            "withholding_amount": 0,
            "net_interest": -300,
            "allocation_basis": "INDIVIDUAL_ZBA"
          }
        ],
        "oecd_tp_compliant": true,
        "table_version": "OECD-TP-IHB-INTEREST-ALLOC-2022",
        "table_source": "OECD Transfer Pricing Guidelines 2022 Ch.I (arm's-length standard) + Ch.VIII (IHB cash pools); SWIFT IHB banking guide; ECB TARGET2 compensation methodology",
        "regulatory_basis": "Interest allocation per OECD TP Guidelines 2022 Ch.VIII (cash pooling, arm's-length principle); pool leader earns spread between lending/borrowing rates; arm_length_rate should reflect comparable uncontrolled transactions. ACT/360 default per SWIFT TARGET2.",
        "pii_note": "ZERO PII: entity IDs, aggregate balances, rates, and period parameters only. No account holder, ultimate beneficiary, or personal data enters this kernel.",
        "not_legal_advice": "Not tax, legal, or accounting advice. IHB structures require review by qualified transfer-pricing advisors and local tax counsel."
      },
      "golden_hash": "b517cf0b61fbe4ef0ab715ba8e6f03e2f0ebb624b98aa39836b89b411fbac685"
    },
    {
      "name": "zero_rate_zero_interest",
      "description": "Empty-input guard: rate=0 → zero interest regardless of pool_type or balances.",
      "policy_parameters": {
        "pool_type": "notional",
        "arm_length_rate": 0,
        "days": 30,
        "day_count_convention": "ACT/360",
        "base_currency": "USD",
        "pool_members": [
          {
            "entity_id": "ENT_A",
            "balance": 1000000,
            "withholding_rate": 0
          }
        ]
      },
      "output_payload": {
        "pool_type": "notional",
        "pool_net_balance": 1000000,
        "arm_length_rate": 0,
        "days": 30,
        "day_count_convention": "ACT/360",
        "day_count_fraction": 0.083333,
        "base_currency": "USD",
        "total_interest_allocated": 0,
        "net_interest_payable": 0,
        "entity_count": 1,
        "allocations": [
          {
            "entity_id": "ENT_A",
            "balance": 1000000,
            "gross_interest": 0,
            "withholding_rate": 0,
            "withholding_amount": 0,
            "net_interest": 0,
            "allocation_basis": "PRO_RATA_NOTIONAL"
          }
        ],
        "oecd_tp_compliant": true,
        "table_version": "OECD-TP-IHB-INTEREST-ALLOC-2022",
        "table_source": "OECD Transfer Pricing Guidelines 2022 Ch.I (arm's-length standard) + Ch.VIII (IHB cash pools); SWIFT IHB banking guide; ECB TARGET2 compensation methodology",
        "regulatory_basis": "Interest allocation per OECD TP Guidelines 2022 Ch.VIII (cash pooling, arm's-length principle); pool leader earns spread between lending/borrowing rates; arm_length_rate should reflect comparable uncontrolled transactions. ACT/360 default per SWIFT TARGET2.",
        "pii_note": "ZERO PII: entity IDs, aggregate balances, rates, and period parameters only. No account holder, ultimate beneficiary, or personal data enters this kernel.",
        "not_legal_advice": "Not tax, legal, or accounting advice. IHB structures require review by qualified transfer-pricing advisors and local tax counsel."
      },
      "golden_hash": "8ca5a22d6d9c3542eac94c2c2b73a8ca38299fb9f496a844713414a07f1121c6"
    }
  ]
}
