Skip to main content

Appeals and fraud concerns

Two flows keep the trust system fair, and they are the only two places where you actively push back on something:

  • Appealing lets you contest a penalty on your own record that you believe is wrong.
  • Raising a fraud concern lets you report a paid deal where the other side did not deliver honestly.

Both end with a human decision. Automated systems propose; people decide.

Which one do I need?

If the content check refused a post (or held it because its picture could not be read), use the Appeal button under the refusal instead β€” that is a different desk, described on Prohibited content. If the mark is on your record, you appeal. If the problem is with someone else's delivery on a placement you paid for, you raise a concern. If your booking simply has not started yet and you have changed your mind, you do not need either β€” cancel it instead.


Part 1 β€” Appealing a penalty on your record​

If an entry on your reliability ledger should not be there, appeal it. Every appeal is read by a person.

Before you start​

  • You need to be signed in, on the account carrying the mark. An appeal can only be filed from the ledger it sits on.
  • There is a 30-day window. Terms Β§15.4 and Refunds Β§24 both set it: a standing penalty can be appealed within 30 days of the day it was applied. The Appeal button itself does not count days β€” it is the reviewer who applies the window β€” so appeal from the entry while it is fresh rather than banking it.
  • Three appeals a day. Every appeal lands in a human queue, so an account can file at most three in one day. A fourth answers "Too many attempts. Please wait a minute and try again." and waits for tomorrow.
  • Your ledger holds the 50 most recent events. An older entry scrolls out of the list, and with it the Appeal button.
  • Appeals are filed here, on the website. Refunds Β§24 is explicit that the desk is the website's; a button in Telegram that offers to open an appeal opens this page and does nothing else.

When you can appeal​

All three must be true, and the interface enforces all three:

  • The entry is a penalty β€” a negative change. Positive credits, clean-streak recoveries and restorations carry no Appeal button at all.
  • It still stands. A penalty already tagged Reversed has nothing left to contest.
  • It is not already under appeal. One appeal per entry; while the team is reviewing one, the button is replaced by an Appeal under review tag, and once a reviewer has let the penalty stand, by an Appeal declined tag.

Step by step​

  1. Sign in and open onflowads.com/telegram/dashboard/reliability.
  2. Scroll to Your ledger at the bottom of the page. Each row shows the amount (for example βˆ’1.50), a plain-language label, and beneath them the date and the score you were left on.
  3. Find the penalty and press its Appeal button. A modal opens headed Appeal followed by that penalty's own label, above the line "Briefly, why do you think this penalty is wrong? A human reviews every appeal β€” if it's overturned, the exact points are restored."
  4. Type your explanation into the box. The placeholder shows the shape of a good one β€” "For example: Telegram removed the post, not me β€” here's what happened…" β€” and a live counter beneath it reads n / 500. The field is hard-capped at 500 characters.
  5. Press Submit appeal. Ctrl+Enter (Cmd+Enter on a Mac) also submits. The button reads Sending… while it goes.
  6. Confirm it landed. The modal closes, the ledger reloads, and a green toast reads "Appeal submitted β€” our team will review it." The entry now carries an Appeal under review tag in place of its button.
Leaving without submitting

Cancel, the βœ•, pressing Escape or clicking outside the card all close the modal and discard what you typed. Nothing is filed until you press Submit appeal, and the box starts empty every time you reopen it.

What to write​

Reviewers are deciding a factual question: did the thing the penalty describes actually happen, and was it your doing? Short, specific and checkable beats long and indignant β€” and you have 500 characters, so lead with the fact.

Useful:

  • The post link, if the penalty says a post came down and it did not
  • The date and time something happened, and what you were told at the time
  • Who else was involved and what they confirmed
  • The cause, if it was outside your control β€” a platform outage, an account takeover, a channel migration
  • The reference of the thing the penalty is about β€” usually the OFO-… placement, sometimes the OFCP-… campaign
Appealing the exclusive-window mark

