AUD virtual accounts are live. Collect from Australian bank transfers, settle in USDC.See how →
locals
Products
Virtual accounts Payouts Cards
Platform
Coverage Developers Company Talk to us
LiveAUD virtual accounts in production

Local rails.
Global money.

Give every customer local bank details, pay out in their currency and issue cards they can spend anywhere. One API, settled in USDC.

KYC and KYB built in Signed webhooks Every deposit reconciled
app.locals.money/routes/route_3f9a

Harbour & Co

AUD → USDC · Polygon
Pending
Settled to wallet this month 16,275.40USDC
+8,137.50
Account nameHarbour & Co
BSB000-000
Account1234 5678
  • Bank transfer received09:41:07 · ref HC-2210
    A$12,500.00
  • Converting at locked rate1 AUD = 0.6510 USDC
    8,137.50 USDC
  • Settled to wallettx 0x5e0c…a7d4
    Completed
transfer.completed200 OK
Payout delivered₱182,400.00 to a bank in Manila
locals
•••• 4821DEBIT · USDC
2currencies live for local collection today
26payout currencies in early access
1integration for accounts, payouts and cards
0bank accounts you need to open yourself

Locals gives platforms local bank details, local payouts and cards in the markets their customers live in, with verification built in, one status model across every rail and settlement in USDC.

Why teams build on Locals

Verified before it moves

KYC and KYB happen before any account opens. Reuse the checks you already run.

Local details, local rails

Customers pay the way they always do, from their own bank, in their own currency.

Settled in USDC

Every deposit converts at a locked rate and lands in your wallet, onchain and traceable.

One status model

The same states and the same webhooks in every market. Build the flow once.

One API, one contract

Accounts, payouts and cards on the same customer, the same keys and one agreement.

How it works

From bank transfer to wallet in four calls.

The same lifecycle in every market. Each step returns a status you can show your customer and a webhook you can act on.

01

Verify the customer

Reuse the KYC you already hold, or send a hosted check.

POST /v1/customers
02

Open a route

Currency in, stablecoin out. Local bank details come back.

POST /v1/routes
03

Get paid locally

The customer pays from their own bank. We match and convert.

route.deposit.received
04

Settle or pay out

USDC lands in your wallet, or goes back out as local currency.

transfer.completed
Developers

An API you can read in an afternoon.

Predictable resources, idempotent writes and one status model across every market. Test the whole flow in sandbox before you touch real money.

  • Idempotency on every writeRetry safely. The same key returns the same result.
  • Signed webhooksVerify every event before you credit a balance.
  • Sandbox with simulated depositsTrigger a bank transfer and watch it settle, end to end.
Explore the API →
1curl https://api.locals.money/v1/routes \
2  -H "Authorization: Bearer $LOCALS_KEY" \
3  -H "Idempotency-Key: $(uuidgen)" \
4  -d '{
5    "customerId": "cus_8Hq2Lm",
6    "source": { "currency": "AUD" },
7    "destination": { "currency": "USDC", "chain": "polygon" }
8  }'
1const res = await fetch('https://api.locals.money/v1/routes', {
2  method: 'POST',
3  headers: {
4    Authorization: `Bearer ${process.env.LOCALS_KEY}`,
5    'Idempotency-Key': crypto.randomUUID(),
6  },
7  body: JSON.stringify({
8    customerId, source: { currency: 'AUD' }, destination,
9  }),
10});
1res = requests.post(
2    "https://api.locals.money/v1/routes",
3    headers={"Authorization": f"Bearer {LOCALS_KEY}",
4             "Idempotency-Key": str(uuid.uuid4())},
5    json={"customerId": customer_id,
6          "source": {"currency": "AUD"},
7          "destination": destination},
8)
POST /v1/routes · sandbox201 Created · route_3f9a
Webhook eventshttps://you.example/hooks
    Coverage

    Money in. Money out. Where your customers are.

    Collect on local rails, pay out in local currency and spend by card, all from the same balance. Only live markets are marked live. Updated .

    Live Coming soon Early access
    Collect locally

    Bank details in the markets your customers live in.

    Your customer pays from their own bank, on their local rail. The deposit is matched to them and settles to your wallet in USDC.

    Explore virtual accounts → Markets
      Pay out locally

      USDC in. Local currency out.

      Quote the payout, fund the exact amount, and the money arrives in a local bank account. Early access across five regions.

      Explore payouts → Regions
        Who it is for

        Different products. One way to move money.

        Locals sits behind your product. Your customers see your brand, your app and local bank details that just work.

        Compliance

        Regulated rails. Nothing hidden.

        Banking, conversion and card issuing run through licensed partners in each market. You get one contract and one integration.

        Verification built in

        KYC for individuals and KYB for businesses, before any account is opened.

        Every deposit traced

        Each payment is tied to a customer and a route, from bank reference to transaction hash.

        Source of funds controls

        Allow-listed sending accounts where the market requires it. Money from any other account is returned to the sender.

        Licensed partners

        Regulated banks, payment institutions and card issuers in every market we list as live.

        FAQ

        Questions, answered.

        Do I need my own banking licence?

        No. Accounts, conversion and payouts run through our licensed partners. You integrate once with Locals and keep your brand in front of your customers.

        Which stablecoins and chains do you settle to?

        USDC today, on the chains listed for each route in the docs. EURC is planned for euro accounts. Ask us if you need another asset or chain.

        How long does it take for a deposit to settle?

        It depends on the local rail the sender uses. Instant rails settle in minutes; batch rails can take up to one business day. Every step is reported by webhook.

        Can I use the KYC I already have?

        Yes. If you already verify your users, you can create Locals customers from that verification. Otherwise, send them our hosted check and get the result by webhook.

        Can I test before going live?

        Yes. Sandbox keys give you the full API, including simulated deposits, so you can build and test the whole flow without real money.

        Go local in every market you serve.

        Tell us where your customers are. We will tell you what is live, what is next, and how fast you can launch.