Held by code. Checked in the real world.

PROOF
OVER
TRUST

You have crypto. They have cash. Neither of you wants to send first. Pact locks the crypto up, then checks PayPal itself to see the cash arrived — and lets go the second it does.

The code checks the payment itself · if nothing lands, you get your money back

The who-moves-first problem

Somebody
has to go
first.

Every deal between strangers has the same hole in it. You send your money and hope theirs turns up. They send theirs and hope yours does. Whoever goes first is the one who can get burned.

Crypto already has an answer: money held by code until both sides deliver. But code can only hold what it can see. The moment one side is a PayPal transfer, a bank deposit, or a gift-card balance, the code goes blind — and you are back to trusting someone to tell it what happened.

Pact's bet: let the code phone PayPal and look for itself, and there is nothing left for a middleman to do.

The standoff

ALICE HOLDS500 USDC
BOB HOLDS$500 PAYPAL
ALICE SENDS FIRSTBOB CAN VANISH
BOB SENDS FIRSTALICE CAN VANISH
PAY A MIDDLEMANTRUST THE MIDDLEMAN
USE A REPORTING SERVICETRUST THE SERVICE
••••••••••••••••••••••••••••••
EVERY ROW ENDS IN SOMEONE YOU HAVE TO TRUST

One deal, two kinds of money

What you can swap.

Pact works best when at least one side is crypto, because that is the side the code can genuinely hold on to. When neither side is, we tell you straight instead of pretending.

CRYPTO ⇄ CASHCORE

Sell USDC for a PayPal transfer

LOCKED UP · The USDC, locked by the code
CHECKED · The code reads your PayPal receipt itself
GIFT CARD ⇄ STABLECOINCORE

Turn an Amazon balance into USDC

LOCKED UP · The USDC, locked by the code
CHECKED · The code checks the card was actually claimed
CRYPTO ⇄ STABLECOINEASY

Crypto for crypto, swapped in one move

LOCKED UP · Both sides, locked by the code
CHECKED · Nothing to check — the deposits prove themselves
CASH ⇄ CASHDEPOSITS ONLY

Two bank transfers, backed by deposits

LOCKED UP · A refundable crypto deposit from each side
CHECKED · Both receipts — whoever didn't pay loses their deposit

Scroll across. Cash for cash is the weak spot — there is no crypto to lock, so both sides put down a deposit instead.

Start to finish

I'm intrigued.
How does
this work?

1

Say what you want

Pick what you are giving and what you want back. Pact works out which side it can lock up and which side it has to go and check.

2

Someone takes it

The other person accepts, and the code opens a holding account for the two of you.

3

The crypto gets locked

Whoever is putting up crypto sends it in. The code holds it now, and a countdown starts for however long you agreed.

4

The receiver lets Pact look

The same 'connect your account' screen you have seen a hundred times. The code cannot peek at anyone's PayPal uninvited, so the person getting paid gives permission first — read-only, their account only.

5

The other person pays, normally

They send the money the way they always would. They add the reference code so the payment can be matched to this deal and no other.

6

The code checks, on its own

It calls PayPal and reads the receipt. Who paid, who got paid, how much, and the reference — all four have to match. If they do, the crypto is released. Nobody clicks anything.

Pact receipt

PACTPACT-8F2K
ALICE GIVES500.00 USDC
BOB GIVES500.00 USD · PAYPAL
LOCKED UPUSDC · HELD BY CODE
CHECKEDPAYPAL · RECEIPT
PERMISSIONALICE → READ-ONLY
TIME LIMIT30 MIN · THEN REFUND
RELEASED BYTHE CODE
••••••••••••••••••••••••••••••
NO MIDDLEMAN · NO REPORTING SERVICE · NO SERVER TO BABYSIT

What Rialo deletes

Four building blocks. No middlemen.

Rialo gives you all four out of the box. Build the same thing anywhere else and each one turns into a separate service you have to run, pay for, and ask people to trust.

It holds the money

The code holds the crypto itself. Once it locks, neither person can pull it back out.

It can call the web

The code rings PayPal directly and reads the receipt itself. This is the part nothing else can do.

It keeps its own time

The refund is scheduled by the network. Not a server we keep running — if we disappeared tomorrow, it would still fire.

It reacts on its own

A matching receipt sets the release off by itself. Nothing sits there checking on a loop, nobody presses a button.

Pact only works because Rialo removes the middlemen. Take away the direct web calls and you need a whole reporting network; take away the built-in timer and you need a server somebody has to babysit.

The heart

Every step, and who moves it.

The dashed boxes happen on their own, with no human involved. Those are the ones worth watching.

DRAFTpost itOPENsomeone takes itACCEPTEDholding opensFUNDING
crypto lands ↓LOCKEDcountdown startsthey mark it sentPAYMENT_SENTVERIFYING
all four matchVERIFIEDautomaticSETTLED
nothing found yetPAYMENT_SENT · retryreceipt is wrongFAILED · money frozen
at any point before it settles, the clock runs outEXPIREDautomaticREFUNDED
Releasing and refunding both happen on their own, not because someone is watching. Close the tab and they still happen.
If a payment turns up and it is wrong, everything freezes and gets flagged. For now the fix is the refund timer, not a judge — we are not pretending to build a court.

The small print, honestly

What this does not solve.

Getting permission to look

The whole thing rests on the receiver connecting their account. Not every payment app offers a clean way to look up a receipt, and some that do will not be thrilled about code reading it.

Payments that can be undone

PayPal, Venmo and bank transfers can all be clawed back weeks later. Crypto cannot. A real version would stick to payments that cannot be reversed, or wait a while before letting go.

Privacy

Your payment history is nobody else's business. Pact looks at four things — who paid, who got paid, how much, and the reference — and keeps nothing else.

The legal side

Helping people swap cash for crypto can run into money-transmission law. Not something a demo can solve — but not something worth hiding either.

Reasonable doubts

Fair
questions.

Really nobody. Normally code on a blockchain cannot reach the internet, so you have to hire someone to look things up and swear the answer is true. Rialo lets the code make the call itself, so there is nobody to hire, nobody to pay, and nobody to bribe.