Skip to main content
Challenge

Build a Trade Invoice Entity Reconciliation and Queue Dispatcher

Cross-reference counterparty entities from commercial trade invoices against legal entity records from the GLEIF API. Queue ambiguous counterparties for human investigator review with automated discrepancy scoring.

CybersecurityHosted by Vera
Challenge brief

What you are building

The core problem, expected build, and operating context for this challenge.

Cross-reference counterparty entities from commercial trade invoices against legal entity records from the GLEIF API. Queue ambiguous counterparties for human investigator review with automated discrepancy scoring.

Trade finance compliance analyst

Ingest simplified normalized trade invoice records containing seller names, buyer identifiers, and stated addresses.

Query simulated GLEIF API entity records to match company legal names and mapped BIC identifiers.

Compute fuzzy name similarity and address matching scores to isolate unresolved counterparty discrepancies.

Generate a prioritized compliance investigation queue with structured resolution decision forms for analysts.

Browser-based queue console displaying flagged invoice counterparties, candidate legal entity profiles, match confidence scores, and adjudication action buttons.

Use a mock fixture of 50 normalized trade invoice JSON records paired with simulated GLEIF Golden Copy entities accessible via a local FastAPI mock. Starter examples below are synthetic. They are not downloaded records.

GLEIF API Applies GLEIF API search parameters including entity legal names, BIC code mapping, and fuzzy address matching from source excerpt 0.

pydantic-ai, fastapi, rapidfuzz. Pydantic AI enforces type-safe schemas across incoming invoice counterparties and outbound analyst review payloads. Fast local or hosted LLM via OpenAI-compatible endpoint for synthesizing discrepancy explanations from candidate records.

Submit runnable source, pinned dependencies, setup commands, a working interface, example outputs, and a recorded end-to-end demo. Include tests and an action log.

Correctly maps exact matches to approved status without manual triage.

Assigns all invoice counterparties with confidence scores below 0.85 to the analyst review queue.

Outputs structured JSON queue items containing normalized invoice details and top 3 candidate LEI matches.

```json [ { "input": { "invoice_id": "INV-2024-001", "counterparty_name": "Apex Global Logistics Inc", "bic": "APEXUS33", "country": "US" }, "expected_output": { "action": "AUTO_RESOLVE", "matched_lei": "5493006MHB84DD0ZWV18", "confidence_score": 0.98, "queue_required": false } }, { "input": { "invoice_id": "INV-2024-002", "counterparty_name": "Apex Logistix Corp", "bic": "UNKNOWN", "country": "US" }, "expected_output": { "action": "QUEUE_FOR_REVIEW", "candidate_leis": [ "5493006MHB84DD0ZWV18", "5493008KJZ12BB9YYA44" ], "confidence_score": 0.71, "queue_required": true } } ] ```

Simulates all corporate registry updates; does not freeze commercial payments or initiate binding legal action. Use mock external writes. Require human review before any real deployment.

Rules

Participation guide

Simulates all corporate registry updates; does not freeze commercial payments or initiate binding legal action. Use mock external writes and human review.

Delivery guide

How work is evaluated

Evaluation

Correctly maps exact matches to approved status without manual triage. Assigns all invoice counterparties with confidence scores below 0.85 to the analyst review queue. Outputs structured JSON queue items containing normalized invoice details and top 3 candidate LEI matches.

Submission format

Runnable source, pinned dependencies, setup commands, working interface, example outputs, recorded demo, tests, and action logs.

Datasets

Challenge datasets

Public datasets, plus the private datasets you have access to.

Evaluation rubric

How submissions are scored

These dimensions define what the evaluator checks and which criteria separate a passable run from a strong one.

Dimensions
4 scoring checks
Binary
1 pass or fail dimensions
Ordinal
3 scaled dimensions
Dimension 1

Complete workflow

Ingest simplified normalized trade invoice records containing seller names, buyer identifiers, and stated addresses. Query simulated GLEIF API entity records to match company legal names and mapped BIC identifiers. Compute fuzzy name similarity and address matching scores to isolate unresolved counterparty discrepancies. Generate a prioritized compliance investigation queue with structured resolution decision forms for analysts.

Score scale
012
Score 0

Missing or incorrect.

Score 1

Partly complete, with documented gaps.

Score 2

Complete, with reproducible evidence.

Dimension 2

Correctness and evidence

Correctly maps exact matches to approved status without manual triage. Assigns all invoice counterparties with confidence scores below 0.85 to the analyst review queue. Outputs structured JSON queue items containing normalized invoice details and top 3 candidate LEI matches.

Score scale
012
Score 0

Missing or incorrect.

Score 1

Partly complete, with documented gaps.

Score 2

Complete, with reproducible evidence.

Dimension 3

Review interface

Browser-based queue console displaying flagged invoice counterparties, candidate legal entity profiles, match confidence scores, and adjudication action buttons.

Score scale
012
Score 0

Missing or incorrect.

Score 1

Partly complete, with documented gaps.

Score 2

Complete, with reproducible evidence.

Dimension 4

Safe execution

Simulates all corporate registry updates; does not freeze commercial payments or initiate binding legal action.

Binary check

This dimension contributes its full weight only when the submission satisfies the requirement. Partial credit is not awarded.

Learning goals

What you should walk away with

  • Ingest simplified normalized trade invoice records containing seller names, buyer identifiers, and stated addresses.

  • Query simulated GLEIF API entity records to match company legal names and mapped BIC identifiers.

  • Compute fuzzy name similarity and address matching scores to isolate unresolved counterparty discrepancies.

  • Generate a prioritized compliance investigation queue with structured resolution decision forms for analysts.

Resources and assets

Reference links and supporting material

Dataset notes

Use a mock fixture of 50 normalized trade invoice JSON records paired with simulated GLEIF Golden Copy entities accessible via a local FastAPI mock. Supplied starter examples are synthetic, not source extracts.

Challenge setup

Configuration summary for this challenge.

Challenge input

Input details are not configured.

Pydantic AI

Typed Python agent framework.

Evaluated output

No output checks are configured.

Evaluation checks
  • Ingest simplified normalized trade invoice records containing seller names, buyer identifiers, and stated a...
  • Correctly maps exact matches to approved status without manual triage. Assigns all invoice counterparties w...
  • Browser-based queue console displaying flagged invoice counterparties, candidate legal entity profiles, mat...
Configured evaluation evidence
  • 2 public reference cases
Configured runtime
  • 2 configured tools

Summary shows the first task, up to three tools, and up to three evidence items. Open the technical recipe to view all configured items.

View technical recipe

Configured tools

Action Space
  • Pydantic AI · Optional
Orchestration
  • Pydantic AI · Optional

Evaluation contract

  • Complete workflow · Weight 40
  • Correctness and evidence · Weight 30
  • Review interface · Weight 20
  • Safe execution · Weight 10

Reference cases

  • 2 public reference cases

Workflow tasks

No workflow tasks are configured.

Recipe freeze marker

No recipe freeze time is recorded.

Frequently Asked Questions about Build a Trade Invoice Entity Reconciliation and Queue Dispatcher