Skip to main content

Receiving, Accepting, and Declining Bookings

Every sale starts as a request: an advertiser has chosen your channel, picked a slot, written the ad and already paid into escrow. Your job at this stage is one decision β€” yes or no, at the price on your rate card β€” made inside 24 hours, or before the ad's go-live if that comes sooner.

Each request carries an OFO- order id that stays with it through acceptance, posting, proof, payout and any later dispute. When two advertisers book similar slots in the same week, the OFO- is what tells them apart β€” quote it in any message to support or to the buyer. See Your Onflow Ads IDs.

The Bookings queue page under the Channel owner subnav, with the gold pill β€œUnanswered bookings auto-decline Β· reliability βˆ’0.30” at the top right, a green shield card reading β€œVerified β€” You're verified β€” next level unlocks near $5,000.00 lifetime payout.”, and a Payouts panel headed β€œwhat you're owed, dated” with three tiles reading Available now $991.90 β€œclaim in Delivered”, Next 30 days $218.40 and Earned to date $1,678.95 above a dated column chart

Elite plan Β· Channel owner. The queue at /telegram/dashboard/paid-promotion/bookings. Two panels sit above the tabs β€” your verification card and your Payouts ledger β€” and the pill in the corner is the one rule worth memorising.

Before you start​

  • Your account must be on the channel-owner side, with at least one LIVE listing.
  • Your reliability must be at least 4.0 out of 10 to accept anything. Every account starts at 8.0.
  • Your account must not be under an open fraud review. During one you can finish work already in flight but cannot take on new counterparties.
  • Your withdrawable wallet balance must cover the good-faith deposit on high-value bookings β€” see below for the exact numbers.

The queue​

Six tabs, each with a live count. The page opens on New, and inside New the requests are ordered by urgency, so the one closest to auto-declining sits first.

TabWhat is in it
AllEverything, newest first
NewRequests awaiting your answer, each with a live countdown
In progressAccepted, not yet posted β€” your delivery obligations
DeliveredPosted and proven; payouts scheduled or claimable
CompletedPaid out and finished
CancelledDeclined, expired, refunded or cancelled bookings, plus a breakdown of your decline reasons

Two panels sit above the tabs and follow you across every one: the Payouts ledger (see Escrow and getting paid) and a verification card when identity verification is needed or near (see Identity verification).

The answer clock is the only thing that costs you for doing nothing

Every new request must be answered within 24 hours β€” or by the ad's go-live, whichever comes first. On a channel with a lead time under 24 hours (12h or same-day) the clock is the time to go-live, and the card says so with a Short notice line. Each card shows a live countdown and the header carries a standing reminder: "Unanswered bookings auto-decline Β· reliability βˆ’0.30". A request nobody answers auto-declines, refunds the advertiser in full, and docks your reliability by 0.30. Declining by hand costs nothing at all. Only silence costs.

A request you are not allowed to answer costs you nothing

While your account is under review (an open fraud concern, or a frozen wallet) or your reliability is below the marketplace floor, you cannot accept. A request that reaches your queue in that state is not left to run out its clock: the platform declines it for you at once, refunds the advertiser in full, and records no ghosting penalty. The advertiser sees "The channel owner is temporarily unable to accept bookings."

What a request shows you​

  • The advertiser, by the display name on their account β€” the name they set in Account β†’ Full name, or, until they set one, the readable part of their address with the domain dropped (john.doe@… reads as John Doe). You never see their address, masked or otherwise. When other owners have rated them, a gold β˜… rating with its count sits beside the name. A track record before you commit.
  • The slot, the schedule and the channel β€” the format label, the scheduled date and time, and which of your channels it is for.
  • The booking's OFO- reference, on its own line.
  • The ad itself, rendered the way Telegram will render it: links look like links, the inline buttons are shown and named, and attached images and video are shown, not counted. This card is where you consent to a post going out in your channel, so it shows the real creative rather than a text snippet or the words "+ 2 images attached".
  • Where every link actually goes. Every link in the creative reads as an onflowads.com/rr/… short link β€” the advertiser's text links, the addresses and @handles typed into the text, and every button β€” and a short link does not name the site, the page or the channel it opens. The card resolves each one back to its real destination in a legend beneath the preview β€” the page, the Telegram address, or which channel a campaign invite link opens β€” so the question you are actually asking β€” where does this send my subscribers? β€” is on the screen before you accept.
  • "you receive $X" / "after N% fee" β€” your exact payout and the marketplace fee applied to this booking.
  • A ⏳ countdown to auto-decline.
  • On high-value bookings, a shield notice: "High-value booking β€” accepting stakes a refundable $X good-faith deposit from your wallet, returned on clean delivery."

