Inferensys

Prompt

Anti-Bribery and Corruption Risk Detection Prompt

A practical prompt playbook for using the Anti-Bribery and Corruption Risk Detection Prompt in production AI workflows.
Risk analyst performing AI risk assessment on laptop, risk matrices visible, casual office risk session.
PROMPT PLAYBOOK

When to Use This Prompt

Defines the operational scope, ideal user, and critical limitations for deploying the Anti-Bribery and Corruption Risk Detection Prompt in a production AI pipeline.

This prompt is an ingress filter for global compliance teams and AI platform engineers who need to automatically triage unstructured business communications—emails, chat logs, call transcripts, and CRM notes—for potential violations of the FCPA and UK Bribery Act. Its job is not to provide legal advice or make final determinations, but to act as a high-recall, structured classification layer that prevents risky content from entering downstream systems like CRM logging, generative AI summarization, or data warehouses without review. The ideal user is an engineer integrating this prompt into a compliance middleware layer, or a compliance officer configuring the risk thresholds that determine routing behavior.

Deploy this prompt when you need a consistent, auditable first pass over high-volume communications where manual review is impossible. It is specifically designed to detect bribery indicators (quid pro quo language, win-at-all-costs phrasing), facilitation payment discussions (grease payments, customs expediting), improper gift and entertainment language (luxury travel, excessive hospitality), and third-party intermediary risk signals (undisclosed agents, vague consulting fees). The prompt expects an [INPUT] text and an optional [CONTEXT] with metadata like sender, recipient, and jurisdiction. It outputs a structured [OUTPUT_SCHEMA] with a risk level, detected signals, and a confidence score, enabling deterministic routing to a human review queue for high-risk items or automated processing for low-risk ones.

Do not use this prompt as a standalone compliance program. It is a classification and triage tool, not a replacement for compliance officers, legal counsel, or a comprehensive anti-corruption framework. It will not understand nuanced local law exceptions, and it cannot investigate or verify the truth of a statement—it only flags language patterns. Avoid using it in isolation for final employment decisions, contract rejection, or regulatory filings. The output must always be treated as a signal for human review in high-risk cases, and you should implement a feedback loop where compliance officers can mark false positives and false negatives to continuously refine your eval datasets and prompt thresholds.

PRACTICAL GUARDRAILS

Use Case Fit

Where this prompt works in production and where it introduces unacceptable risk. Use these cards to decide if the Anti-Bribery and Corruption Risk Detection Prompt fits your operational context.

01

Good Fit: Pre-Screening Business Communications

Use when: scanning emails, chat logs, and deal memos for bribery indicators before they reach downstream systems or human review queues. Guardrail: The prompt should act as a high-recall filter, flagging content for human review rather than making final determinations. Route flagged items to a compliance queue with full context preservation.

02

Bad Fit: Standalone Investigative Determination

Avoid when: the output will be used as the sole evidence for an internal investigation, regulatory filing, or employment action without human corroboration. Guardrail: The model cannot establish intent or verify facts. Always require a certified compliance analyst to review and sign off on any flagged communication before it becomes part of an official record.

03

Required Inputs: Structured Entity Context

What to watch: The prompt's accuracy degrades significantly without a list of known third-party intermediaries, high-risk jurisdictions, and sanctioned entities. Guardrail: Always inject a structured [ENTITY_CONTEXT] block containing your organization's screened third-party list, current high-risk country classifications, and any active watchlist entities before the message to be analyzed.

04

Operational Risk: False Positives and Alert Fatigue

What to watch: Overly sensitive detection can flag routine sales entertainment or standard contract negotiation language, overwhelming compliance teams. Guardrail: Implement a confidence score threshold in the [OUTPUT_SCHEMA]. Route low-confidence flags to a separate review queue for batch analysis and tune the prompt's examples to distinguish between reasonable corporate hospitality and corrupt intent.

05

Operational Risk: Multilingual and Cultural Nuance

What to watch: Facilitation payment language and gift-giving customs vary significantly across regions. A direct translation of a local business practice can be misclassified as a red flag. Guardrail: Pair this prompt with a language and locale detection router. For non-English inputs, use a translation layer before classification and include a [LOCALE_CONTEXT] field to inform the model of regional business norms.

06

Bad Fit: Real-Time Transaction Blocking

Avoid when: the use case requires sub-second latency to block a payment or stop a contract execution. Guardrail: This prompt is designed for asynchronous document and message review. For real-time payment screening, integrate with a dedicated sanctions screening API. Use this prompt for the post-transaction review and audit trail generation, not the in-the-moment decision.

