Take stablecoins without a public sales feed

Customers pay in USDC as usual. Your daily sales stay off the block explorer.

Watch the demo
store wallet
inbound
visibility
08:12
2 items
86.00 USDC
PUBLIC
08:40
repeat customer
212.00 USDC
PUBLIC
09:03
wholesale order
1,940.00 USDC
PUBLIC
09:15
via Curvy
hidden
SHIELDED
Rows 1–3: anyone can read them. Row 4: nobody can.
The problem

What a competitor can chart today

Daily sales, one store wallet public today
Mon Tue Wed Thu Fri Sat Sun

USDC, thousands per day

Daily sales, one store wallet with Curvy

Nothing to chart

The payments aren’t linkable to you.

Anyone with the address can draw this. Values are illustrative.

Customer side

What your customer sees

Three screens. No account and no browser extension. The private part happens on your side.

Example screens
  1. your site

    Linen shirt

    86.00 USDC

    Pay by card Pay with USDC or USDT

    01 One more button at checkout

  2. hosted checkout

    Amount due

    86.00 USDC

    NetworkArbitrum
    Pay withUSDC
    Pay from wallet

    02 Pay from the wallet they have

  3. confirmation

    Payment received

    order #1042

    03 Done. No account, no extension

An example of what your customer sees. Not a live checkout.

On the public record

What a store wallet leaks

All of it is readable from one public address, by anyone, for as long as the chain exists.

  • Daily sales Sum the transfers, get your revenue.
  • Order size Basket size, and every promo’s effect.
  • Best customers Repeat and wholesale buyers, easy to poach.
  • Seasonality When you sell, and when you don’t.
Payment flow

How it works

  1. Payment request Created
    ref
    order #1046
    amount
    128.00 USDC

    01

    Create a request

    Your server, one per order

  2. Payment request Paid
    ref
    order #1046
    amount
    128.00 USDC
    from
    customer wallet

    02

    Customer pays

    From the wallet they have

  3. Payment request Shielded
    ref
    order #1046
    amount
    128.00 USDC
    from
    customer wallet
    to
    hidden

    03

    Shielded on arrival

    Fresh address, every time

  4. Payment request Confirmed
    ref
    order #1046
    amount
    128.00 USDC
    from
    customer wallet
    to
    hidden

    04

    Order confirmed

    Matched by reference

  • No customer account
  • Hosted checkout
  • USDC + USDT on Arbitrum
  • From $0.50
A Paris wine and coffee shop front in 1924, crates and prices stacked on the pavement
Eugène Atget, a shopfront in Paris, 1924. Every price chalked up in the window, for anyone walking past.
Visibility

Who sees what

The payer’s own transfer is always public.

who The payment Who got paid Your sales
The public Can see Hidden Hidden
You Can see Can see Can see
Your accountant Can see Only if you share your viewing key Only if you share your viewing key
sees it hidden only if you share the key
Integration

What changes in your stack

Nothing is replaced. Curvy is one more option at checkout, next to what you already take.

Today

Your checkout

Cards
Wallet pay

With Curvy

Your checkout

Cards
Wallet pay
Curvy Payments new

Your backend: two SDK calls, create and confirm

Practicalities

But what about…

  • Refunds

    A new payment back to the customer, from your own process.

  • Tax and accounting

    Your accountant reads every payment with the viewing key.

  • Compliance

    Incoming funds are screened before they’re shielded.

  • Custody

    You hold the keys. Curvy can’t move your funds.

  • Chargebacks

    None. Onchain payments are final.

  • Customers without USDC

    Keep your other methods. This is one more option.

Fit check

Is it right for you?

Good fit if

  • Your customers pay, or ask to pay, in USDC or USDT
  • Your revenue or customer list is sensitive
  • You’re happy to receive stablecoins, not fiat
  • You can add a server-side call to checkout

Not yet if

  • You need fiat paid into your bank automatically
  • You need chains other than Arbitrum
  • Your customers pay in Bitcoin or other coins
  • You need a no-code store plugin today
Trust

Built to be checked

Backed by Ethereum FoundationStarknet FoundationArbitrum FoundationLI.FI
FAQ

Questions

Does it replace my payment provider?

No. It adds stablecoins as one more option at checkout. Cards and everything else stay with your current provider.

Does it work with my store platform?

It integrates through a server-side SDK, so it fits custom and headless stores. On a hosted store platform, talk to us about your setup.

Is the customer’s payment hidden?

No. Their transfer is public. What it doesn’t show is that it went to your store.

Which stablecoins are supported?

USDC and USDT, settled on Arbitrum. The minimum payment is $0.50, and fees are taken from the payment.

Add stablecoins. Keep your sales private.

Tell us how you take payments today, and we’ll show you where Curvy fits.

Watch the demo
On a call, we go through
  • Your payment flow, step by step
  • What stays visible, and to whom
  • How the SDK fits your stack
  • Your compliance questions