Step by step β€” accepting​

  1. Press Accept booking. Two things happen as one atomic step that either fully succeeds or does not happen at all.

  2. The good-faith deposit is staked if this booking asks for one β€” the amount was already printed on the card.

  3. The booking moves to In progress and the advertiser is notified ("Your placement was accepted").

  4. Read the confirmation: "Accepted β€” we'll publish and pin it for you on [date] UTC. Nothing else to do." Delivery is automatic on every booking β€” the bot publishes at the window open and removes the post when the run ends. Where a deposit was taken the card adds: "A refundable $X good-faith deposit is held from your wallet and comes straight back when you deliver."

    The word "pin" in that confirmation is stale

    The message says "publish and pin" on every booking. A pin only actually happens where the buyer paid for the pin extra. On an ordinary booking the ad is published and nothing is pinned. What you owe either way is the format's opening window β€” see The quiet window you owe.

Auto-post is resolved per booking: your explicit choice if you made one, otherwise the listing's saved default, otherwise on. Accepting also snapshots your channel's live member count, which is the baseline any retention hold on the booking is later measured against.

The good-faith deposit, in numbers​

RuleShipped value
Deposit10% of the booking charge
Only on bookings of$50.00 or more
Capped at$20.00

All three are set by Onflow Ads and can change; the exact dollar figure is always printed on the card before you accept, and again in the confirmation.

  • It is refundable, and it comes back as its own wallet line β€” never netted off your payout β€” when you deliver cleanly, and also when the advertiser cancels.
  • It must come from real, withdrawable funds. Promotional and locked credit do not count. If you are short, the accept is refused with the exact shortfall named β€” "Accepting this booking asks for a $X refundable good-faith deposit in real (withdrawable) funds, and you're $Y short" β€” and the booking stays pending. You are never charged for an accept that did not happen.
  • It is forfeited to the advertiser, never to Onflow Ads, when a failure is yours: you accepted and never posted, or the monitor flagged the placement. The injured party is the one whose campaign window was destroyed.
  • A window missed because of a platform or Telegram failure returns the deposit and leaves your reliability untouched.
Fund the deposit before you need it

Keep enough withdrawable balance to cover a couple of deposits, especially if auto-accept is on. The automatic pass silently skips a booking whose deposit you cannot cover β€” the request stays in your queue with its clock running, and nothing tells you why.

Your rate is the rate​

There is no counter-offer. Every booking arrives at the price on your rate card, already paid into escrow by the advertiser β€” the card shows exactly what you receive, and the only answers are Accept booking and Decline. To charge more, change your rates in the listing manager; the new price applies to the next booking.

Cancelling after you accepted​

Until the ad is actually posted, an accepted booking can still be cancelled β€” by you or by the advertiser:

  • Press Cancel booking on the accepted card (it arms into "Tap again Β· full refund, no strike" and does nothing until you tap it a second time).
  • The advertiser is refunded in full, your good-faith deposit comes back, and nobody's reliability changes. Nothing has run, so nothing has been lost that money cannot put back.
  • Once the ad is live β€” the bot publishes it at the window open β€” the button is gone; a placement that has run cannot be un-spent.

A booking cancelled this way shows as Cancelled Β· Cancelled by the channel before posting on both sides.

Declining​

Press Decline and the card asks Why decline? with six one-tap reasons:

  • Off-topic for my audience
  • Slot already taken
  • Content not a fit
  • Timing doesn't work
  • Below my rate
  • Against channel policy

Pick one and the decline lands immediately. The advertiser is refunded in full on the spot and told the reason. Press cancel if you opened the reasons by mistake.

Declining a pending request never costs reliability. On the Cancelled tab, a "Why bookings were declined" strip groups your reasons with counts β€” a pile of "Below my rate" says raise nothing and wait; a pile of "Off-topic" says your category or audience description is steering the wrong buyers to you.

Bulk actions​

In the New tab, tick the checkbox on the cards you want and a sticky bar appears reading "N selected":

  • Accept all β€” runs the same accept, one booking at a time. Every accept still stakes its own deposit and each is checked against the reliability floor.
  • Decline all β€” asks for one shared reason, then declines each and refunds each advertiser.
  • Clear β€” deselects everything.

When the run finishes you get a tally, including anything that could not be processed β€” typically an accept whose deposit your wallet could not cover. Bulk actions are the same money path as the single buttons; there are no shortcuts inside them.

What arrives in Telegram​

With your Telegram linked, each pending placement arrives as its own message from @OnflowAdsBot:

