Credit Rules for Trac-Managed Credit Purses
This document details how Trac manages credit purses when it handles credit balances and transactions directly. In this setup, Trac ensures that all credit balances are applied, prioritised, and utilised accurately.
Purpose
The purpose of this feature is to ensure that credit balances are applied accurately across various transactions. The design enables a process where credits, such as free school meals or duty credits, are prioritised and applied to balances by Trac directly, ensuring that members always use their allocated credits first before using any other funds. This allows accurate financial reporting and ensures that credits are applied as per defined business rules.
Scope
This document covers:
- The process by which Trac manages credit balances and transactions.
- How credit purses are prioritised and used.
- Integration with POS systems.
- Configuration of credit profiles and priority settings.
Description
When Trac manages credit purses, it takes complete responsibility for handling credit balances associated with members. Each member has two or more purses:
- Default Purse (Cash Purse): Contains money topped up by the member or their parent or guardian.
- Sales Purse: Records all sales made against the member’s account.
- Credit Purses: Zero or more purses representing various types of credits (e.g., free school meals, duty meals, universal infant free school meal, etc.).
Credit Assignment System
Management systems can create and update credit purses as required. Tali has credit management features that integrate with Trac and school MIS systems allowing flexible credit profiles to be assigned and managed. Documentation for this is available...
Each member with available credit should have a purse created for that type of credit. The purse has a title which is used to identify the type of purse. The purse will have an identifier unique across all members and organisations.
Purses have metadata assigned that is used in sales processing to determine the validity of purses for that sale, and the order in which purses should be debited to satisfy credit business rules.
This metadata includes:
- Terminal ID: Identifies the point-of-sale terminal where the credit is valid.
- Date and Day of the Week: Specifies valid dates or days (e.g., Monday to Friday for school meals). Time of Day: Sets the time range when the credit can be applied (e.g., 12:00 PM to 2:00 PM for lunch credits).
- Session Name: Names the session (e.g., breakfast, lunch) for which the credit is applicable.
- Priority: An integer representing the order in which purses should be debited. 0 is the highest priority. Larger numbers are lower priorities.
Priority handling
Each credit purse is assigned a unique numeric priority, determining the order in which they are used during transactions. The system decrements credits from the highest priority (lowest numerical value) first.
If two credit purses have the same priority, the order in which the purses will be decremented is undefined. You should ensure that you do not create purses with the same priority. The cash purse is always the last to be decremented, only used when all credit purses are exhausted. In the case where there are no valid credit purses the cash purse will be the only purse debited. Example: A pupil has two credit purses: one for a free school meal (priority 1) and another for additional lunch credits (priority 2). Both are valid from Monday to Friday at lunch time. When making a purchase, Trac first uses the free school meal credit. If that is insufficient, it moves on to the lunch credits. The cash purse is used only if both credit purses are depleted.
Handling Different Transaction Types
Sales Processing
- When a sale occurs, the POS system posts the sale to Trac against the sales purse.
- Trac determines which credit purses are valid and prioritises their usage. Credit purses are used first before any funds are taken from the cash purse.
- Trac ensures the credit purses are decremented in the correct priority order.
Refunds
- Same-day Refunds: These are linked directly to the original sale and processed against the same credit purses that were used.
- Subsequent-day Refunds: These should not be posted as refunds. These must be processed as top-ups and not directly linked to the original transaction. All top ups should be made to the cash purse.
Cancellations
- Cancellations involve correcting mistakes at the till. Neither the original transaction nor the cancellation should be sent to Trac. If a transaction has been sent to Trac then a refund or top-up should be sent.
Integration and Synchronisation
Trac transmits updated credit balances to the tills before each session to ensure accurate information is available at the start of each period. It is important to note that:
- We aim to have all balances up to date before the start of the session, and will begin the update process early enough to meet this guarantee.
- A large number of balances may need to be updated
- The latency for these updates is variable and depends on factors outside the control of Trac. We therefore cannot make any guarantees about when this update process will start, and will vary this based on observed latencies. Therefore where sessions with shared credit purses occur close together it is possible for credits to become available before the specified start time.
Updated 1 day ago