Escrow and Buyer Protection
Every dollar you spend in the Paid Promotion marketplace is escrowed end to end. This page explains what that means from the buyer's side, which protections fire on their own, and when you would ever have to act yourself.
The escrow lifecycleβ
- You pay at checkout. The money leaves your wallet and moves into escrow. The channel owner cannot touch it.
- The owner accepts, or does not. A 24-hour countdown starts the moment you book, and runs live on the order. A decline or a lapse is an automatic full refund. You do nothing.
- The owner stakes their own money. On a booking above $50, accepting it costs the owner a refundable good-faith deposit β see What the owner puts at risk.
- The post goes live. The platform's bot publishes it at the window open β on every booking β and removes it when the booked duration ends. It is pinned only if you bought the pin extra or booked the 7 days in feed Β· pinned throughout format.
- The monitor watches. It re-checks that the post is still live for its promised in-feed duration β and, on an order that bought a pin, still pinned β and samples views, forwards and reactions across the run. The cadence is your plan's, frozen onto the order at purchase, so a plan change later cannot downgrade a protection mid-placement.
- You get a verification window. From publication for the ad's own promised in-feed duration, capped at 48 hours. Doing nothing counts as a clean delivery.
- Funds release. The owner is paid once the promised duration has run and the checks are clean. How quickly after that depends on the owner's own plan. A monitor flag or an open dispute pauses the release.
A metric the monitor could not measure is recorded as unknown, never as zero, and "we did not look" is never treated as "nobody saw it". Payout decisions ride only on real observations, and a delivery flag needs two consecutive conclusive checks before it stands.
That two-check rule belongs to the monitor's live probes, where a single network blip could read "gone" from a post that is fine. The exclusivity check works differently and deliberately does not use it: it reads a past that cannot change, so a second read of the same history would only say the same thing. Its safeguard is the three-state verdict instead.
Where a refund landsβ
This is the rule most people get wrong, so it is worth stating plainly.
Every refund on this side of the marketplace credits your Onflow Ads wallet as locked (non-withdrawable) balance. You can spend it anywhere on the platform β another placement, a boost, a plan β but you cannot cash it out.
One exception, and it is about timing, not the pocket: the paid pin. If an owner unpins your ad before the campaign ends, that $6 is decided straight away but paid when the campaign finishes β or within 48 hours, whichever comes first. It lands in your wallet as locked balance like every other refund here. The wait exists because the outcome is not final while the run continues: the owner can put the pin back, and our team can hold, release or reverse the settlement in the meantime. Any hold expires after 48 hours. See Refunds.
That covers all of it: the auto-decline refund, the not-delivered refund, your own cancellation refund, a refunded pin, an upheld dispute's refund, and a delivery-insurance refund with its goodwill credit.
There is exactly one exception:
When an auction hold is released β you were outbid, the auction went unsold, or a settlement failed β the money is restored exactly as it was taken. Withdrawable money returns withdrawable, and any locked portion returns locked. An escrowed bid is not a refund; it is a hold coming home.
Where a refund goes and how quickly are two different questions. The money reaches your wallet immediately on every path except the deferred auction return, which lands 48 hours after the bid was placed.
Protections that fire without a disputeβ
| Protection | What triggers it | What you get |
|---|---|---|
| Auto-refund on decline | The owner declines your booking | Full refund, automatic |
| Auto-refund on a lapsed window | The owner never answers within 24 hours (or by go-live on a short-notice channel) | Full refund, automatic. The order reads DECLINED with "The channel owner did not respond in time." |
| Auto-refund when the owner cannot accept | The owner is under review, or below the marketplace's reliability floor, so they are not allowed to accept | Full refund, at once β your money is not left waiting up to 24 hours on a deal that could not proceed. The order reads DECLINED with "The channel owner is temporarily unable to accept bookings." Nobody's reliability changes |
| Auto-refund on a non-delivery | The owner accepted but did not post inside the agreed window | Full refund, automatic. The order reads DECLINED with "The owner did not post within the agreed window." |
| Verified Delivery Insurance (Elite and above) | The monitor flags the delivery as failed β the post deleted early, or the channel gone | Automatic refund of the held funds plus a 10% goodwill service credit. No dispute, because the platform's own bot witnessed it |
| A bought pin removed early | The owner unpins an ad you paid the pin extra for, before the run ends | The whole pin price comes back to your wallet as locked balance β when the campaign finishes, or within 48 hours, whichever is sooner, not at the moment of the unpin. The placement itself keeps running and pays out as normal. On every plan; not a flag, so no insurance credit |
| The owner's forfeited stake | The owner accepted and then failed to post through their own fault | Their good-faith deposit is paid to you, on top of the full refund |
| A vanished listing at checkout | A channel goes unavailable between quoting and paying | The cart is refreshed and nothing is charged for the missing line |
The refund does not fire the instant the posting window closes. It waits 120 minutes β the tail in which the bot's retries can still land (a rights problem the owner fixes late is still a delivered ad) β and 10 minutes longer on an exact-time slot. Until that has run, an unposted order is still legitimately live and nothing has failed. Watching the clock will show you nothing happening for up to two hours; that is the grace, not a stall.
The one failure escrow does not pay forβ
Every protection above ends in money coming back. The exclusivity promise β the "N hours at the top" half of the format you bought β is the exception, and it is worth being plain about it.
If the owner publishes something else inside your window, the platform notices. It reads the channel's history once after the window closes, decides ok, breached or unknown, and on a confirmed breach docks the owner 0.40 reliability and notifies you both. What it does not do is refund you, discount the placement, or hold the payout.
That is deliberate rather than an omission: your ad still ran, and it still runs for its full booked in-feed duration. The escrow's promise is that the placement happens and stays up; the exclusivity window is a separate commitment, priced against the owner's standing instead of your invoice.
| Ad removed early (the monitor's flag) | Owner accepted, then never posted | Owner posted inside the exclusive window | |
|---|---|---|---|
| Reliability cost to the owner | β1.50 | β1.00 | β0.40 |
| Your money | Refunded on an insured plan; otherwise disputable | Refunded in full, automatically | Unaffected β no refund, no discount |
| Payout held? | Yes | Nothing to hold β it never ran | No |
| Needs a dispute? | Only below Elite | No | No β and it is not one of the four dispute reasons |
The mechanics, including why an inconclusive read never penalises anyone, are on What you are actually buying.
How a failed delivery is attributedβ
You are always refunded in full when your ad does not run. Whether the owner is penalised depends on a fault classification the platform makes explicitly, and it is worth knowing because it explains why an owner sometimes appears to walk away clean.
| Classification | What it looks like | What happens to the owner |
|---|---|---|
| Owner fault | The failure names the owner's own rights over the channel β the bot was removed, is not a member, lacks admin rights, the channel went private | Reliability penalty, and their good-faith stake is forfeited to you |
| Platform fault | A rate limit, a timeout, a server error on the delivery leg | No penalty, and their stake is returned. The failure was not theirs |
| Ambiguous | Anything the classifier does not recognise | It goes to a human review queue rather than silently penalising anybody |
All three paths refund you in full and automatically. The classification decides only what happens on the owner's side. "Why wasn't the owner punished?" usually has one of the two answers above.
What the owner puts at riskβ
This is a buyer-side protection that is easy to miss because it happens on the other side of the deal.
On a booking worth more than $50, accepting it costs the channel owner a refundable good-faith deposit of 10% of the charge, capped at $20. It is taken from their withdrawable balance only β it cannot be staked with promotional credit.
| What happens | Where the stake goes |
|---|---|
| The placement delivers cleanly | Back to the owner, as withdrawable money |
| The owner accepted and then failed to post, through their own fault | To you, on top of your full refund |
| The failure was a platform fault | Back to the owner. Their reliability is untouched |
| You cancelled the booking | Back to the owner. They did nothing wrong |
It goes to the injured party rather than to the platform on purpose: your campaign window was the thing that was actually destroyed.
Why fees differ between channelsβ
On your side they do not. The marketplace fee is one rate on every channel and every plan: the standard rate is 9%, so you pay the owner's list price plus 9% β an owner who lists at $100 costs you $109. The owner receives their list price minus 9% ($91 on that deal) and the platform keeps both slices. Nothing an owner does changes what you pay.
The only other rate is the veteran rate, and it is earned, never bought: the veteran rate is 7% once you have completed 100 clean placements on paid promotion channels. Only placements completed after your most recent reliability penalty count β a penalty restarts the count from zero, a penalty overturned on appeal is marked forgiven and restores it by itself, and wash trades never count. Your progress ("37 of 100") is shown on your Paid Promotions pages. An owner earns the same rate on their own side once one of their channels has completed 100 clean campaigns, which is why two owners can be paid different amounts on the same list price β but that side of the booking never touches your price.
Your rate is fixed onto each order at checkout and never repriced afterwards: the four published numbers can change and are published live on the Paid Promotions pages, but an order keeps the rate it was priced at. Auctions are the one exception to the two-sided fee β you pay exactly what you bid, and the owner's side carries the auction fee instead; see Auctions and bidding.
A buyer has no way to know or influence an owner's history before booking. Billing you for it would be charging one party for another's conduct. If a support thread or a fee panel shows a rate that does not match yours, it is the owner's side of the booking you are looking at.
Where discounts come fromβ
Worth knowing because it keeps owners willing to keep selling:
- Platform discounts β promo codes, the volume discount, bundle discounts β come out of Onflow Ads' own fee and are floored at the owner's payout. The owner always receives the price they published.
- Owner-authored discounts β spotlights, sale events, perks, bulk discounts β are the owner's own offer and reduce both sides.
Full detail on Discounts and deals.
The Buyer Protection Fundβ
Your cart carries a green shield line naming the Onflow Buyer Protection Fund, and the fee panel underneath names it again. The fund is what stands behind a make-good when a placement cannot be honoured β a monitor-verified delivery failure is made good automatically, with no dispute needed.
If something goes wrongβ
| What you see | What it means | What to do |
|---|---|---|
| The accept countdown expired and nothing moved yet | Auto-decline runs on a background sweep | The refund lands moments later and the badge flips to DECLINED |
| The posting window closed and the order is still SCHEDULED | The 120-minute retry grace is running (plus 10 minutes on an exact-time slot) | Wait it out. The bot keeps retrying the publish, and the refund fires automatically if nothing lands |
| The post is live but views look low | The monitor samples across the whole run and the campaign uses the peak observation | Measuring⦠means exactly that. Blank is never zero |
| The post was deleted before its promised time | The monitor watches for this | On Elite and above you are refunded automatically with a goodwill credit. Otherwise open a dispute within 14 days β the proof archive is the evidence |
| The post stayed up but was edited | Monitor captures compare the live content against the frozen creative | The archive flags it edited since booking. "The content was altered" is a standard dispute reason |
| "Your reliability is X/10 β Paid Promotions needs at least 4/10 to book." | You are under the floor | See Your reliability as a buyer |
| Your refund is in the wallet but you cannot withdraw it | Expected on every path except an auction hold | See Where a refund lands. It is fully spendable on the platform |
| "We couldn't reach β¦" with a Retry button | A display problem | Your bookings and your escrow are untouched. Retry |
FAQβ
The owner hasn't accepted β how long do I wait?β
24 hours from the moment you booked, shown as a live countdown on the order. If it expires, the booking auto-declines and you are refunded in full. Nothing to do.
My cart shows a different count on my phone than on my laptopβ
The cart is stored in your browser and, from Lite upward, synced to your account. Open the Cart page on either device and it reconciles against the server copy. If two devices saved at once, one is refused with "Your cart was changed on another device. We've loaded the latest one."
Can I change my ad after paying?β
No. The creative is frozen into the booking β that is exactly what the delivery-proof archive verifies against. Cancel under the published rules and rebook.
Can I cancel after the owner accepted?β
Yes, until the ad is posted β and so can the owner. Either way you are refunded in full, no fee is charged and nobody's reliability moves. Once the ad is live, a placement that has run cannot be un-spent. See Orders and campaigns.
Relatedβ
- What you are actually buying β the exclusivity promise the monitor does not enforce, and what does.
- Raising a dispute β the manual escalation path for what the automatics did not catch.
- Your reliability as a buyer β the score that gates booking and bidding.
- Orders and campaigns β the badges and the timeline this lifecycle renders as.
- Discounts and deals β who funds which discount, and why it matters to the owner.