ohmyfin
v1.0.0
Published
Official Node.js SDK for Ohmyfin API - SWIFT transaction tracking, validation, and SSI data (previously known as TrackMySwift)
Maintainers
Readme
Ohmyfin Node.js SDK
Official Node.js SDK for the Ohmyfin API - SWIFT transaction tracking, validation, and correspondent banking data.
Ohmyfin (previously known as TrackMySwift) provides real-time SWIFT payment tracking, transaction validation, and Standard Settlement Instructions (SSI) data for financial institutions and businesses.
Features
- Transaction Tracking - Track SWIFT payments in real-time using UETR or reference
- Payment Validation - Validate transactions before sending (BIC, IBAN, sanctions)
- SSI Data - Access Standard Settlement Instructions and correspondent banking data
- Status Updates - Report transaction status (for financial institutions)
Installation
npm install ohmyfinQuick Start
Get your API key at https://ohmyfin.ai/for-banks
const Ohmyfin = require('ohmyfin');
const client = new Ohmyfin({
apiKey: 'your-api-key'
});
// Track a transaction
const result = await client.track({
uetr: '97ed4827-7b6f-4491-a06f-b548d5a7512d',
amount: 10000,
date: '2024-01-15',
currency: 'USD'
});
console.log(result.status); // 'success', 'in progress', 'rejected', etc.API Reference
Constructor
const client = new Ohmyfin({
apiKey: 'your-api-key', // Required - get yours at https://ohmyfin.ai/for-banks
baseUrl: 'https://ohmyfin.ai', // Optional
timeout: 30000 // Optional - request timeout in ms
});track(params)
Track a SWIFT transaction by UETR or reference.
const result = await client.track({
uetr: '97ed4827-7b6f-4491-a06f-b548d5a7512d', // or use 'ref'
amount: 10000,
date: '2024-01-15',
currency: 'USD'
});Response:
{
status: 'in progress', // 'success', 'rejected', 'on hold', 'unknown'
lastupdate: '2024-01-15',
details: [
{
id: 0,
bank: 'JP MORGAN CHASE',
swift: 'CHASUS33',
status: 'success',
reason: '',
route: 'confirmed'
}
],
limits: { daily: 100, monthly: 1000, annual: 10000 }
}validate(params)
Validate a transaction before sending.
const result = await client.validate({
beneficiary_bic: 'DEUTDEFF',
currency: 'EUR',
beneficiary_iban: 'DE89370400440532013000',
correspondent_bic: 'COBADEFF', // Optional
sender_bic: 'CHASUS33' // Optional
});Response:
{
beneficiary_bic: { status: 'ok' },
beneficiary_iban: { status: 'ok' },
correspondent_bic: {
status: 'warning',
details: 'Not the preferred correspondent'
},
avg_business_days: 1,
available_correspondents: [
{ corresBIC: 'COBADEFF', is_preferred: true }
]
}getSSI(params)
Get Standard Settlement Instructions for a bank.
const ssi = await client.getSSI({
swift: 'DEUTDEFF',
currency: 'EUR'
});Response:
{
correspondents: [
{
id: 1,
bank: 'COMMERZBANK AG',
swift: 'COBADEFF',
currency: 'EUR',
account: '400886700401',
is_preferred: true
}
],
currencies: ['EUR', 'USD', 'GBP']
}change(params)
Report transaction status updates (for financial institutions).
await client.change({
uetr: '97ed4827-7b6f-4491-a06f-b548d5a7512d',
amount: 10000,
date: '2024-01-15',
currency: 'USD',
status: 'success', // 'in process', 'success', 'rejected', 'on hold'
role: 'correspondent' // 'originator', 'beneficiary', 'intermediary', 'correspondent', 'other'
});Error Handling
const { OhmyfinError } = require('ohmyfin');
try {
await client.track({ ... });
} catch (error) {
if (error instanceof OhmyfinError) {
console.log(error.statusCode); // HTTP status code
console.log(error.errors); // Validation errors
}
}TypeScript Support
This package includes TypeScript definitions.
import Ohmyfin, { TrackResult, ValidateResult } from 'ohmyfin';
const client = new Ohmyfin({ apiKey: 'your-key' });
const result: TrackResult = await client.track({ ... });Links
- Website: https://ohmyfin.ai
- API Documentation: https://ohmyfin.ai/profile/api (available after approval)
- Get API Key: https://ohmyfin.ai/for-banks
- Support: hello [at] ohmyfin.ai
About Ohmyfin
Ohmyfin (previously known as TrackMySwift) is a software platform providing transaction tracking, validation, and correspondent banking reference data. We serve individuals, businesses, and financial institutions worldwide.
We do not provide any financial services.
Trademarks
Ohmyfin is a registered trademark of Ohmyfin Limited. Trademark application no. UK00004317799. All rights reserved.
SWIFT, BIC, UETR, and related terms are trademarks owned by S.W.I.F.T. SC, headquartered at Avenue Adele 1, 1310 La Hulpe, Belgium. Ohmyfin is not affiliated with S.W.I.F.T. SC. Other product and company names mentioned herein may be trademarks of their respective owners.
License
MIT License - see LICENSE file.
