Dinaria Connect · API + Portal

Global accounts
for your clients

Issue accounts in each client’s own name — USD (ACH · Wire · SWIFT) and EUR (SEPA · dedicated IBAN), plus LatAm local rails — with KYC/KYB, custody and compliance on our side. White-label: your clients see your product.

Client accounts · same name
USD ACH · Wire · SWIFT
EUR SEPA · IBAN dedicated
USDT · USDC Convertible balance
The model

Four verbs, one object

Everything hangs off a Customer: create it, verify it, then operate any enabled rail with the same four verbs.

Receive — client accounts
USD ACH · Wire · SWIFT
EUR SEPA · IBAN
PIX Exact-amount charge
Same name · held by the client
Markets & rails

A new market is never a new object

Adding a market adds an account currency, a charge type or a payout destination — the resources never change.

United States

USD virtual account — ACH · Wire · RTP · SWIFT

Europe

EUR virtual account — SEPA with a dedicated IBAN

Mexico

Standing CLABE + exact-amount SPEI charge + SPEI payout

Brazil

PIX charge (QR) + payout to any PIX key

Stablecoins

USDT/USDC deposit address + conversion + on-chain payout

Local rails

Pesos, soles and bolivianos over local rails, same model

The integration

From onboarding to payout in four calls

REST API with a full test mode (dk_test_), idempotency on every POST and signed webhooks. This is real v2 API code.

connect.dinaria.com/v2
# 1 — Create the customer
curl -X POST https://connect.dinaria.com/v2/customers \
  -H "Authorization: Bearer dk_test_..." \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{ "type": "individual", "reference": "user_1001",
        "terms_accepted": true,
        "individual": { "first_name": "Ana", "last_name": "Díaz" } }'

# 2 — Issue their USD account
curl -X POST https://connect.dinaria.com/v2/customers/cus_1a2/virtual_accounts \
  -d '{ "currency": "USD" }'

# 3 — Collect R$ 150 with a PIX QR
curl -X POST https://connect.dinaria.com/v2/customers/cus_1a2/charges \
  -d '{ "currency": "BRL", "amount": "150.00" }'

# 4 — Pay out USD 250 via ACH
curl -X POST https://connect.dinaria.com/v2/customers/cus_1a2/payouts \
  -d '{ "amount": "250.00", "currency": "USD",
        "destination": { "type": "bank", "method": "ach", "beneficiary": { ... } } }'
Full API reference →
  • 1 · Onboard

    The customer is created with its requirements in view; individuals are auto-submitted.

  • 2 · Issue the account

    A USD virtual account; virtual_account.activated fires when it’s live.

  • 3 · Collect in Brazil

    A PIX charge returns the QR; when paid it fires transaction.created.

  • 4 · Pay out

    A rail-typed payout; track it via payout.updated.

The platform

What comes built in

Compliance included

KYC/KYB, AML screening and requirements in one checklist — identity and rail enablement on the same object.

Real white-label

Via API inside your product, or via a portal under your brand. Dinaria stays behind, as infrastructure.

Full test mode

dk_test_ simulates the whole flow — verification, pay-ins, conversions — with no real money.

Signed webhooks

HMAC-SHA256 with an anti-replay timestamp, plus an events log to replay anything your endpoint missed.

Reconciliation by design

balance_transactions with per-currency running balances: close a month per currency against Dinaria’s books.

Your client holds the account

Same-name accounts: the account belongs to the end client — the product is yours, the infrastructure ours.

Who it’s for

Who builds on Connect

Fintechs, wallets & exchanges

International accounts and on/off-ramp embedded in your app.

PSPs & processors

Add currencies and rails to your stack without one provider per country.

Remittance companies

Every beneficiary receives into an account in their own name.

Marketplaces & platforms

Every seller or creator gets an account to collect foreign sales.

Exporters / importers

Collect and pay in USD/EUR with every operation auto-reconciled.

International payroll

Pay employees and contractors into each person’s own account.

FAQ

Connect FAQs

Who holds the accounts?

Your end client. Dinaria Connect issues same-name accounts: the USD or EUR account is in the name of the person or business you onboarded, with verified KYC/KYB. Your platform operates them via API or portal, white-label.

What do I need to integrate Connect?

An API key. You build the whole flow against test mode (a dk_test_ key): create customers, issue accounts, simulate pay-ins and test webhooks with no real money. A typical integration goes live in about two weeks.

Which rails and currencies are covered?

Standing accounts in USD (ACH, wire, RTP, SWIFT), EUR (SEPA with a dedicated IBAN) and MXN (CLABE); exact-amount collections via PIX in Brazil and SPEI in Mexico; balances and conversion across fiat and stablecoins (USDT/USDC); payouts to banks, PIX keys, CLABEs or blockchain addresses.

How does currency conversion work?

Three ways: on-demand conversion of a held balance (optionally quoted first), autoconvert on receive (every pay-in converts on arrival) and autoconvert on pay-out (fund a payout from a different held currency). Rates are all-in with the spread embedded — no separate fee line.

Scale your operations.

Let’s set up a demo and tailor your integration. Live in two weeks.

Contact

We'll talk this week

Tell us what you need to move, in which corridors and at what volume. We respond within 24 business hours.