The βˆ’0.40 for posting inside an ad's top-of-feed window is a different kind of argument from a deleted post, because the entry itself already states the case against you: how many posts went up, and how far into the window the first one landed. What helps is anything that shows those posts were not what the check took them for β€” links to the posts and their real publication times if you believe they fell outside the window, or a note that they were pieces of the advertiser's own album rather than your content. "I did not know" is not a ground; "that post went up at 14:12, eleven minutes after the window closed" is. See what the check actually looks at.

Not useful: a general statement that the score is unfair, or an argument about a different entry.

You do not have to quote a reference

Appealing from the ledger already tells the team which entry you mean. Each entry does carry its own OFRE-… reference in the platform's records β€” that is what identifies one specific mark if you ever write in by another route β€” but the ledger row on your page prints the amount, the label, the date and the score after, not the reference. If the team quotes you one in a notice, quote it back exactly as printed. It is one of the Onflow Ads IDs and it is safe to share: it names a decision, it cannot change one.

Two grounds worth knowing about​

Both are commitments in the Terms rather than discretion, and both are appealed exactly like any other mark:

  • One cause, one penalty β€” even across a multi-partner campaign. A cross-promotion running with several partners is checked partner by partner, so a single act that breaks all of them at the same moment β€” removing the bot from your channel, or taking its admin rights away β€” is marked once per partner. Terms Β§15.1 binds the platform here: where one cause broke several placements in the same campaign at the same time, that is one incident carrying one penalty. Appeal any one of those entries and every mark beyond the first is reversed in full. What your partners are owed is settled separately and is not reduced because your score was corrected.
  • A deadline penalty taken during an outage. Letting a booking offer expire without answering inside the accept window is applied from the clock alone β€” the clock cannot tell why you were away, and background checks keep running through a maintenance window, including one opened on the very product you needed. Terms Β§15.1: if the Services, or the part of them you needed, were unavailable to you for a material part of that window, appeal it and it will be reversed. This is the one class of penalty where you do have to tell them.

Outcomes​

OutcomeWhat happens
Overturned β€” not at faultThe exact points are restored, untapered, as if the penalty never happened. A genuine restore can carry you back above the 8.0 recovery ceiling, because it returns standing you had already earned. Your ledger shows the original entry tagged Reversed, plus a restoring entry labelled Restored β€” not at fault. If the same mark forfeited a good-faith deposit, that is restored too
Forgiven β€” honest mistakeThe team confirms the event happened but was a genuine mistake rather than malpractice. The points come back the same way, the entry is tagged Reversed, and the forgiven mark stops slowing your clean-streak healing. Forgiveness is deliberately bounded so it cannot be farmed by repeat offenders
Partly restoredWhere only part of a penalty was wrong, a reviewer can hand back part of it and leave the rest standing. The ledger carries both movements. A later restoration, or an undo of one, points at the same original entry, and together they never hand back more than the penalty took β€” the Reversed tag appears only once the whole amount has come back
DismissedThe penalty stands. The Appeal under review tag becomes Appeal declined, and the entry cannot be appealed again; nothing else on the ledger changes

Whatever the outcome, you see it on the same ledger, with the reason attached.

Restoring the score is the whole of the remedy

Terms Β§15.4 and Refunds Β§24 are blunt about the limit. An overturned mark returns your points, returns a good-faith deposit the same mark forfeited, and restores your veteran streak, because a forgiven mark does not interrupt the count of clean campaigns or placements behind the veteran rate. It does not refund the difference between the standard rate and the veteran rate on marketplace fees already charged while the mark stood, and it does not reinstate allowances that were throttled in the meantime. A fee charged at the standard rate because of your standing is not a fee levied in error.

One more, for completeness: a restoration made in error can itself be reversed, taking those points off again. Whichever way it goes is written to the ledger. And if the platform cannot write a reversal at the moment the reviewer decides it, the reviewer is told and nothing changes β€” the intent is queued and written later, still linked to the entry it reverses.

Messages you might see​

