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.
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.
Participation guide
Simulates all corporate registry updates; does not freeze commercial payments or initiate binding legal action. Use mock external writes and human review.
How work is evaluated
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.
Runnable source, pinned dependencies, setup commands, working interface, example outputs, recorded demo, tests, and action logs.
Challenge datasets
Public datasets, plus the private datasets you have access to.
How submissions are scored
These dimensions define what the evaluator checks and which criteria separate a passable run from a strong one.
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.
Missing or incorrect.
Partly complete, with documented gaps.
Complete, with reproducible evidence.
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.
Missing or incorrect.
Partly complete, with documented gaps.
Complete, with reproducible evidence.
Review interface
Browser-based queue console displaying flagged invoice counterparties, candidate legal entity profiles, match confidence scores, and adjudication action buttons.
Missing or incorrect.
Partly complete, with documented gaps.
Complete, with reproducible evidence.
Safe execution
Simulates all corporate registry updates; does not freeze commercial payments or initiate binding legal action.
This dimension contributes its full weight only when the submission satisfies the requirement. Partial credit is not awarded.
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.
Reference links and supporting material
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.
- 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...
- 2 public reference cases
- 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
- Pydantic AI · Optional
- 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.