App Overview
The Pristine Card Co admin app is a mobile-first progressive web app (PWA) for managing your card inventory, processing sales, and executing trades. Access it at admin.pristinecardcompany.com.
Airtable Data Layer
All your inventory, sales, trades, and show data is stored in Airtableβa powerful spreadsheet-database hybrid. The admin app provides a simplified interface for common workflows, but Airtable is your source of truth for all data.
Accessing Airtable
Open your Airtable base directly at: airtable.com/appcTuMjiUTAgsfeG
Data Model Overview
Your data is organized into four interconnected tables:
Inventory Table
The core table containing every card and product. Each row represents one item (or quantity of identical items).
| Key Field | Purpose |
|---|---|
| Name | Card/product name (auto-filled from search or manual entry) |
| cost / total_cost | What you paid. total_cost = cost + grading_cost |
| market_value | Current market value (from TCGplayer) |
| disposition | Status: In Stock, Sold, Traded, Gifted |
| origin | How you acquired it: Purchase or Trade |
| is_graded | Checkbox for slabbed cards |
| grade / grading_company | PSA 10, BGS 9.5, CGC 9, etc. |
| Transactions | Linked record to Transactions table (when sold) |
Transactions Table
Every sale creates a transaction record. Tracks revenue, fees, and profit per item.
| Key Field | Purpose |
|---|---|
| transaction_id | Auto-generated unique ID (e.g., TXN-1735123456789) |
| transaction_type | Payment method: Cash, Venmo, eBay, FB, IG, Giveaway |
| gross_sale | Total amount before fees |
| platform_fee | eBay/FB/IG fees deducted |
| tax_collected | Sales tax collected (for platforms) |
| inventory | Link to the sold Inventory item |
| show | Link to Shows table (if sold at a show) |
| source_trade | Link to Trades (if cash came from a trade) |
Trades Table
Records card-for-card exchanges. Tracks what you gave, what you received, and any cash difference.
| Key Field | Purpose |
|---|---|
| trade_id | Auto-generated unique ID (e.g., TRD-1735123456789) |
| given_cards | Links to Inventory items you traded away |
| received_cards | Links to new Inventory items you received |
| given_market_total | Total market value of cards you gave |
| received_market_total | Total market value of cards you received |
| cash_on_top | Cash difference (positive = you received) |
| trader_name | Who you traded with (optional) |
When to Use Airtable Directly
Card Intake
Use the Intake tab to add new cards to your inventory. Search for Pokemon cards by name or add items manually for non-Pokemon products.
Adding a Pokemon Card
Manual Entry (Non-Pokemon)
For sealed products, accessories, or cards not in the database, use the "Manual Entry" button:
Field Reference
| Field | Description | Options |
|---|---|---|
| Purchase CostRequired | What you paid for the card. Used for profit calculations. | Numeric value |
| LanguageOptional | Card language variant. | English, Japanese, Korean, Chinese, German, French, etc. |
| ConditionOptional | Card condition for raw cards. | NM, LP, MP, HP, DMG |
| Print RunOptional | Print variant (vintage cards). | 1st Edition, Shadowless, Unlimited |
| FinishOptional | Card finish type. | Holo, Reverse Holo, Normal |
| GradeOptional | Graded card score (when Graded? is ON). | 10, 9.5, 9, 8.5, 8, etc. |
| Grading CompanyOptional | Who graded the card. | PSA, BGS, CGC, SGC, ACE, TAG, Other |
Inventory Management
The Inventory tab displays all cards currently in stock. Use filters and search to find specific cards, and tap any card to edit its details.
Inventory Stats
The stats bar at the top shows key metrics:
- Total Items: All cards and products in inventory
- Graded: Number of slabbed cards
- Total Cost: Sum of all purchase costs (your investment)
Filtering Your Inventory
Multiple filter options help you find exactly what you're looking for. Filters can be combined for precise searches.
| Filter | Type | Options |
|---|---|---|
| Search | Text input | Search by card name or set name. Instant, case-insensitive. |
| Category | Pill buttons | All, Singles (cards), Sealed (products) |
| Grading | Pill buttons | All, Raw (ungraded), Graded (slabbed) |
| Language | Dropdown | All Languages, English, Japanese, Chinese |
| Has Image | Dropdown | All, Has Image, No Image |
| Cost Range | Min/Max inputs | Filter by purchase cost (e.g., $10 - $100) |
Editing Cards
Tap any card in the list to open the Edit Modal. This lets you update details without going to Airtable.
Editable Fields Reference
| Field | Description |
|---|---|
| Image | Upload, replace, or remove the card photo. Images are auto-compressed. |
| Market Value | Current market value. Used for profit calculations and trade valuations. |
| Condition | Card condition: NM (Near Mint), LP (Light Play), MP (Moderate Play), HP (Heavy Play), DMG (Damaged). |
| Location | Where the card is stored: Suitcase 1, Suitcase 2, Vault X 2, Vault 2, Vault 3, Shelf, Office. |
| Notes | Free-form text for any additional information. |
Processing Sales
Use the Sales tab to record when you sell a card. The app tracks revenue, fees, and automatically calculates profit.
Recording a Sale
Payment Methods
| Method | Fees Tracked? | Best For |
|---|---|---|
| Cash | No fees | In-person sales at shows or local meetups |
| Venmo | No fees | Peer-to-peer sales, friends & family |
| eBay | Platform fee + tax | Online marketplace sales |
| Platform fee + tax | FB Marketplace or groups | |
| Platform fee + tax | IG Shop or DM sales | |
| Giveaway | No price | Gifts, donations, promotions |
Executing Trades
Trades involve exchanging cards. Use the Trades tab to record what you gave, what you received, and any cash difference.
Recording a Trade
Trade Percentage Explained
When receiving cards in trade, you typically pay less than market value. The trade percentage determines your cost basis:
- Market Value: $100 (what the card is worth)
- Trade %: 80%
- Your Cost Basis: $80 (what you "paid" in trade value)
Show Mode
When attending a card show or event, activate Show Mode to automatically link all sales and trades to that show for reporting.
Activating Show Mode
Why Use Show Mode?
- Track revenue and trades per event
- Generate show-specific reports
- Compare performance across shows
- One tap to link transactionsβno manual tagging needed