MessageWhat it means
"Please add a short reason so our team can review it."The box was empty. This one appears inline under the field, before anything is sent
"Tell us briefly why you think this penalty is wrong."The same refusal from the server, if an empty reason reaches it
"That isn't a penalty you can appeal."The entry is a credit, a recovery or a restoration, not a penalty
"That penalty was already reversed β€” nothing to appeal."It has already been overturned or forgiven
"You've already appealed this β€” our team will review it."An appeal on this entry is already in the queue
"Your appeal on this penalty was already reviewed, and it stands. Each penalty can be appealed once."A reviewer already dismissed an appeal on this entry
"That event isn't on your record."The entry does not belong to your account
"Which penalty are you appealing?"The request reached the server without an entry attached β€” reload the page and try again
"Appeals aren't available yet β€” please try again later."A backend that is not ready. Nothing was filed; try again shortly
"Too many attempts. Please wait a minute and try again."You have filed three appeals today. Nothing was filed; the next one waits for tomorrow
"Network error β€” please try again."The request never left. Your text is still in the box

Rules and edge cases​

  • You can never undo a ledgered penalty yourself. Appealing is how you ask a human reviewer to. That is by design β€” it is what makes the ledger trustworthy for everyone else too.
  • Appealing does not pause anything. Your score, your standing and your gates stay exactly as they are while the appeal is reviewed.
  • One appeal per entry. If a single incident produced two entries, appeal each one separately β€” unless it is the multi-partner case above, where one appeal is enough.
  • An appeal is not a support ticket. If you also need something fixed urgently β€” a held payout, a blocked withdrawal β€” write to support in parallel.
  • A discretionary adjustment is appealable like anything else. Where a senior reviewer moves a score by hand for abuse nobody filed a concern about, Terms Β§15.1 caps that at Β±2.00 points, requires a written reason stored on the entry you can read, and notifies you. It carries an Appeal button exactly like an automatic penalty.
  • A mark the Telegram bot reported is appealed here too. The bot records what it saw; the website prices it and writes the entry. The See why & appeal button on the bot's message opens this same ledger β€” there is no bot-side verdict to argue with.

Part 2 β€” Raising a fraud concern (advertisers)​

If you paid for a placement and something went wrong β€” the post was never published, was removed early, was altered, or ran in the wrong place β€” raise a concern from your orders page. The owner's payout is frozen while the team investigates, so the money cannot walk away mid-review.

One failure this flow is not for

If you were notified that your ad "did not get its full time at the top", there is nothing to file. That means the channel published something else inside the hours your format sold as time at the top; the platform checked it, confirmed it, and has already recorded it against the channel as a βˆ’0.40 reliability mark. Your ad was published and keeps running for its full booked duration, so no money is in question and there is no remedy to claim. The four reason chips below all describe a placement that failed to deliver β€” this one delivered, just not first. Detail: the top-of-feed exclusivity check.

Before you start​

  • The ad must have been posted. You can only raise a concern once the owner has actually published. If nothing has been posted yet and the booking has not gone live, cancel it instead.
  • You have 14 days from publication. The window deliberately runs past payout, so a problem you notice late is still actionable β€” the owner's wallet is frozen even after they have been paid. After 14 days the booking is final.
  • A concern that does not stand costs you. A rejected concern is a βˆ’0.50 reliability penalty on your own record, and a repeated pattern of rejected concerns costs more. The interface warns you twice before you commit. A genuine concern is always safe β€” and a concern the reviewer simply cannot prove either way is dismissed, which costs nobody anything.
  • Twenty concerns an hour. The action is rate limited per account; ordinary use never approaches it.