πŸ“£ New booking request An advertiser wants to pay to run a post on your channel. Accept to take the job, or Decline to pass.

πŸ‘₯ Channel: Β· ⭐ Ad slot: Β· πŸ’° You receive: Β· πŸ“Œ Pinned: (only when they bought the pin) Β· πŸ“… Go-live: Β· πŸ†” Order: the OFO- id

⏳ This request declines by itself in 24 hours if nobody answers. β€” or, on a short-notice booking, …at go-live β€” in about N hours…, followed by a ⏰ Short notice line explaining why there is no 24-hour window.

πŸ“ Tap Get the post here to see the ad exactly as it will appear in your channel β€” photo, links and buttons included.

πŸ’¬ From the advertiser β€” their own note to you, if they wrote one.

It is one message per booking: the ad itself is never pasted into the card as an excerpt, and there is no second "you have a request" message about the same booking β€” the feed and email carry that, Telegram carries the card. On Plus and above the card wears the bot's premium look: animated emoji, and buttons coloured by what they do (blue looks, green decides). Free and Lite see the same words with plain emoji and plain buttons.

πŸ’¬ From the advertiser​

A booking can carry a short note written to you β€” not part of the ad, and never published anywhere. The advertiser writes it in the booking composer, in the same editor as the ad, and it is what they would tell you if they were asking in person: what the product is, why it suits your audience, where a link goes.

It appears under the ad preview on the Telegram card, and again on the booking card in your queue, in its own blue block so it can never be mistaken for a line of the post you are being asked to publish.

  • It is optional. Most bookings will not carry one, and its absence says nothing about the booking.
  • It is the advertiser's claim, not ours. Nothing in it is verified. Judge the ad on the ad; read the note for context.
  • It is one note per checkout. A buyer booking four channels at once writes it once, and all four owners read the same words.
  • Up to 2,000 characters; the Telegram card shows the first 700.

πŸ“Œ Pinned​

Where the buyer bought the pin, the card names it before you accept β€” "this post stays pinned for the whole campaign, from go-live until the run ends β€” we pin and unpin it for you, and $4.00 of your payout is for this". You are agreeing to leave it pinned, and nothing else: the platform applies and releases the pin on both delivery routes. See Prices and offers.

Two buttons sit under it:

ButtonWhat it does
πŸ“„ Get the post hereSends you the complete placement β€” the media, the caption exactly as it will be published (attribution line included), the buttons with their real destinations, the format, the quantity, the channel and the schedule β€” as a message in the same chat. Nothing leaves Telegram and nothing is decided
βœ… Review & respondOpens your bookings queue at that exact booking β€” the page scrolls the row into view and pulses it for three seconds, so a busy queue lands you on the right card rather than at the top of the list
Read it in the chat; decide on the website

Get the post here exists because an owner asked to publish something in their own channel should not have to leave Telegram to find out what. The decision stays on the website deliberately: accepting moves money, stakes a good-faith deposit and writes your reliability ledger, and those belong on one surface.

The button is answered only for the Telegram account linked to the owner of that booking β€” someone else pressing a forwarded copy gets nothing. Very occasionally it is not offered at all, in which case Review & respond still is.

A checkout that books several of your channels at once is capped at five messages per owner. Beyond that you get one line instead: "…and N more request(s) in the same order. Open your bookings queue to handle them together."

Reporting an advertiser​

From the moment you accept β€” the point at which the creative is yours to look at β€” every booking card carries 🚩 Report advertiser, and it keeps carrying it long after the ad has run. It is a proper ghost button beside the other controls, not the link it used to be: on a delivered booking it was a single word inside the grey hint sentence, in the same grey as the rest of the sentence.

An accepted booking card in the owner's queue: the advertiser's display name β€œAlina Petrova” with a 4.8 (12) star pill, the format and slot, the order id OFO-902-1180, the advertiser's creative previewed with its inline button, and an action row reading β€œβœ“ Accepted β€” scheduled”, β€œCancel booking” and an amber β€œπŸš© Report advertiser” button

Elite plan Β· Channel owner β€” a booking already accepted. Two things to notice: the advertiser is named by their display name, never a masked email address, and 🚩 Report advertiser is a button shaped like the controls beside it.

It opens a case a person reads, with your own reason list β€” the creative is not the one you approved, a link leads somewhere it should not, the ad breaks your channel's rules or the platform's, false or misleading claims, pressure to break a rule, impersonation β€” plus the shared ones every member gets. You can attach up to six screenshots, and the advertiser never sees them.

Report is not decline, and not cancel

