For accountants and tax preparers

A client sent you a Kept tax pack. Here is what is in it.

Kept is an app self employed people use to keep their receipts. A tax pack holds their expenses for a period, arranged by Schedule C line, with every receipt behind the totals. Kept organizes records and is not tax advice. Categories and Schedule C lines are suggestions, some made automatically from receipt images, and they can be wrong. How each expense is treated is up to you.

The files

Every file's name starts with the pack's name: "Kept tax pack", the period, and your client's name, as in "Kept tax pack 2025, Jane Doe". The period is a year, a quarter such as "Q1 2026", a month, or a range of dates. Your client may send every file in one ZIP with the same name, or only the summary and the spreadsheet.

Kept tax pack 2025, Jane Doe, summary.pdf
The summary: the cover, totals by category and by Schedule C line, a table of every receipt, and How to read this pack on the last page.
Kept tax pack 2025, Jane Doe, spreadsheet.csv
The spreadsheet: one row per receipt, with the columns described below. It opens in Excel, Numbers, or Google Sheets.
Kept tax pack 2025, Jane Doe, receipts 1 of 4.pdf
The receipts: each one starts a page with its date, merchant, category, amounts, and Kept's id for it, followed by the receipt itself. A receipt with no photo or PDF has its details only. A large pack has several of these files, numbered.
Kept tax pack 2025, Jane Doe, originals 1 of 3.zip
The original photos and PDFs, when your client chose to include them, as Kept stored them. Each is named by its date, merchant, total, and the start of Kept's id for the receipt, as in 2025-03-14_corner-print-shop_43.18_3f2a9c1e.jpg, and the spreadsheet's image_file column names each receipt's files.

The cover

The summary's first page says what the pack covers and what to look at first.

Amounts

How to read this pack

This is the same text as the summary's last page. Each pack's last page names the amount that pack used for large purchases.

The mark

† beside a category: Kept chose it from the receipt and nobody has checked it yet, because the receipt still needs review or Kept confirmed it by itself.

Flags in the spreadsheet's flags column

large_purchase
A business purchase of $2,500 or more, which may need to be depreciated rather than expensed.
missing_purpose
A business meal or travel receipt with no business purpose written down.
gift_over_25
A business gift to someone who got more than $25 in gifts that year, the most that counts per person.
mixed_use_not_set
A business receipt on a line that's often partly personal (car and truck, utilities, phone and internet), shown in full because no business share is set.
ai_category
Kept chose the category and nobody has checked it, the same as † in the summary.
other_currency
Not in US dollars, so it is listed apart and left out of every total.
paid_other_year
An invoice or bill paid in a different year from its date, counted here by its date.
needs_review
Nobody has checked what Kept read from this receipt yet.

The spreadsheet's columns

receipt_id, date, merchant
Kept's id for the receipt (the receipt PDFs show it too), the date printed on it, and who it's from.
category, schedule_c_line, schedule_c_part, schedule_c_line_label, line_map_year
The category and the Schedule C line it maps to, with its part and its name on the form of line_map_year.
business_or_personal, tax_treatment
Business or personal, and where the amount goes: schedule_c, other_form (such as Form 8829), not_deductible, or personal.
subtotal, sales_tax_included, tip_included, total, currency, amount_usd
Amounts as decimals. Sales tax and tip are part of the total, not extra. amount_usd is empty in other currencies.
limit_note
On business meals: the amount is in full, before the 50% limit.
is_refund, refund_of
yes for a refund or return: its amount stays positive and comes off the totals. refund_of is the purchase it refunds.
payment_method, card_last4
The card or payment as the receipt shows it, and the last four digits of the card.
item_description, business_purpose, attendees
What was bought, and for meals and travel why and who was there, as the person wrote them.
tags, notes
The person's own tags and notes.
source, status, review_status, category_source, total_source
How the receipt came in, whether and how it was checked, who chose the category (ai, merchant_rule, person), and where the total came from (printed, subtotal, line_items, typed).
flags
The codes above, separated by semicolons.
image_file
The names of the original files in the originals ZIPs, when the pack has them.
kept_at, last_edited_at, paid_date
When the receipt was kept and last changed (UTC), and when an invoice or bill was paid, if entered.
exchange_rate, rate_source, business_use_percent, payment_type, split_part
Kept doesn't fill these in yet, so they stay empty.

How receipts were read and checked

Kept reads each receipt from its photo, PDF, or email with AI: the date, who it is from, the amounts, the card, and a suggested category. Receipts the person typed in were not read.

When a receipt prints no total, Kept adds up the subtotal, tax, and tip, or the items, and total_source says so. Such a total is never confirmed without the person.

The person checks each receipt and corrects what is wrong. Kept confirms a receipt by itself only when it was sure of every field, and review_status says which.

Questions

If a receipt looks wrong, ask your client. They can correct it in Kept and send you a new pack. For questions about Kept itself, write to [email protected].