API Live โ€” v1.0

Build with Serbia's
Banking Infrastructure

One API key. Every Serbian bank. Account data, transactions, identity verification, and payment initiation โ€” production-ready, built for Serbia.

6 Serbian banks connected
6 API products
1 API key to connect them all
< 5 min Time to first API call

Connected to Serbia's leading banks

Raiffeisen
Erste
AIK Banka
Intesa
OTP Banka
UniCredit

Everything you need to build
with financial data

Six API products that give your app complete access to Serbian bank accounts โ€” from real-time balances to enriched transaction history.

Transactions

Full transaction history with cursor-based sync. Merchant names are automatically enriched โ€” raw codes become clean, readable names.

Learn more

Balance

Real-time account balances across all connected accounts. Current and available balances, updated whenever your user's bank reports changes.

Learn more

Identity

Verified account holder information โ€” name, phone, email, and address โ€” directly from the bank. Perfect for KYC and onboarding flows.

Learn more

Auth

Verified IBAN and BIC codes for payment initiation. Confirm account ownership before sending or receiving funds.

Learn more

Recurring

Automatically detect recurring payments โ€” subscriptions, rent, salary, utility bills. Categorized and tracked across all connected accounts.

Learn more

Webhooks

Real-time event notifications. Get alerted when transactions sync, connections change, or auth completes โ€” no polling required.

Learn more

Built for developers
who ship fast

Clean REST API, predictable responses, detailed error codes. Get from zero to production in a single afternoon.

API Reference Try Link Widget
fetch-transactions.sh
# Fetch enriched transactions
curl https://api.opendinar.com/accounts/{account_id}/transactions \
  -H "Authorization: Bearer $OPENDINAR_KEY" \
  -H "Content-Type: application/json"

# Response โ€” merchant names auto-enriched:
# {
#   "amount": -2450.00,
#   "currency": "RSD",
#   "merchant": "Amazon",
#   "category": "Shopping",
#   "date": "2026-04-03"
# }
fetch-transactions.js
// Fetch enriched transactions
const response = await fetch(
  'https://api.opendinar.com/accounts'
    + '/{account_id}/transactions',
  {
    headers: {
      'Authorization': `Bearer ${apiKey}`,
      'Content-Type': 'application/json'
    }
  }
);

const { transactions } = await response.json();

// Each transaction is enriched
// "AMZN*5G7K2" โ†’ "Amazon"
console.log(transactions[0]);
// { amount: -2450.00, currency: "RSD", merchant: "Amazon" }
fetch_transactions.py
import requests

headers = {"Authorization": f"Bearer {api_key}"}
url = f"https://api.opendinar.com/accounts/{account_id}/transactions"

res = requests.get(url, headers=headers)
transactions = res.json()["transactions"]

# Each transaction is enriched automatically
print(transactions[0])
# {"amount": -2450.00, "currency": "RSD",
#  "merchant": "Amazon", "category": "Shopping"}

Three steps to financial data

No bank partnerships needed. No months of integration. Just an API key and a few lines of code.

1

Get your API key

Sign up on the dashboard, create a project, and get your sandbox API key in under a minute.

2

User connects their bank

Embed our Link Widget in your app. Your users select their bank and securely authorize access.

3

Access financial data

Call our API to read balances, transactions, identity, and more. Clean, structured, ready to use.

Infrastructure you can rely on

Bank-grade security, real-time data, and intelligent enrichment โ€” built specifically for the Serbian financial ecosystem.

Transaction Enrichment

Raw bank codes are automatically cleaned and enriched. Every transaction gets a human-readable merchant name, category, and logo โ€” out of the box, no extra work needed.

Recurring Detection

Subscriptions, rent, salary, and utility bills are automatically identified and tracked. Build budgeting tools, spending insights, or cash flow projections with zero manual tagging.

Real-Time Webhooks

No polling. Webhooks fire the moment something changes โ€” new transactions, completed auth, revoked connections. Every payload is HMAC-signed for verification.

Bank-Grade Security

HMAC-signed webhook payloads, hashed API keys, rate limiting, and encrypted connections. Your users' financial data is protected at every layer.

Built for every fintech vertical

Whether you're building a budgeting app, a lending platform, or a payroll tool โ€” OpenDinar gives you the bank data layer you need.

Personal Finance

Build budgeting apps, spending trackers, and financial dashboards. Pull transactions, detect subscriptions, and categorize spending automatically.

Transactions Balance Recurring

Lending & Credit

Assess creditworthiness with real bank data. Verify income, analyze cash flow, and make smarter underwriting decisions โ€” faster than traditional methods.

Transactions Identity Recurring

Accounting & Invoicing

Auto-import bank transactions into accounting software. Match invoices to payments, reconcile accounts, and eliminate manual data entry.

Transactions Balance Auth

Payroll & HR

Verify employee bank accounts for direct deposit. Confirm IBAN ownership, validate account details, and set up salary payments with confidence.

Auth Identity Balance

Identity Verification

Verify customer identity using bank-held data. Confirm names, addresses, and account ownership for KYC compliance โ€” no document uploads needed.

Identity Auth

Payments

Initiate bank-to-bank payments with verified IBANs. Reduce payment failures, lower transaction costs, and move money faster than card rails.

Auth Balance Webhooks

One afternoon vs. months of work

Building direct bank integrations yourself means months of negotiations, maintenance, and compliance overhead. OpenDinar collapses that into a single API key.

โœ• Without OpenDinar
โœ• Months of bank partnership negotiations
โœ• 6 separate bank integrations to build and maintain
โœ• Different auth flows and formats per bank
โœ• You handle user consent, revocation, and compliance
โœ• Breaking changes every time a bank updates their API
โœ• Raw, unreadable transaction codes to parse yourself
โœ“ With OpenDinar
โœ“ API key in 60 seconds, sandbox immediately
โœ“ One unified API โ€” all 6 Serbian banks covered
โœ“ One Link Widget handles all bank auth flows
โœ“ Consent, revocation, and audit trails built in
โœ“ We maintain all bank integrations โ€” you just call the API
โœ“ Enriched merchant names and categories out of the box

Start building in minutes

Get your API key, test in sandbox mode, and go live when you're ready. No sales calls, no contracts.

quickstart.sh
# 1. Get your API key from the dashboard
export OPENDINAR_KEY="od_test_sk_..."

# 2. List connected accounts
curl https://api.opendinar.com/accounts \
  -H "Authorization: Bearer $OPENDINAR_KEY"

# 3. That's it. You're connected.