We are currently building something exciting and will be launching soon. Registration is temporarily closed. Launching soon — registration temporarily closed.

FRAUD & SCAM DETECTION

Generally available

Stop the payment diversion before the wire goes out.

200 fraud-scheme labels across 39 languages - payment diversion, impersonation, fake invoices, social engineering - each returned with the configuration ID and receipt you need to reproduce the call. No generative model is used to produce classifications.

200 labels · 4 fraud groups · 39 languages · p95 target <500ms · No generative model is used to produce classifications

detection result
paydiv_bec_ceo
pd_bec_invoice_redirectvery high
pd_vendor_bank_changevery high
LanguageEN
Configurationsqcfg_CQ8CN62V
Fingerprintfp_a3f8…e2

Re-run with the same pinned version → identical result

What this analyzer does and doesn't do

  • Detect 200 labeled fraud and deceptive-scheme behaviors in text
  • Return confidence-ranked signals your fraud engine can route on
  • Cover 39 languages
  • ✕Verify bank details, IBANs, or transaction records
  • ✕See account history, invoices on file, or customer metadata
  • ✕Determine whether activity is actually criminal
  • ✕Replace your fraud analysts or make the final call

Sentiqra returns structured signals. Your policy, reviewers, and models make the decision. See the full boundary statement →

WHAT YOU'LL DETECT

Not "fraud: 0.91". The specific scheme - with the label your playbook already knows.

Payment Diversion: BEC & CEO Fraud

pd_bec_invoice_redirect

“Please update the beneficiary account for this invoice” → very high

Impersonation: Authority Fraud

imp_gov_official

“This is the tax authority - you have an outstanding liability” → very high

Social Engineering: Tech Support Scams

se_remote_access_tech

“Install this app so our technician can fix the issue” → very high

Fake Invoices: Document Forgery

fi_bank_detail_altered

Detected - example withheld

Investment & Crypto Pump Scams

se_pig_butcher_crypto

Detected - example withheld

200 indicators across 4 fraud groups - covering 39 languages.

Same deterministic product contract as every Sentiqra analyzer: pinned configuration, signed receipt, replayable results. Per-language benchmark publication is pending for this analyzer - evaluate it on your own labeled workload; the published methodology applies when results ship.

p95 latency target <500ms No generative model is used to produce classifications Every run tied to a config ID
See benchmarks and methodology

WHERE IT GETS USED

Three jobs this analyzer does well.

Vendor payment-diversion screening

An AP team screens every "updated bank details" email through Fraud & Scam before touching the vendor master file. pd_vendor_bank_change and fi_modified_invoice hits put the payment on hold pending out-of-band verification - the classic BEC kill-chain stopped at step one.

Fit signals: payment-instruction changes · supplier email volume · out-of-band verification policy

Executive and authority impersonation triage

Inbound mail claiming a CEO, tax authority, or law-enforcement request runs through the impersonation families. pd_bec_ceo_request combined with se_urgency_pressure routes straight to the fraud desk instead of an employee's judgment call.

Fit signals: BEC exposure · wire authority · urgency + secrecy patterns

Member scam warnings on platforms

A marketplace runs buyer-seller messages through the social-engineering families. When se_pig_butcher_crypto or se_refund_scam fires, the member sees an in-context warning before money or credentials move - protection without a silent ban.

Fit signals: P2P messaging · member financial losses · warning-friction UX

Send text. Get ranked labels + a receipt you can replay.

request
POST /v1/analyze
Authorization: Bearer sq_live_your_api_key_here

{
  "text": "Urgent - our bank account has changed. Please re-route this month's invoice payment to the new IBAN attached.",
  "language": "en",
  "analyzers": ["fraud-scam"]
}
response
{
  "language": "en",
  "signals": [
    { "analyzer": "fraud-scam", "code": "payment_diversion", "label": "Payment Diversion", "score": 0.9, "confidence": "very_high", "level": "category" },
    { "analyzer": "fraud-scam", "code": "pd_bec_ceo_request", "label": "CEO Urgent Payment Request BEC", "score": 0.9, "confidence": "very_high", "level": "label", "parent": "payment_diversion" },
    { "analyzer": "fraud-scam", "code": "pd_bec_attorney_confidential", "label": "Attorney Confidential Payment BEC", "score": 0.9, "confidence": "very_high", "level": "label", "parent": "payment_diversion" }
  ],
  "meta": { "analyzers": [{ "name": "fraud-scam", "status": "completed", "signal_count": 3, "billed": true }], "partial": false },
  "usage": { "analyzer_runs": 1, "billed": true },
  "verification": {
    "configuration": "sqcfg_CQ8CN62V",
    "fingerprint": "fp_8a72...19f",
    "input_commitment": "ic_31bd...a42",
    "signature": "sig_ed25519_4c1f...e2a"
  }
}

