Retroactivity

Canopy’s retroactive engine empowers you to correct, adjust, and reimagine the state of an account or any of its lines of credit or loans at any point in time—without altering the immutable ledger. This capability ensures that your data remains auditable, traceable, and consistent, while providing the flexibility to address errors, disputes, or policy changes retroactively.


Why Retroactivity Matters

Retroactive adjustments are essential for maintaining accurate account states, especially in scenarios where historical activity needs correction. Whether it’s reversing a payment, adjusting a draw, or updating a policy, Canopy’s retroactive engine ensures that all changes are reflected accurately in the ledger.

Unlike traditional systems that mutate data, Canopy’s retroactive engine preserves the original historical state while creating new, backdated adjustments to reflect the corrected state. This approach ensures data integrity, simplifies auditing, and provides a clear trail of all changes.


Key Use Cases

  1. Correcting Transaction Errors
    • Reverse payments, offsets, or draws/charges to correct errors or address disputes.
    • Example: A payment was incorrectly applied to an account. The retroactive engine can reverse the payment and adjust the ledger’s principal, interest, and fees to reflect the correct state as if the payment had never occurred.
  2. Dispute Resolution
    • Reverse draws or charges in dispute scenarios
    • Example: A disputed charge can be reversed after the dispute is investigated, the lender loses the dispute and the charge is reversed in the system, ensuring the ledger reflects the correct balance during the resolution process.
  3. Policy Adjustments
    • Retroactively apply or reverse policies on an account, line or loan.
    • Example: A policy change (e.g., an interest calculation method) needs to be applied retroactively to reflect the correct ledger state at a specific point in time.
  4. Historical State Analysis
    • View an account, line or loan exactly as it was at any point in time, enabling accurate reporting and decision-making.
    • Example: Analyze an account, line or loan’s state on a specific date to understand how a retroactive adjustment would impact its balances.

How Retroactive Adjustments Work

Canopy’s retroactive engine processes adjustments asynchronously, ensuring that all changes are accurately reflected in the ledger. Here’s a high-level overview of the process:

  1. Identify the Adjustment

    Determine the transaction, policy, or event that needs to be reversed or adjusted. This could be a payment, draw, charge, or even a policy.

  2. Initiate the Retroactive Event

    Use the appropriate API endpoint or UI action to trigger the retroactive adjustment. The system will calculate the necessary changes to principal, interest, fees, and other balances.

  3. Process the Adjustment

    The retroactive engine creates new, backdated adjustment transactions or policies to correct the ledger. These adjustments reference the original transactions and include metadata for traceability.

  4. Re-pour Balances

    Any payments or balances affected by the adjustment are re-poured to ensure the ledger reflects the correct state by recalculating the entire account activity that could have been affected by the retroactive adjustment, like interest accrual, late fee calculation, etc. Discarded balance splits are marked for reconciliation purposes.

  5. Notify Stakeholders

    Notifications are sent to inform relevant parties of the retroactive adjustment and its impact on the account.


Key Features of the Retroactive Engine

  • Non-Mutative Adjustments: Original transactions remain unchanged, ensuring data integrity and auditability.
  • Backdated Transactions: Adjustment transactions are backdated to reflect the correct historical state.
  • Traceability: All adjustments include metadata (e.g., adjustment_for_transaction_id, adjustment_by_transaction_id) for easy tracking and reconciliation.
  • Policy Reversals: Retroactively apply or reverse policies on accounts, lines or loans.
  • Historical State Analysis: View an account, line or loan exactly as it was at any point in time.

Frequently Asked Questions

How can I view the impact of a retroactive adjustment?

The complete impact of a retroactive adjustment can be viewed in the transaction in CanopyOS. The "Transactions Impact" component highlights the adjustments made to principal, interest, fees, and other balances.

Are notifications sent for retroactive adjustments?

Yes, notifications are sent to inform stakeholders of retroactive adjustments and their impact on the ledger.

How long does retroactive processing take?

On average, retroactive processing takes upwards of 2 minutes, depending on how far back the item that is being reversed is in the ledger.

What’s the difference between a refund and a payment reversal?

A reversal is processed through the retroactive engine and adjusts the ledger’s principal, interest, and fees to reflect the correct state.
A refund, on the other hand, is processed as-is and only adjusts the account balance by the refund amount.


What’s Next