Browse help docs

Money

Import a cost file

Upload a spreadsheet of what you paid and match it against the cards you already have.

Updated
2026-09-03
Read
3 min
Status
Current

What your file needs

One column is enough: something that identifies the card. Cost is optional. A row without one still lands as its card and shows under Without cost until you add what you paid. Everything else only makes the matching better.

Excel workbooks are read directly, every sheet listed, and each sheet is imported on its own with its own receipt and undo. CSV works too. Dates stored as Excel serial numbers are read correctly.

  • Cert number, or your own eBay item number, are exact identifiers. Rows carrying either link with no questions asked.
  • The item number you BOUGHT is not the same thing. Map it as "Purchase item # (what you bought)" and it is kept on the purchase, never matched to a card.
  • Player, year, set and card number together are a strong match, but they are a resemblance, so you confirm them.
  • A season written "2024-25" is read as 2024, and a name written "Morant, Ja" is read as Ja Morant.
  • Set names are translated, so "Young Guns" finds Upper Deck Young Guns.
  • Order name, order number and item number describe the order, not the card. Map them and they are recorded on the purchase.
  • If two of your columns point at the same thing, CardZen reads the leftmost one and tells you which it ignored.
  • Date sold and sold price on a row record a sale of that card: the card is marked sold and its profit uses the cost on the same row. Map selling fees and shipping charged if your file has them; CardZen never estimates them. A Profit column is checked, not used.

How the import runs

  1. 1Open Import a cost file from Loose ends, Cards, or Purchases. All three go to the same place.
  2. 2Choose your spreadsheet. A workbook lists its sheets; pick one. CardZen guesses which column is which from the headers and shows you its guesses to correct. Values that apply to a whole sheet, like the grader, where it was sold, or selling fees (enter 0 if there were none), go in the sheet defaults box.
  3. 3Run the match. Rows carrying a cert number or your own eBay item number are linked without asking.
  4. 4Accept the resemblance groups. Each group says the rule that produced it, and you can uncheck any row before accepting the block.
  5. 5Settle the ambiguous rows one at a time. These are rows that could be two of your cards, or two rows that want the same card.
  6. 6Settle the rows that match nothing in the table. It shows each row exactly as it will land (name, year, set, number, parallel, grade, cert, cost, sale); fix any cell in place and re-check matches. Keep all of them in one click, tick some and keep or leave out the selection, or work a row by hand: Keep, Choose a card…, or Leave out.
  7. 7Use "Choose a card…" on any row you can place yourself. It searches your own cards and overrules the match.
  8. 8Record the purchases. Nothing is written until this step. Tick Skip the purchases to bring in just the cards (and any sales on the rows) and record nothing you paid.
  9. 9Read the receipt. It says where everything went: new cards under Cards → Awaiting photos (not in a batch, no scan used), purchases under Purchases, sales under Sales. Then take the next sheet or another file. A sale that is not on the sheet is attached later from Sales → No card attached.

How many purchases you get

Your data decides. If your file has an order number, rows sharing one become a single purchase. Otherwise CardZen creates one purchase for each combination of date, seller and source in your file, so a sheet with a date on every row becomes the separate buys you actually made, and a sheet where every row shares one date becomes the one lot you actually bought. There is no import mode to choose.

One checkbox on the last step collapses them into a single purchase if you disagree. Rows with no date of their own use the date shown, which starts at the first of the current month.

Cost is split across the purchase

Each purchase holds the total of its rows, split across the cards linked to it. Change a purchase later and its cards re-split immediately.

Rows that match nothing

A row describing a card CardZen has never seen is reported, never dropped. Keep it and the money is recorded as a purchase, and the card is created as a placeholder waiting for a photo. It stays out of your Cards list until you photograph it, cannot be listed without a real photo, and uses no scan credits.

A row with no cost is kept the same way: its card is created and no purchase is written, so it shows under Without cost. If nothing you mapped identifies a card, CardZen warns you before matching, because every row would land here.

You can also leave a row out. Nothing forces you to resolve every row, and the ones you skip stay available for a later file.

What CardZen will not do

  • It never applies a match on a confidence score. Only exact identifiers link on their own.
  • It never treats the item number you bought from as one of your cards.
  • It never links one card to two rows. If two rows want the same card, both are held back for you to settle, because a second cost would double that card's cost basis.
  • It never gives a cost to a card that already has one, even when you pick that card by hand.
  • No AI reads your file. Column matching is a dictionary of header names and card matching is direct field comparison.

Related guides