REST API · OAuth 2.0 client-credentials

The API behind account, payment & client operations.

Onboard clients, open and close IBAN accounts, move RON domestically or send cross-border transfers, and manage client records — one typed REST integration, no bank picker required.

Supports RON · EUR · USD · GBP — domestic transfers in Romania, foreign transfers worldwide via SWIFT/BIC
What you can build

Every operation the API exposes — nothing it doesn't.

Grounded in the real payment integration: account lifecycle, domestic & cross-border payments, and full client management.

/v1/accounts

Account operations

Onboard via the bank, open and close IBAN accounts, and check balance & currency in real time.

  • register & redirect
  • open / close account
  • balance + currency
/v1/payments

Domestic & foreign payments

Move RON within Romania, or send cross-border transfers abroad with beneficiary bank details — plus same-client transfers.

  • domestic (RON)
  • foreign (SWIFT/BIC)
  • same-client transfer
/v1/clients

Client management

List, create, update, and remove the clients registered against your platform.

  • list / get by id
  • create & update
  • delete
Developer experience

One REST API, OAuth 2.0 client-credentials auth

Typed JSON request bodies over a single banking-platform integration — resources in the path, params in the body. Copy, paste, ship.

# Fetch an account by IBAN — no body, resource in the path
curl "https://api.banqrail.com/v1/accounts/RO49AAAA1B31007593840000" \
  -H "Authorization: Bearer $TOKEN"
# Create a domestic RON payment — params sent as a JSON body
curl -X POST "https://api.banqrail.com/v1/payments/domestic" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "debtor":    { "client_id": "03254", "iban": "RO49AAAA1B31007593840000" },
    "creditor":  { "client_id": "53685", "iban": "RO15RNCB0614170408860001" },
    "amount":    1000.50,
    "currency":  "RON",
    "reference": "Payment for services"
  }'
# Register a client — JSON body, POST to the collection
curl -X POST "https://api.banqrail.com/v1/clients" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "client_id": "BQ-2201",
    "name":      "Acme GmbH",
    "email":     "ops@acme.com"
  }'
Operational by default

Watch every payment settle in real time

Terse, color-coded status — settled, processing, failed — the way a payments console should read.

PMT-98241 RO49AAAA1B31007593840000 1,000.50 RON SETTLED
PMT-98242 DE89370400440532013000 2,400.00 EUR PROCESSING
PMT-98243 GB29NWBK60161331926819 750.00 GBP SETTLED
PMT-98244 RO15RNCB0614170408860001 320.00 RON FAILED

Ship your first integration today

Get sandbox credentials, integrate in an afternoon, and go live against real banking rails.

Get API access Read the docs