Steps​

  1. Sign in and open your orders at onflowads.com/telegram/dashboard/paid-promotion/orders.
  2. Find the order and expand it. Among the action chips you will see Open a dispute, followed by your plan's resolution promise β€” a published target such as 48h SLA, or queue-ordered where your plan does not include one.
  3. Press it. The concern form opens under the order, headed "Raise a fraud concern β€” held funds stay frozen while we investigate" with your plan's resolution target in brackets on the same line.
  4. Read the warning strip inside the form: "⚠️ If our review finds this concern doesn't stand, it costs you βˆ’0.5 reliability (a pattern of rejected concerns costs more). A genuine concern is always safe β€” this only affects false or unfounded ones."
  5. Pick a reason chip. The four options are The post was never published, It was deleted early, The content was altered and Wrong channel or audience.
  6. Add detail in the note box if it helps β€” the placeholder reads "Add any detail that helps us investigate (optional)…". The chip and the note are joined into one statement and submitted together, capped at 1,000 characters.
  7. Press Submit concern. A browser confirmation asks "Raise this concern? If our review finds it doesn't stand, it costs you βˆ’0.5 reliability (a pattern of rejected concerns costs more). A genuine concern is always safe." Confirm to file it.
  8. Watch it land. The button reads Filing…, then a toast confirms the concern was filed β€” on a plan with a published target, naming the hours it will be resolved within.
Pick a reason or write a note β€” one of the two

Submitting with no chip selected and an empty note is refused on the page with "Pick a reason (or add a note) so we can investigate." Nothing is sent. The server refuses the same thing with "Tell us what went wrong so we can investigate."

What happens the moment you file​

All of this is automatic:

  • The order shows a Dispute pill with its status. While it is open, the pill counts down to your plan's resolution target, or reads in the review queue if your plan has no published target.
  • The owner's payout on that booking is held: "A fraud concern on this booking is under review β€” the payout is on hold until our team resolves it."
  • A hold is placed on the owner's wallet for the full 14-day concern window, and their account moves to Under Review β€” see Account standing. That block is sticky: it holds for as long as the concern is open, even if the timed wallet hold lapses first.
  • The owner is notified with "A fraud concern was raised", telling them an advertiser raised a concern about their post and that their payout is on hold while the team reviews it.
  • The platform's own evidence is frozen at that moment: what the delivery monitor measured, the delivery figures, and the proof-capture trail. Neither side can change the record after the fact, and it is what a reviewer arbitrates on rather than the two parties' prose.
  • The resolution target is stamped onto the record from your tier at the moment you raise it, so the clock you were sold cannot move if you change plan mid-review.

Outcomes​

OutcomeWhat happens
Concern upheldThe owner takes the heaviest reliability penalty on the platform, βˆ’2.00, forfeits their good-faith stake where one was taken, and you are made whole under the Refund Policy β€” a re-run, a credit or a refund. The wallet hold on the owner lifts
Concern rejectedThe claim was unfounded β€” it did not hold up. The hold lifts, the owner's stake is returned and their payout releases normally. You take a βˆ’0.50 reliability penalty for a concern that did not stand, and a repeated pattern of rejected concerns costs more
Concern dismissedInconclusive β€” the reviewer could not establish fault either way. Nobody's score moves, the owner's stake is returned, the hold lifts and the payout releases normally. A zero-value Concern dismissed β€” inconclusive line is written on the owner's ledger so the outcome is visible. Nothing is charged to you

All three outcomes end the investigation and lift the owner's hold in the same step, so a cleared owner is unfrozen the moment the concern is decided. Rejection is reserved for a claim that did not hold up β€” not for one that merely could not be proven; that is what dismissal is for.

Messages you might see​

MessageWhat it means
"You can raise a concern once the owner has posted your ad."Nothing has been published yet β€” cancel the booking instead
"A concern on this booking is already under review."One is already open on this order; wait for it to resolve
"The window to raise a concern on this booking has closed."More than 14 days have passed since publication
"Pick a reason (or add a note) so we can investigate."No chip selected and no note typed. Nothing was sent
"Tell us what went wrong so we can investigate."The same refusal, from the server
"Too many attempts. Please wait a minute and try again."You have hit the rate limit on this action β€” wait and retry
"Couldn't file that β€” please try again."The request failed. Nothing was filed; your reason and note are still on the form