READING THE OUTPUT

What a Fraud & Scam Detection result tells you - and what it doesn't.

Intended task

Flag documented fraud and scam patterns - payment diversion, impersonation, advance-fee lures - in text before money or credentials move.

Input requirements

  • text - the only field analyzed; up to 4,096 Unicode code points. Over the limit is rejected with input_too_long, never truncated.
  • language - must be a language this analyzer supports. Unsupported codes are rejected with 400 unsupported_language, never analyzed as a different language.
  • analyzers - include "fraud-scam"; up to 2 analyzers per request, one billed run each.
  • No context beyond text - no user IDs, history, profiles, or attachments are read or inferred.
  • Analyzes the submitted text only - sender identity, headers, and account relationships are not inputs.

Ordinary positive

“Please update our payment details - our account is under audit, so wire this month's invoices to the new account below.”

paydiv_vendor_supplier very high
paydiv_bec_ceo high

Safe inference: The text matches documented payment-diversion patterns - hold the payment change and verify out-of-band before any wire.

Confusing negative · Quotation

“Security bulletin: watch for emails like "wire this month's invoices to the new account below" - report them to finance.”

What happens: Payment-diversion signals can fire on the quoted lure. Training material, bulletins, and forwarded suspect emails all contain the same language as the attack itself - the signal describes the text, not whether this message is itself an attack.

Why it's tricky: A bare request like "can you send me $200?" may also be too thin to match strongly - fraud patterns are contextual. Treat flagged text as a verify-first trigger, and unflagged payment changes as "not detected" rather than verified-safe.

What you can safely infer

  • Which documented fraud patterns the text matched, and at what signal-match strength.
  • That the same message on the same pinned configuration replays identically - the receipt supports your audit trail.

What you must not infer

  • ✕That a flagged message proves fraud or wrongdoing - signals route verification, they do not determine guilt.
  • ✕That the sender is a criminal - impersonation signals describe the language, not the person.
  • ✕That an unflagged payment request is verified-safe - always confirm payment changes out-of-band regardless of the result.

Boundary: Fraud signals are not proof of wrongdoing. They flag language consistent with documented schemes so an analyst or control step can verify - payment changes should always be confirmed out-of-band regardless of the result.

Fraud & Scam Detection is on every plan. Even Free.

Free

5,000 runs/mo

Build

$149/mo · 50,000 runs/mo

Growth

$349/mo · 150,000 runs/mo

Production

$799/mo · 500,000 runs/mo

Scale

$2,999/mo · 2,500,000 runs/mo

Enterprise

By agreement · SOC 2 Type II in progress

Deterministic by construction, provable by receipt.

A signed verification receipt - configuration ID (sqcfg_...), result fingerprint (fp2_...), input commitment (ic3_...), and Ed25519 signature (sig_ed25519_...) - ships with every successful analysis result. Pin it to the stored decision and a later replay under the same supported configuration and output profile yields the identical canonical result - the difference between "the model said so" and evidence.

Verify a receipt

Where it fits in your pipeline

EMAILS & MESSAGES ↓ FRAUD & SCAM ↓
Payment Diversionvery high
Impersonationvery high
Social Engineeringvery high
↓ YOUR POLICY ↓ Allow · Warn · Hold · Escalate

Often paired with: Dating Safety for romance-fraud conversations, Cybersecurity for phishing and credential theft, Trust & Safety for general platform abuse.

Used in: Phishing & Account Protection and Marketplace & Messaging Safety

Try it on your hardest fraud cases.

5,000 analyzer runs/month · No card required

Analyzer FAQ

New to Sentiqra? It's a deterministic text-analysis API - you send text, you get labeled, confidence-scored signals plus a replayable receipt. Fraud & Scam Detection is the fraudulent scheme detection analyzer.

What does Fraud & Scam Detection detect?

Detect payment diversion, impersonation, advance-fee fraud, social-engineering lures, and scam patterns in multilingual text.

Which languages does it cover?

39 supported languages. Per-language benchmark publication is pending for this analyzer - evaluate it on your own labeled workload before relying on a specific language. Coverage is per-analyzer, not platform-wide.

How do I call it?

POST /v1/analyze with "analyzers": ["fraud-scam"]. Same endpoint, auth, and response shape as every other analyzer - you can pair it with one more analyzer in the same request.

What does a call cost?

One analyzer run per call, billed against your plan's included runs (overage per plan). All GA analyzers are on every plan, including Free - see pricing.

How do I evaluate it on my data?

Label a few hundred of your own examples, run them through the free tier, and compare our signals to your labels. The evaluation playbook walks through building that test set - it's the same method we use internally.