Coming Soon

Convert Bank Statements Between Any Format

MT940, CAMT.053, OFX, CSV, JSON — spec-compliant, privacy-first, sub-second conversions via a simple REST API.

Quick Start
curl -X POST https://api.finconvert.dev/v1/convert \
  -H "Authorization: Bearer fc_live_xxxxx" \
  -F "file=@statement.mt940" \
  -F "to=csv" \
  -o converted.csv
🔒
Privacy-first No data stored
Spec-compliant SWIFT & ISO 20022
Sub-second Average < 200ms

MT940 is being deprecated

SWIFT is sunsetting MT940 by 2027–2028, pushing banks to ISO 20022 (CAMT.053). Thousands of systems still depend on legacy formats. Migration is inevitable.

DIY Conversion

  • Weeks of parsing edge cases per format
  • Bank-specific variations in MT940 :86: fields
  • 200+ CAMT.053 fields, 10 levels of nesting
  • Ongoing maintenance as specs evolve

FinConvert API

  • One API call, any format in, any format out
  • Validated against SWIFT and ISO 20022 specs
  • Sub-second conversions, no data retained
  • New formats added regularly, zero effort for you

Supported Formats

Parse any input, format to any output. More formats added continuously.

MT940

SWIFT bank statement format. Line-based with :XX: tags.

Input ✓ Output — Soon

CAMT.053

ISO 20022 XML format. The modern standard for bank statements.

Input ✓ Output ✓

OFX

Open Financial Exchange. Supported by QuickBooks, Xero, Sage.

Input — Soon Output ✓

CSV

Universal spreadsheet format. Human-readable, easy to import.

Output ✓

JSON

Universal Transaction Model as JSON. Developer-friendly.

Output ✓

BAI2

US banking standard for corporate treasury.

Input — Soon Output — Soon

QIF

Quicken Interchange Format. Legacy accounting import.

Input — Soon Output — Soon

How It Works

Three steps. One API call. Any format.

📄 1

Upload

Send your bank statement file to the API. Format is auto-detected, or specify it explicitly.

⚙️ 2

Convert

Parsed into our Universal Transaction Model — a normalised, spec-compliant intermediate representation.

📥 3

Download

Receive the converted file in your target format. No data is stored — process and return.

Simple Integration

One POST request. Any language. Production-ready in minutes.

curl -X POST https://api.finconvert.dev/v1/convert \
  -H "Authorization: Bearer fc_live_xxxxx" \
  -F "file=@bank-statement.mt940" \
  -F "to=csv" \
  -o converted.csv

Built for Developers

Everything you need to integrate bank statement conversion into your product.

🔄

Multi-Format

MT940, CAMT.053, OFX, CSV, JSON — with more formats added continuously. One API for all.

🔒

Privacy-First

Files are processed in memory and never stored. No logs, no persistence, no data retention.

Sub-Second

Average conversion under 200ms. Optimised parsing with zero external dependencies.

Spec-Compliant

Every parser and formatter validated against official SWIFT and ISO 20022 specifications.

🔑

API Keys

Separate live and test keys. Granular usage tracking per key for full visibility.

📊

Usage Tracking

Real-time conversion counts, format breakdowns, and usage history via the dashboard.

Simple, Transparent Pricing

Pay for what you use. No hidden fees. Scale as you grow.

Free

For prototyping and small projects.

$0 /month

100 conversions/mo

  • All input & output formats
  • Auto-format detection
  • Community support
Join Waitlist
Most Popular

Pro

For growing products and teams.

$49 /month

5,000 conversions/mo

  • Everything in Free
  • Priority support
  • Usage analytics dashboard
  • Multiple API keys
Join Waitlist

Business

For high-volume applications.

$149 /month

50,000 conversions/mo

  • Everything in Pro
  • Dedicated support
  • Custom rate limits
  • SLA guarantee
  • Webhook notifications
Join Waitlist

Enterprise

Need more than 50K conversions/month? Custom volumes, dedicated infrastructure, and premium SLAs.

Contact Sales

Frequently Asked Questions

What formats does FinConvert support?
Currently, we support MT940 and CAMT.053 as input formats, and CSV, JSON, OFX, and CAMT.053 as output formats. That's 8 conversion paths today. BAI2, QIF, and more formats are coming soon.
Is my financial data secure?
Absolutely. FinConvert is privacy-first by design. Your files are processed entirely in memory and never written to disk or stored. No logs contain file contents. We process and return — nothing is retained.
How does pricing work?
You pay per conversion. Each API call to /v1/convert counts as one conversion. Parsing (/v1/parse) and detection (/v1/detect) are counted separately. The Free tier gives you 100 conversions/month at no cost.
What happens when SWIFT deprecates MT940?
That's exactly why FinConvert exists. When your bank switches from MT940 to CAMT.053, you don't need to rewrite your parsers. Just change the to parameter in your API call. Your downstream systems keep working with the same output format.
What's the file size limit?
The maximum file size is 10MB per request. This covers the vast majority of bank statements. If you need to process larger files, contact us about our Enterprise plan.
Do I need an API key?
Public endpoints like /v1/detect and /v1/formats work without authentication. Conversion and parsing require an API key, which you'll get when you sign up.
What are the rate limits?
Public endpoints: 30 requests/minute. Authenticated endpoints: 100 requests/minute. Business and Enterprise plans can have custom rate limits.
Can I self-host FinConvert?
Not currently. FinConvert runs as a managed API service deployed in London (EU). If you have specific data residency requirements, reach out about our Enterprise offering.

Ready to convert?

Join the waitlist to get early access, priority support, and a generous free tier when we launch.

No spam. Unsubscribe anytime. We'll only email you about launch updates.