If you are the one accused​

  • Your reliability page shows Under Review instead of your tier β€” it cannot be quoted against you before anything is proven β€” and your score stops auto-healing until the review resolves. The concern moves your score only if it is upheld, so an unresolved accusation is never used against you, and an inconclusive one is dismissed with nothing taken.
  • Withdrawals and payout claims pause, and you cannot start new deals on any surface. Anything already in flight finishes normally.
  • AI generation is off for the duration.
  • Support is not affected. Nothing about a review touches the help widget or the contact form.
  • If the review finds you were not at fault, the score is restored exactly as before.
  • If a penalty does land and you believe it is wrong, you can still appeal it from your ledger β€” within 30 days.

Full detail on what the state blocks and how it ends: Account standing.

Before disputing, consider cancelling​

A dispute is for a placement that ran badly. If the placement has not run yet, cancelling is the right tool and it is faster:

  • Still awaiting the owner's acceptance? Cancel for a full, immediate refund to your wallet, with no fee and no effect on your record.
  • Accepted but not yet posted? You can still cancel β€” and so can the owner β€” for a full refund, with no fee and no effect on either record. Arming the Cancel booking chip shows the exact refund before you commit.
  • Already live? Neither cancelling nor changing your mind is possible β€” "This ad is already live β€” it can no longer be cancelled." If it delivered badly, that is when a concern is the right tool.
Confirming a placement releases the money immediately

Confirming from your orders page pays the owner straight away and cannot be undone from the interface. Only confirm once you have checked the post is live, in the right channel and unaltered β€” and if it is not, use the concern flow instead of confirming.

Frequently asked questions​

Does raising a concern cost me anything if I am right?​

No. Only a concern that is reviewed and found not to stand costs you βˆ’0.50. A genuine concern, even one that turns out to be a misunderstanding of the facts, is what the system is for.

Can I raise a second concern on the same booking?​

Not while one is open. Once a concern has been resolved, the booking is decided β€” if you believe the decision was wrong, contact support with the order reference rather than filing again.

How long does a review take?​

Some plans include a published resolution target β€” 48 hours at Elite, 24 hours at the top rungs β€” which is shown on the dispute chip and counted down on the order. Plans without one are resolved in queue order and the order says so. See Comparing the tiers.

I missed the 30 days to appeal. Is that it?​

The window is the policy's, and it is what a reviewer applies. If something genuinely stopped you appealing in time, write to [email protected] with the date, the amount and what happened, rather than assuming the answer.

The monitor already flagged my placement. Do I still need to raise a concern?​

Not necessarily. A monitor flag already holds the owner's payout and notifies you. On plans that include Verified Delivery Insurance the refund happens automatically with no dispute at all. On other plans, raising a concern is how you get the held money back. See Fraud and bot protection.

I confirmed a placement and then found a problem. Can I undo it?​

Not from the interface β€” confirming releases the payment immediately. If a genuine problem surfaces afterwards, email [email protected] with your order reference.

Will appealing a penalty make things worse if I lose?​

No. A dismissed appeal leaves your record exactly as it was. There is no penalty for appealing in good faith.

Can an owner raise a concern about an advertiser?​

The fraud-concern flow described here is the advertiser's tool for a placement that failed. If an advertiser has behaved badly toward you, contact [email protected] with the order reference β€” advertiser-side misconduct such as chargeback fraud, false concerns and a pattern of rejected concerns carries its own reliability penalties. Cancelling a booking before it goes live is not misconduct: it is a full refund with no mark on either side.

The reviewer could not tell who was at fault. Who pays?​

Nobody. That outcome is a dismissal: your score does not move, the owner's stake goes back, the hold lifts and the payout releases. Rejection β€” and its βˆ’0.50 β€” is reserved for a claim that was shown not to hold up.

Need help mid-dispute?​

Email [email protected] or use the contact form with your order reference. Evidence helps: links, screenshots and dates make reviews faster and fairer for both sides.

From the support chat

Appeal OFRE-… because … files the appeal from the chat with your reason, after you type CONFIRM β€” the same appeal this page describes, decided the same way. What the assistant can do for you has the full list and the confirmation rule.


Next: Trust and safety steps back and shows the whole system these two flows sit inside β€” escrow, delivery proof, cancellation and moderation, from booking to payout.