PROMPT PLAYBOOK

Copy-Ready Prompt Template

A production-ready prompt template for classifying business communications for anti-bribery and corruption risk, designed to be copied, adapted, and wired into a compliance review pipeline.

The prompt template below is the core instruction set for an AI system performing anti-bribery and corruption (ABC) risk detection. It is designed to be strict, evidence-bound, and auditable. The model is instructed not to invent facts, to flag ambiguity for human review, and to map its findings to a predefined risk taxonomy. This is not a conversational prompt; it is a classification contract. Use it as the system prompt or the primary instruction block in a structured API call where the input text is injected into the [INPUT] placeholder.

code
You are an anti-bribery and corruption risk classifier. Your task is to analyze the provided business communication for indicators of bribery, corruption, facilitation payments, improper gifts, or third-party intermediary risk.

# RISK TAXONOMY
Use the following categories to classify the text. A single communication may have multiple flags.
- BRIBERY_OFFER: An explicit or implied offer of something of value to influence a decision.
- BRIBERY_REQUEST: A solicitation for a bribe or kickback.
- FACILITATION_PAYMENT: A small payment to expedite a routine governmental action.
- IMPROPER_GIFT: A gift, hospitality, or entertainment that is excessive, secretive, or tied to a pending decision.
- THIRD_PARTY_RISK: Language suggesting a third party (agent, consultant, partner) may be used to make improper payments.
- AMBIGUOUS: Language that is suspicious but lacks sufficient context for a definitive classification.
- NO_RISK: No indicators of bribery or corruption are present.

# INPUT
[INPUT]

# CONSTRAINTS
- Do not invent facts not present in the text.
- If the text is ambiguous, classify it as AMBIGUOUS and flag it for human review. Do not assume innocence.
- Cite the specific phrases or sentences that support each classification.
- If no risk is found, classify as NO_RISK and provide a brief, factual summary of the text's benign content.

# OUTPUT SCHEMA
Respond with a valid JSON object conforming to this schema:
{
  "risk_flags": ["BRIBERY_OFFER", "IMPROPER_GIFT"], // Array of strings from the RISK TAXONOMY
  "citations": [
    {
      "flag": "BRIBERY_OFFER",
      "quote": "We can make it worth your while.",
      "rationale": "This phrase implies an offer of value in exchange for a favorable decision."
    }
  ],
  "requires_human_review": true, // Boolean. Must be true if AMBIGUOUS or any risk flag is present.
  "summary": "The email contains a veiled offer of value linked to a contract award decision."
}

To adapt this template, replace the [INPUT] placeholder with the text you want to classify. The [RISK_TAXONOMY] can be expanded to include more granular categories specific to your organization's policy, such as CHARITABLE_CONTRIBUTION or POLITICAL_DONATION. The [OUTPUT_SCHEMA] is a critical contract for your application; ensure your downstream parser expects this exact JSON structure. For high-stakes deployments, consider adding a [CONFIDENCE_SCORE] field to the output schema to allow for more nuanced routing, and always set requires_human_review to true for any non-NO_RISK finding to create a mandatory human-in-the-loop checkpoint.

Before integrating this prompt into a production pipeline, you must test it against a golden dataset of known-clean and known-risky communications. Common failure modes include the model hallucinating a risk where none exists (a false positive) or, more dangerously, classifying a veiled bribe as NO_RISK (a false negative). Your evaluation suite should specifically test for obfuscated language, such as code words or euphemisms, and confirm that the model correctly defaults to AMBIGUOUS and requests human review rather than making a risky assumption.

IMPLEMENTATION TABLE

Prompt Variables

Inputs the Anti-Bribery and Corruption Risk Detection prompt needs to produce reliable, auditable classifications. Each placeholder must be populated before the prompt is sent to the model.

PlaceholderPurposeExampleValidation Notes

[INPUT_TEXT]

The business communication, transaction note, or third-party correspondence to be analyzed for bribery and corruption risk indicators.

Our agent in Lagos requires a $5,000 facilitation payment to expedite the customs clearance for the shipment.

Required. Must be a non-empty string. Reject if null or whitespace-only. Max 8,000 characters to stay within context window for analysis.

[JURISDICTION]

The legal framework(s) under which the transaction or communication should be evaluated. Determines which specific risk definitions and thresholds apply.

FCPA, UK Bribery Act

Required. Must match an allowed enum: FCPA, UK Bribery Act, or Both. Reject unknown values. Controls which regulatory definitions are loaded into the prompt.

