Privacy
Privacy policy.
Effective 17 October 2026. This is the privacy policy for the Assay application.
Who runs Assay
Assay is operated by Caleb Dorris, a sole proprietor in the Hendersonville, Tennessee area. The application is at calebdorris.com/apps/assay. Questions and deletion requests go to caleb@calebdorris.com.
What this policy covers
It covers information Assay collects when you open an account, keep a ledger, connect a bank, or write to support. It does not cover a bank’s own website or Plaid’s own handling of a connection. Plaid’s end-user privacy policy is at plaid.com/legal.
Consent
Assay does not open an account, and does not collect bank data, without a recorded yes. The box starts unchecked. Checking it is the consent.
The account box is on registration. It is consent to collect, process, and store the account information in this policy, and agreement to the terms. Assay stores the time and the policy date on the account. An account opened before that box existed cannot use Assay until the same consent is given.
The bank box is on Accounts, before Plaid Link opens. It is consent to collect, process, and store the bank data listed below. Assay does not open Link, and does not save a new copy of bank data, until that consent is stored. To stop the collection, disconnect the bank in Assay and revoke it at the bank, or ask for the account to be deleted.
Information you give Assay
- Name, email address, and a password. The password is stored only as an argon2id hash.
- Timezone, bills, payday, vaults, goals, categories, and transactions you enter by hand.
- Messages you send to support.
Information from a bank, through Plaid
Connecting a bank is optional. You can keep a manual ledger instead. If you connect a bank, you do it in Plaid Link. Assay does not receive your bank username or password.
With your permission, Plaid sends Assay the data needed to show what you can still spend:
- The institution name.
- Account name, type, and the last digits of the account number. Not the full account number.
- Current and available balances, when the bank provides them.
- Transactions, including date, amount, and merchant or description.
- Recurring inflows and outflows that Plaid identifies from that history.
Assay uses that data to show cash, bills due through the next payday, reserves, and the amount left to spend. A future paycheck is shown and is not added to the spendable number. Assay does not use bank data for advertising, credit decisions, or selling a profile of you.
Assay asks Plaid for updates when you connect a bank, when you choose Sync, when Plaid sends a transaction webhook, and when you open Today or Accounts if the last update is more than four hours old. Those updates copy data Plaid already holds. They are not a live pull from the bank.
Information collected automatically
- A session cookie named
assay. It is limited to this application, is not readable by page scripts, and is removed when the browser closes. Assay does not use advertising cookies. - Failed sign-in attempts: the email address and IP address, kept long enough to lock out eight failures in fifteen minutes, then deleted.
- Ordinary host logs of requests to the server.
Who else receives it
- Plaid receives the bank login you enter in Link, and holds the connection Assay uses to fetch the data above. Assay stores an access token for that connection. The token is encrypted before it is saved.
- The host runs the server and the database. The database is on that machine and is not a file published on the website.
- Stripe processes a card only if you buy live-check credit. Assay does not store the card number. The monthly plan is not charged to a card.
Assay does not sell personal information. A staff account can see customer names, email addresses, plans, invoices, and support tickets. It cannot open another person’s balances or transactions. The operator can reach the server in order to run Assay and to answer a support or deletion request.
How long it is kept
- Account information, bank data, and the consent timestamps: while the account is open.
- Failed sign-in email addresses and IP addresses: 15 minutes.
- Plaid webhook notices: 90 days.
- The staff audit log: 24 months.
- A database backup, when one has been taken: up to three months, and not on the public website.
Removing a bank or the account
Removing a bank inside Assay deletes that institution and its accounts and transactions from Assay. That deletion does not, by itself, revoke Plaid’s copy of the connection. You can revoke the bank in the bank’s own settings, or email caleb@calebdorris.com and ask for the Plaid connection to be revoked.
To delete the Assay account, email that same address. Within 30 days the operator revokes each bank connection at Plaid and then deletes the account. The ledger, bank rows, support tickets, invoices, notes, credit, and consent timestamps are deleted with it. If a ticket is needed to record a security incident, the operator copies that text into the incident note before the account is deleted. A backup made before the deletion may persist until that backup expires, which is at most three months.
Security
The site is served over HTTPS. The Plaid access token is encrypted with AES-256-GCM before it is stored. Balances, transaction descriptions, and the rest of the ledger are stored in the database without a separate encryption layer, and the disk is not encrypted. Access to the database account and to the file that holds secrets is limited to the operator.
Children
Assay is not for anyone under 18. It does not knowingly collect information from children.
Changes
If this policy changes, the effective date at the top changes with it. A change that starts a new use of data is described here before that use begins, and a new consent box is required before that use. Continued use alone is not a new consent.