Install
$ agentstack add skill-openaccountant-skills-wise-import ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
Wise Import
Overview
Import transaction data from Wise (formerly TransferWise) CSV statement exports. Handles multi-currency accounts, conversion fees, and international transfers. Maps Wise's transfer-centric format into Open Accountant transactions.
Wilson Tools Used
transaction_search— check for existing Wise transactions to prevent duplicatescategorize— assign categories to imported Wise transactionsexport_transactions— export reconciled Wise data
Column Mapping
| Wise CSV Column | Open Accountant Field | Notes | |---|---|---| | TransferWise ID or ID | reference_id | Unique transfer ID for dedup | | Date | date | Completion date | | Description | description | Transfer description / recipient | | Amount | amount | Transaction amount (signed) | | Currency | currency | Source currency ISO code | | Running Balance | — | Not stored | | Exchange Rate | notes | Stored in notes for reference | | Total fees | amount (separate row) | Wise fee (negative = expense) |
Workflow
- Ask the user for the Wise CSV file path and which currency account(s) to import.
- Parse the CSV and validate Wise column headers.
- Process each row:
- Incoming transfers: positive amount, category "Income:Transfer"
- Outgoing transfers: negative amount, category based on description
- Conversion fees: separate negative entry, category "Fees:Currency Conversion"
- Card payments: negative amount, categorize by vendor
- For multi-currency transfers:
- Record the transaction in the source currency
- Store the exchange rate and target amount in notes
- Create the fee entry separately (Wise charges a conversion fee distinct from the exchange rate)
- Deduplicate using Wise transfer ID.
- Preview import summary per currency: inflows, outflows, fees, net.
- Insert transactions and confirm.
Without Wilson
To work with Wise exports manually:
Downloading from Wise
- Log in at wise.com
- Click on the relevant currency account (e.g., USD, EUR, GBP)
- Go to Statements (right side or under account menu)
- Select the date range
- Choose CSV format (also available: PDF, XLSX)
- Click Download
- Repeat for each currency account you want to import
Manual Processing in a Spreadsheet
- Open the CSV in Google Sheets or Excel.
- Identify transaction types by the Description and Amount sign:
- Positive amounts = money received (income, incoming transfers)
- Negative amounts = money sent (expenses, outgoing transfers, card payments)
- Separate fees: Wise embeds fees in certain rows. Look for rows with "fee" in the description or where the Description references a parent transfer.
- Some Wise CSVs have a
Total feescolumn — use this directly. - If not, fees appear as separate rows with descriptions like "Conversion fee" or "Transfer fee."
- Multi-currency handling:
- If you have multiple currency accounts, keep them in separate sheets or add a "Currency" filter.
- Do NOT sum amounts across currencies without converting first.
- To convert:
=Amount * ExchangeRate(use the rate from the Wise statement, not a live rate).
- Summary formulas (per currency):
`` Total Inflows: =SUMIFS(Amount, Amount, ">0", Currency, "USD") Total Outflows: =ABS(SUMIFS(Amount, Amount, "<0", Currency, "USD")) Total Fees: =ABS(SUMIFS(TotalFees, Currency, "USD")) Net: =Inflows - Outflows ``
- Reconcile: The running balance in the last row should match your Wise account balance.
Alternative: Wise API
For developers, Wise has a public API at api.transferwise.com that can pull statements programmatically. Requires an API key from your Wise business account settings.
Important Notes
- Wise CSV format varies slightly between personal and business accounts. Business accounts include additional columns like
Batch IDandReference. - Multi-currency: each currency account exports separately. If you converted USD to EUR, the debit appears in your USD statement and the credit in your EUR statement.
- Wise fees are typically lower than traditional banks (0.3-2% depending on corridor) but they appear as separate line items, not embedded in the exchange rate.
- "Balance cashback" rows are small interest payments from Wise — import these as "Income:Interest".
- Wise card transactions may appear with temporary merchant descriptions that update after settlement. If you import early, descriptions may change.
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: openaccountant
- Source: openaccountant/skills
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.