Skip to content
Mekler AIGet started

Mekler AI / Sanctions List Matching

Service details

Sanctions List Matching

Review possible OFAC name and identifier matches with dated list evidence. Your assistant calls the service and brings the result back into your task.

Match supplied names and typed identifiers against OFAC SDN and Consolidated sanctions lists with dated candidate evidence

0.01 USDC per completed matching diagnostic

Paid only. No free trial for this operation.

This operation needs paid setup. New to Mekler? Start with a free sample task →

Know its boundaries.

  • Potential matches require review; names and identifiers do not establish identity, a prohibition or legal clearance. No matches is not permission to transact.
  • Coverage is OFAC SDN and Non-SDN Consolidated legacy XML only. Non-SDN programs impose different restrictions. Other jurisdictions, ownership/control and the 50 Percent Rule are not assessed.
  • Names use Unicode case folding, accent removal, punctuation spacing and token ordering; fuzzy similarity is a heuristic, not a probability or OFAC Search score. No transliteration or phonetic matching; short names require an exact normalized token match.
  • Identifier types compare case-insensitively to the exact OFAC label; values compare exactly after outer whitespace removal. Alternative formats, case variants and identifiers recorded only in remarks can be missed.
  • Each full source is freshly retrieved for this purchase; publication dates can differ. Retrieval time does not establish publisher freshness or a synchronized snapshot. Recovered results retain the original dated evidence.
  • No ongoing monitoring, PEP search, transaction approval or legal advice. Weak aliases and common names can produce false positives; unlisted parties and missed variants can produce non-matches.

Data handling

Caller names and identifiers are matched locally against full official downloads; caller data is not sent to OFAC. Inputs, source records, results and proofs are excluded from logs. Completed results remain encrypted for 30 day original-proof recovery.

Input example and exact contract
{
  "name": "Mekler Example Trading",
  "request_id": "sanctions-example-001"
}

API reference: input, output and error schemas →

Example output

Published input/output are synthetic organizations and identifiers; live paid results use actual retrieved records.

{
  "status": "ok",
  "verdict": "potential_matches",
  "name": "Mekler Example Trading",
  "matches": [
    {
      "list": "ofac_sdn",
      "uid": "900001",
      "primary_name": "Mekler Example Trading",
      "entity_type": "Entity",
      "programs": [
        "SYNTHETIC"
      ],
      "name_matches": [
        {
          "name": "Mekler Example Trading",
          "kind": "primary",
          "quality": "primary",
          "method": "normalized_exact",
          "similarity": 100
        }
      ],
      "identifier_matches": [],
      "basis": "name_candidate",
      "weak_alias_only": false,
      "review_required": true,
      "source_url": "https://sanctionslistservice.ofac.treas.gov/api/PublicationPreview/exports/SDN.XML"
    }
  ],
  "observed_at": "2026-10-23T00:00:00Z",
  "coverage": {
    "sources": [
      {
        "list": "ofac_sdn",
        "source_url": "https://sanctionslistservice.ofac.treas.gov/api/PublicationPreview/exports/SDN.XML",
        "sha256": "c4ba3d2a9e10e6e904335895b4263beddf3e8037b1e598e8d42b877fcdecba97",
        "published_date": "2026-10-21",
        "retrieved_at": "2026-10-23T00:00:00Z",
        "records": 1
      },
      {
        "list": "ofac_consolidated",
        "source_url": "https://sanctionslistservice.ofac.treas.gov/api/PublicationPreview/exports/CONSOLIDATED.XML",
        "sha256": "cbae6b57debbecedfbce3a18af6bab30d4a8df42d96a81ff5e1e5a650b706efc",
        "published_date": "2026-10-21",
        "retrieved_at": "2026-10-23T00:00:00Z",
        "records": 0
      }
    ],
    "query_complete": true,
    "matching_policy": "ofac-candidate-v1",
    "name_similarity_threshold": 85,
    "candidate_limit": 50
  },
  "limitations": [
    "Potential matches require review; names and identifiers do not establish identity, a prohibition or legal clearance. No matches is not permission to transact.",
    "Coverage is OFAC SDN and Non-SDN Consolidated legacy XML only. Non-SDN programs impose different restrictions. Other jurisdictions, ownership/control and the 50 Percent Rule are not assessed.",
    "Names use Unicode case folding, accent removal, punctuation spacing and token ordering; fuzzy similarity is a heuristic, not a probability or OFAC Search score. No transliteration or phonetic matching; short names require an exact normalized token match.",
    "Identifier types compare case-insensitively to the exact OFAC label; values compare exactly after outer whitespace removal. Alternative formats, case variants and identifiers recorded only in remarks can be missed.",
    "Each full source is freshly retrieved for this purchase; publication dates can differ. Retrieval time does not establish publisher freshness or a synchronized snapshot. Recovered results retain the original dated evidence.",
    "No ongoing monitoring, PEP search, transaction approval or legal advice. Weak aliases and common names can produce false positives; unlisted parties and missed variants can produce non-matches."
  ]
}
Calling, result interpretation and recovery