[ENTITY_TYPES]

The roles of the parties involved in the communication. Helps the model distinguish between internal employees, government officials, commercial partners, and third-party intermediaries.

Third-Party Intermediary, Government Official

Required. Must be a comma-separated list from allowed enum: Employee, Government Official, Commercial Partner, Third-Party Intermediary, Unknown. At least one type required. Unknown allowed but triggers lower confidence.

[INDUSTRY_CONTEXT]

The sector in which the transaction or communication occurs. Some industries have elevated bribery risk profiles or specific red-flag patterns.

Oil and Gas, Customs Brokerage

Optional. If provided, must match allowed enum: Oil and Gas, Pharmaceuticals, Construction, Customs Brokerage, Financial Services, Defense, Other. Null allowed. When null, the model uses general risk indicators without sector-specific weighting.

[CONFIDENCE_THRESHOLD]

The minimum confidence score required for the model to auto-classify a risk level. Outputs below this threshold are routed for human review.

0.85

Required. Must be a float between 0.0 and 1.0. Values below 0.70 are not recommended for production auto-routing. Parse check required before prompt assembly.

[OUTPUT_SCHEMA]

The exact JSON schema the model must return, including risk level, risk indicators found, confidence score, and evidence excerpts.

See output-contract table for full schema definition.

Required. Must be a valid JSON Schema object. Validate schema structure before prompt assembly. Schema must include required fields: risk_level, confidence_score, indicators, evidence_excerpts, human_review_required.

[ESCALATION_RULES]

Conditions that force human review regardless of confidence score. Defines mandatory escalation triggers.

Any mention of government official + payment above $1,000 triggers human review.

Required. Must be a non-empty string describing explicit escalation conditions. Parse for logical consistency before prompt assembly. If no escalation rules are desired, set to 'None' explicitly rather than leaving empty.

PROMPT PLAYBOOK

Implementation Harness Notes

How to wire the Anti-Bribery and Corruption Risk Detection prompt into a production compliance screening pipeline.

This prompt is designed as a classification gateway, not a final decision engine. It should sit at the ingress layer of any workflow that processes business communications, expense reports, third-party due diligence documents, or contract negotiations. The prompt's job is to triage content into risk tiers and extract structured indicators that downstream systems and human reviewers can act on. Because the regulatory stakes under the FCPA and UK Bribery Act are high, the implementation harness must enforce deterministic routing, audit logging, and human-in-the-loop review for anything above a low-risk threshold.

Wire the prompt into an application by first constructing the [INPUT] from the raw text source, ensuring you strip any prior system instructions or metadata that could cause prompt confusion. The [JURISDICTION] placeholder should be populated from a configuration map based on the entity's operating regions, defaulting to 'FCPA and UK Bribery Act' if unknown. The [RISK_THRESHOLD] should be set to a low sensitivity level (e.g., 'LOW') to avoid false negatives, as missing a facilitation payment signal is costlier than a false positive. After model invocation, parse the JSON output and implement a strict routing switch: route risk_level: HIGH and risk_level: CRITICAL directly to a compliance review queue with an attached audit record. Route risk_level: MEDIUM to a secondary review bucket for batch analysis. Only risk_level: LOW with a confidence score above 0.95 should be allowed to pass without human review. Log every classification, the raw model response, and the routing decision to an immutable audit store for regulatory examination.

For model choice, use a model with strong instruction-following and low refusal rates on sensitive topics, as over-refusal on legitimate compliance screening creates a dangerous blind spot. Implement a retry layer that catches JSON parse failures and malformed outputs, re-invoking the prompt with the error message appended as a [REPAIR_INSTRUCTION]. If the model fails to return valid JSON after two retries, escalate the entire input to human review and log the failure for prompt debugging. Never allow a parse failure to silently drop a message. Finally, integrate an eval harness that runs a golden dataset of known bribery indicators, clean business language, and edge cases (e.g., legitimate gift policies) against every prompt version before deployment to measure precision, recall, and over-flagging rates.

IMPLEMENTATION TABLE

Expected Output Contract

Defines the exact JSON schema, field types, and validation rules for the anti-bribery and corruption risk detection prompt. Use this contract to parse, validate, and route the model's structured output before any downstream action.

Field or ElementType or FormatRequiredValidation Rule

risk_detected

boolean

Must be true or false. If true, at least one risk_indicator must be present.

risk_level

enum: LOW | MEDIUM | HIGH | CRITICAL

