When an organization initiates a new transfer, the compliance units should be placed in reserve after the transfer is signed and sent (status = sent) to the receiving organization (i.e., the buyer).
Compliance units are placed in reserve when a new transfer is initiated (status = sent) and remain in reserve until the transfer reaches an end state (status = recorded, refused, declined, rescinded)
Any business logic or system checks that are looking at the amount of credits available for use will need to account for credits in reserve. For example, when initiating a transfer the system will need to check if the organization has enough credits to initiate the transfer; this check needs to account for any in reserve credits (check organization balance minus in reserve credits = amount of credits available). This same type of check will need to happen for compliance reporting but will be part of a larger feature, the Available Credit Balance (which exists in TFRS and will need to be developed in the LCFS portal).
Card #318 and #333 are dependencies for the completion of this card, as they are the initial front- and back-end work required for implementing the in reserve compliance units functionality
This functionality exists in TFRS and is being implemented in a similar way in the LCFS portal
Purpose and benefit to user:
Prevents the selling organization from using the compliance units for other purposes while a transfer is still being processed/completed. For example, initiating a second transfer with a different organization for the same compliance units.
Acceptance Criteria:
[x] When a transfer is initiated/sent/signed, then the compliance units are transferred into reserve
[x] When a transfer is initiated/sent/signed, and there are not enough compliance units for the transfer, send back a validation error
Development Checklist:
[x] realtime backend validation on forms to check for compliance units. in general anything that touches on balances should implement validation on the backend
[x] move compliance units from balance to reserve
Notes:
organization balance - in reserve credits = amount of credits available
Description:
When an organization initiates a new transfer, the compliance units should be placed in reserve after the transfer is signed and sent (status = sent) to the receiving organization (i.e., the buyer).
Purpose and benefit to user: Prevents the selling organization from using the compliance units for other purposes while a transfer is still being processed/completed. For example, initiating a second transfer with a different organization for the same compliance units.
Acceptance Criteria:
Development Checklist:
Notes: