- Create a manual bank account.
- Push one transaction into it.
- Read the transaction back with its categorization.
- Read the resulting P&L line.
write API key. See Authentication if you don’t have one yet.
1. Create a bank account
externalId keeps it idempotent.
2. Push a transaction
Send one Figma subscription charge on that account.49.99, not -49.99: positive is money out. See Conventions.
Re-running this exact call is a no-op. txn-e2e-001 is your stable id, so Cherry will match and dedupe.
3. Read it back, categorized
Categorization runs asynchronously and usually completes within a minute or two. Poll the transaction untilcategory is populated.
4. See it on the P&L
The same categorization drives your statements. Pull August’s profit and loss:Software & Subscriptions line under expenses includes your $49.99 charge. The figures here come from the same generator the Cherry app uses, so what you see in the API matches the product exactly.
What you just did
- Cherry took a raw bank transaction and mapped it to a ledger account (
6110). - It booked a journal entry against the checking account you created in step 1.
- The entry rolled into the P&L for August without any extra call.
Where to go next
- Push your own transactions covers batching, large imports, and the full idempotency rules.
- Connect an agent over MCP exposes the same pipeline as tools for Claude or ChatGPT.
- The API Reference tab has every endpoint used above with the full request and response schemas.