Must match one of the defined enum values. CRITICAL requires immediate human review.

risk_category

enum: BRIBERY | FACILITATION_PAYMENT | IMPROPER_GIFT | THIRD_PARTY_INTERMEDIARY | CONFLICT_OF_INTEREST | OTHER

Must match one of the defined enum values. If OTHER, risk_summary must explain the category.

risk_indicators

array of strings

Must contain at least one string if risk_detected is true. Each string must be a direct quote or a specific, grounded observation from [INPUT_TEXT].

risk_summary

string

Must be a concise, factual summary of the risk signal found in [INPUT_TEXT]. Must not introduce external knowledge or speculation.

affected_parties

array of objects

Each object must have 'name' (string) and 'role' (string) fields. Null or empty array is allowed if no specific parties are identifiable.

recommended_action

enum: ESCALATE_TO_COMPLIANCE | HUMAN_REVIEW | LOG_AND_CONTINUE | NO_ACTION

Must match one of the defined enum values. ESCALATE_TO_COMPLIANCE is required for CRITICAL risk_level.

confidence_score

number (0.0 - 1.0)

Must be a float between 0.0 and 1.0. Scores below 0.7 must trigger HUMAN_REVIEW regardless of risk_level.

PRACTICAL GUARDRAILS

Common Failure Modes

Anti-bribery and corruption detection prompts fail in predictable ways. These are the most common production failure modes and the guardrails that catch them before they cause compliance exposure.

01

False Negatives on Coded Language

What to watch: The prompt misses bribery signals disguised as euphemisms ('processing fee', 'special handling', 'local consultant'), indirect language ('make it worth your while'), or industry-specific code words. Models default to literal interpretation and overlook contextual red flags. Guardrail: Include a glossary of known euphemisms and coded terms in the system prompt. Require the model to flag any transaction language that deviates from standard commercial terms, even when explicit bribery keywords are absent. Pair with a second-pass review on low-confidence negatives.

02

Over-Flagging Legitimate Business Expenses

What to watch: The prompt classifies routine hospitality, standard distributor margins, or normal government filing fees as bribery risks. This floods compliance queues with false positives, desensitizes reviewers, and delays legitimate business. Guardrail: Define explicit monetary thresholds, customary business practice carve-outs, and industry-specific norms in the prompt constraints. Require the model to distinguish between reasonable proportionality and disproportionate value transfer. Track false-positive rates by reviewer feedback and tune thresholds quarterly.

03

Third-Party Intermediary Blind Spots

What to watch: The prompt analyzes direct counterparty language but misses risk when intermediaries, agents, consultants, or local partners are mentioned without explicit red-flag terms. Bribery often flows through indirect channels that the model treats as neutral third-party references. Guardrail: Add a dedicated intermediary detection step that extracts all mentioned third parties, their stated roles, and compensation arrangements. Flag any intermediary with vague scope, success-fee structures, or government-adjacent descriptions regardless of surrounding language.

04

Jurisdiction-Agnostic Risk Scoring

What to watch: The prompt applies the same risk threshold to all countries, missing elevated risk in high-CPI jurisdictions or failing to recognize that facilitation payments may be explicitly prohibited under UK Bribery Act even if local practice tolerates them. Guardrail: Supply a jurisdiction risk tier list as part of the prompt context. Adjust detection sensitivity based on the country involved. Flag any payment to government officials in high-risk jurisdictions for mandatory review, regardless of amount or stated purpose.

05

Temporal Pattern Blindness

What to watch: The prompt evaluates each message or document in isolation, missing risk patterns that only emerge across multiple communications—such as escalating gift values, repeated pre-deal entertainment, or payment timing aligned with contract awards. Guardrail: When processing threaded communications or document sets, include prior context summaries in the prompt. Instruct the model to compare current content against historical patterns and flag escalation trajectories, not just individual instances.

06

Confidence Miscalibration on Ambiguous Language

What to watch: The model assigns high confidence to risk classifications on genuinely ambiguous language—such as relationship-building discussions in cultures where personal rapport is standard business practice—or low confidence on clear red flags due to polite or indirect phrasing. Guardrail: Require the model to output explicit confidence scores with reasoning. Route medium-confidence findings to human review. Calibrate confidence thresholds against labeled compliance team decisions, not model self-assessment alone. Log all high-confidence flags for audit sampling.

IMPLEMENTATION TABLE

Evaluation Rubric

Use this rubric to test the Anti-Bribery and Corruption Risk Detection prompt before production deployment. Each criterion targets a specific failure mode common in compliance classification prompts.