Calling

Endpoint

POST /v1/data/sanctions/check-list-matches

Content type

application/json

Input

name and request_id required; optional identifiers defaults to []. See requestBody for exact formats and bounds.

Interpret the result

Status

ok means the bounded matching diagnostic completed; both potential_matches and no_matches are charged results.

Result

Candidates always require review. Weak aliases, common names, incomplete identifiers and transliteration variants limit recall and precision. No matches never establishes clearance.

Recovery

Same JSON and original proof recover the original encrypted result for 30 days, including original source dates; a new request_id purchases new source observations.

Example

Published input/output are synthetic organizations and identifiers; live paid results use actual retrieved records.

Limits

Request bytes

24000

Semantics
  • Unsigned quotes do no source work. Full normalized input is bound before authorization.

  • Each paid attempt downloads both full official XML files, at most 40 MB and 100000 entries each. Invalid, partial, duplicate or unavailable sources fail uncharged.

  • At most 50 candidates and 200000 output bytes; excessive candidates fail uncharged rather than truncate. Narrow a common name or inspect official sources.

  • Source publication dates may be old because lists were unchanged; retrieval is current. The two lists have independent publication dates.

  • Names use Unicode case folding, accent removal, punctuation spacing and token ordering; fuzzy similarity is a heuristic, not a probability or OFAC Search score. No transliteration or phonetic matching; short names require an exact normalized token match.

  • Identifier types compare case-insensitively to the exact OFAC label; values compare exactly after outer whitespace removal. Alternative formats, case variants and identifiers recorded only in remarks can be missed.

Payment and recovery

Price

0.01 native USDC per completed operation

Network

Solana mainnet or Base mainnet

Protocol

x402 v2 exact

Quote

POST the intended JSON unsigned for one input-bound 402; no work/source retrieval occurs. Sign one offer and resend identical JSON. Work and encrypted storage complete before settlement.

Authorization

Choose one accepts entry with a standard x402 v2 client. Check native USDC, network, recipient, amount and intended input before signing. Solana uses an SVM transaction; Base uses an EOA EIP-3009 authorization (USD Coin version 2). Send the proof with identical JSON input. No API key, token approval, bridge or Solana wallet is needed for Base. Never automatically fall back to another network.

Retry

Preserve identical JSON and original proof for 30 day result recovery; do not buy again after a timeout or pending result. Fresh request_id creates a new paid operation.

Finality

A 202 is pending. Finalized delivery carries PAYMENT-RESPONSE; provisional delivery is separately labeled and does not establish finality. Preserve the original proof instead of buying again.

Expiry

Ongoing service under recurring monthly authority. Budget warnings do not stop service. Short-lived quotes and recovery retention still expire.

Networks
  • solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp

  • eip155:8453

Assets
Solana:5eykt4usfv8p8njdtrepy1vzqkqzkvdp

EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v

Eip155:8453

0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913

Fees

CDP sponsors the payment transaction gas on both networks. The service price is the same on either network; wallet funding or exchange fees are separate.

Request binding

The server authenticates the complete quote and input and atomically binds the first accepted authorization to them. Standard Base EIP-3009 signs the money terms and nonce, not HTTP content. Keep signatures private; do not reuse an authorization for another quote, operation or body.