The form says this above the reasons, because these are the two faster doors:

  • A booking you simply do not want β†’ Decline it. Declining by hand is free and costs you no reliability.
  • An accepted booking you want out of before it posts β†’ Cancel it. The advertiser is refunded in full and nobody's reliability moves.

Report is for when something is wrong, not merely unwanted. And it does not unpublish anything by itself β€” if the ad is already live and must come down now, say so in the first line.

Full detail, including the advertiser's mirror of this list, is on Reporting a campaign.

Rating advertisers​

Once an ad has actually run β€” delivered or completed β€” the booking card offers Rate this advertiser: 1 to 5 stars, once per booking, with an optional note. The card then reads "βœ“ You rated this advertiser" and cannot be changed. The aggregate of every owner's ratings is what shows as the gold star pill on that advertiser's future requests, the same courtesy their reviews give your channel.

If something goes wrong​

What you seeWhat it meansWhat to do
"Your reliability is X/10 β€” you need at least 4/10 to accept bookings."Your score is below the accept floorFinish work already in flight; clean completions and the recovery schedule bring it back. See Delivery monitoring
"Top up your wallet to stake the good-faith deposit."Your withdrawable balance cannot cover the depositTop up, or wait for a pending payout to clear, then accept. Promotional credit does not count
"That request can't be accepted β€” it may have changed."The booking is no longer pending β€” cancelled, expired or already answeredReload the queue
A refusal citing an open reviewYou are under an active fraud reviewYou can still deliver accepted work; you cannot take new bookings until it is decided. See Disputes
"We couldn't reach your queue just now"A load failure, not a data lossPress Retry. Nothing auto-declines without the timers you can see
A booking never appeared at allIt was stopped by one of your own rulesA blackout day, or a start time inside your lead time. See Managing your availability

Selecting several at once​

Tick the checkbox on any pending cards and an action sheet slides up from the bottom of the screen β€” "N selected Β· Accept all Β· Decline all Β· Clear". It floats over the page rather than sitting in the middle of it, so the cards you are reading stay readable, and it leaves as soon as the selection is cleared.

When the advertiser cancels​

  • Cancelled while still pending β€” the request disappears. Nothing is owed either way and nothing touches your score.
  • Cancelled after you accepted, before the ad was posted β€” the advertiser is refunded in full, your good-faith deposit comes back, and neither side's reliability moves. You can do the same from your side; see Cancelling after you accepted.
  • Cancelled after the ad went live β€” refused. A placement that has run cannot be un-spent.

The activity feed​

The Activity pill opens /telegram/dashboard/paid-promotion/activity β€” a running list of up to 40 recent Paid Promotions events, newest first. The header counts them ("5 unread Β· 12 recent", or "You're all caught up Β· 12 recent") and two buttons sit beside it: Notification settings, which controls whether events reach you in-app, by email or in Telegram, and Mark all read.

Four kinds of row, each with its own icon: πŸ“£ booking, πŸ’° payout, ⭐ feedback and ⚠️ dispute. Unread rows carry a dot; clicking one marks it read and follows its link. Empty, it reads "You're all caught up β€” Booking requests, payouts and feedback will show up here as they happen."

The Paid Promotions Activity feed headed β€œ5 unread Β· 12 recent”, with Notification settings and Mark all read buttons, and five πŸ“£ rows: three β€œNew booking request” items quoting OFO references, one β€œWe couldn't auto-post your booked ad” explaining that Telegram refused the post because the bot needs the Post messages right, and one β€œThe booked ad went live on your channel”

Elite plan Β· Channel owner. The feed is a log, not a workspace β€” every row links back to the booking it is about. Read the auto-post failure row first: those are the ones with a deadline.

Statuses at a glance​

Card stateWhat it means
Countdown pill with Accept booking / DeclinePending β€” yours to answer, clock running
"βœ“ Accepted β€” scheduled"Onflow Ads publishes it for you at the window open, removes it when the booked duration ends β€” and pins it for the whole run if the buyer paid for the pin extra
"Delivered β€” funds release on …"Proof accepted; the release date was fixed at delivery
"Delivery verified β€” the hold has cleared." with Claim $X payoutThe money is claimable
"Get it now Β· $X" with an early-release fee lineInstant payout is open on this booking
"Paid out βœ“ Β· $X"Completed and credited to your wallet
A red pill β€” "Declined Β· [reason]" / "Cancelled" / "Refunded"Closed. "The advertiser was refunded instantly and told why."
From the support chat

A channel owner can accept the booking OFO-… or decline the booking because … in the chat; the assistant shows the booking it found and waits for CONFIRM before acting. Cancel my booking withdraws one you accepted that has not been published. What the assistant can do for you has the full list and the confirmation rule.