CriterionPass StandardFailure SignalTest Method

Facilitation Payment Detection

Prompt correctly labels 'grease payment' or 'speed money' language as HIGH_RISK with indicator type 'facilitation_payment'

Prompt labels facilitation payment language as LOW_RISK or returns indicator type 'gift' instead of 'facilitation_payment'

Run 10 test cases containing facilitation payment scenarios across customs, permits, and utility connections. Require 100% recall on HIGH_RISK classification.

Third-Party Intermediary Risk

Prompt identifies indirect bribery risk through agents, consultants, or intermediaries and sets risk_score >= 0.7

Prompt treats third-party payment language as standard business transaction without intermediary risk flag

Test with 8 cases describing third-party relationships: 4 with red flags (unusual commissions, shell company indicators) and 4 legitimate. Measure precision at 0.9 threshold.

Improper Gift and Hospitality Classification

Prompt distinguishes between reasonable business hospitality and improper gifts using value, timing, and quid-pro-quo signals

Prompt classifies all gift mentions as HIGH_RISK or all as LOW_RISK without contextual differentiation

Run 12 gift/hospitality scenarios varying value, timing relative to contract decisions, and reciprocity language. Require F1 >= 0.85.

Jurisdictional Trigger Identification

Prompt correctly extracts mentioned jurisdictions and maps them to applicable regulations: FCPA, UK Bribery Act, or local anti-corruption laws

Prompt fails to extract jurisdiction or maps all cases to FCPA regardless of geography

Test with 6 cases spanning US, UK, Brazil, China, and multi-jurisdiction scenarios. Validate jurisdiction extraction accuracy >= 0.9.

False Positive Control on Legitimate Business

Prompt classifies standard contract negotiation, legitimate discounts, and normal business development as LOW_RISK or NO_RISK

Prompt flags standard business language as HIGH_RISK, creating alert fatigue and investigation queue overload

Run 15 legitimate business communications: contract terms, volume discounts, marketing spend, and relationship building. Require false positive rate < 0.1.

Confidence Score Calibration

Prompt outputs confidence_score that correlates with ambiguity: clear bribery indicators get >= 0.9, ambiguous cases get 0.5-0.7, legitimate business gets <= 0.3

Prompt assigns uniformly high confidence regardless of signal clarity or assigns low confidence to clear violations

Evaluate confidence_score distribution across 20 labeled cases with known ground truth. Require Spearman correlation >= 0.8 between confidence and label correctness.

Evidence Extraction and Citation

Prompt returns specific text spans as evidence for each risk indicator with exact quotes from [INPUT]

Prompt returns risk indicators without supporting evidence or fabricates quotes not present in source text

Verify evidence spans are substring matches in original input for 10 HIGH_RISK classifications. Require 100% citation accuracy.

Structured Output Schema Compliance

Prompt output validates against [OUTPUT_SCHEMA] with all required fields present and correct types

Output missing required fields, wrong types, or extra fields that break downstream parsing

Validate 25 outputs against JSON schema. Require 100% schema compliance. Retry once on failure before counting as fail.

ADAPTATION OPTIONS

Adapt This Prompt

How to adapt

Start with the base prompt and a simple JSON schema for the risk indicators. Use a frontier model (GPT-4o, Claude 3.5 Sonnet) with temperature=0. Run a small set of known-clean and known-risky emails through it. Focus on recall first—you want to catch all potential bribery signals even if precision is low.

Strip the prompt down to core detection instructions:

  • Remove detailed FCPA/UK Bribery Act clause references.
  • Use a flat list of risk categories instead of nested taxonomies.
  • Skip the third-party intermediary risk scoring for now.

Watch for

  • Over-flagging normal business courtesies (client dinners, modest gifts) as bribery.
  • Missing facilitation payments described in euphemistic language ("processing fee," "expediting charge").
  • No confidence scoring—every flag looks equally urgent.
Prasad Kumkar

About the author

Prasad Kumkar

CEO & MD, Inference Systems

Prasad Kumkar is the CEO & MD of Inference Systems and writes about AI systems architecture, LLM infrastructure, model serving, evaluation, and production deployment. Over 5+ years, he has worked across computer vision models, L5 autonomous vehicle systems, and LLM research, with a focus on taking complex AI ideas into real-world engineering systems.

His work and writing cover AI systems, large language models, AI agents, multimodal systems, autonomous systems, inference optimization, RAG, evaluation, and production AI engineering.