← Rivl AI  /  Proof

A consumer marketplace with
a compliance boundary built in.

BalanceSwap is a gift card exchange. A seller enters a card, gets a verified quote, and chooses cash or a cause. Behind the form sit identity checks, fraud controls, payment rails and the state by state rules that decide where the product may operate.

We built it to prove that a consumer product can launch with the controls a regulator expects on day one, rather than added after the first complaint.

The quote screen as it runs today. The balance is verified before an offer appears, and the seller chooses cash or a cause.

What it does

Unused value turned into cash or a gift,
with a receipt for everything.

Nothing here is exotic. What is unusual is that the quote, the choice, the screen and the payout are separate records from the first transaction, so the operator can answer a complaint with evidence rather than a reconstruction.

Verified quotes

The quote is built from a verified balance and a published rate, so the seller sees the same number the system will pay.

Cash or a cause

A seller can take the payout or direct it to a participating organization, with the designation recorded on the transaction.

Where it operates

Availability is decided state by state in configuration, not in marketing copy. Florida is excluded at launch.

Identity and fraud

Checks run before money moves. A failure stops the transaction and tells the seller why, within what the rules allow.

Payments

Payouts through a payment provider, with the provider's result stored per transaction rather than assumed.

Operator console

Queues for review, holds and exceptions, assigned by role. The operator sees why a transaction stopped and what evidence sits behind it.

Under the hood

The parts a landing page
never shows.

A marketplace that moves money is judged by what it refuses. The design decisions below are the ones a regulator, a payment partner and a defrauded customer would each ask about.

Configuration

One source file for every fact about the business

Legal name, publisher, excluded states and fees live in one configuration file, so a change is made once and appears everywhere, and a check can prove the page matches it.

Invariants

No payout without a passed screen

The order of operations is enforced in the data layer. A transaction cannot reach payout with a failed or missing identity check, whatever the application code does.

Audit

Every state change recorded, nothing overwritten

Quote, choice, screen result, payout and provider confirmation are separate records. A correction after the fact is labeled as one.

Verification

Checked at two widths before it ships

Each release is verified on a phone width and a desktop width, with the rendered text checked against the configuration, before it is promoted.

$2,000Highest card value accepted on a single sale
Every cardBalance verified, with its PIN, before a quote is made
2 choicesA seller takes cash or sends the value to a cause
1 teamThe same people who scope a client engagement built and operate this
What it proves

Money, identity and a rule
that differs by state.

Strip the gift cards away and this is a payments flow with an identity gate and jurisdiction rules. Banks, lenders, benefit programs and marketplaces all run the same three things.

From the screen

Identity gates that cannot be skipped

Onboarding, disbursement, account changes. The gate is in the data layer, so the control is real rather than procedural.

From the payout

Payments with the provider's own answer stored

Refunds, claims, disbursements and settlements that report what happened, not what was attempted.

From the state list

Jurisdiction rules as configuration

Where you may sell, lend, quote or serve, held as data that is tested, rather than as a note in a policy binder.

From the console

Exceptions worked by role

Review queues that survive a change of staff, with the evidence behind each hold on the screen.

Rivl AI

We will build yours with the controls in from day one.

Thirty minutes. Bring the flow where money or identity has to be right, and we will tell you which parts of this apply and which parts do not.