Urgent.News

What's breaking now, across thousands of outlets.

Tech

I built 100 compliance screening pages with one command (OFAC, PEP, entity)

This is the 5th stream in a series. Previous ones: HS codes , document parsing , finance validators , watch/monitoring . This time — compliance screening against OFAC, EU, UK, UN sanctions lists, plus PEP screening and entity verification. Same playbook each time: one Cloudflare Worker + one JSON list + one generator script → 100 SEO pages + landing + Suby product. Live:…

This article details the process of building 100 compliance screening pages using a single command, which includes screening against OFAC, EU, UK, UN sanctions lists, PEP screening, and entity verification. The system is built using a Cloudflare Worker, a JSON list, and a generator script to produce 100 SEO pages, a landing page, and a Suby product. The live version of this system can be accessed at https://jsonexlab.com/compliance.

The main functionality of this system is to screen any person or company against various sanctions lists and PEPs. It checks against OFAC SDN (US Treasury, 19,416 entries), OFAC Consolidated (non-SDN), UK OFSI (UK sanctions), EU Consolidated (EU sanctions), UN Security Council (UN sanctions), and PEP (Politically Exposed Persons). Entity verification is also included, using company registries from various countries.

The article highlights three significant challenges encountered during the development of this system:

1. Cloudflare Workers cannot directly fetch OFAC data due to SSL handshake errors or missing User-Agent. The solution was to move the ingestion process to GitHub Actions, which has a larger RAM capacity (6 GB) and a normal TLS stack.

2. The XML file (30 MB) cannot fit within the 128 MB Worker RAM. To address this issue, GitHub Actions downloads the XML file, parses it in Node.js, and inserts the data directly into Cloudflare D1 via the D1 HTTP API.

3. The D1 free tier allows only 100,000 row writes per day. A single OFAC ingestion requires ~39,000 writes, which would exceed the quota if performed twice in a day. To resolve this, the ingestion process is scheduled to run once per day at 01:00 UTC, ensuring that the quota resets and is not hit.

The architecture of this system involves GitHub Actions for scheduling and automating tasks, Node.js for parsing and processing data, and Cloudflare D1 for storing the data. The system is composed of several components, including a GitHub Actions workflow, a Node.js script for OFAC ingestion, a Cloudflare Worker for handling requests, and a Cloudflare Pages site for displaying the 100 SEO pages.

Written by urgent.news from Dev.to's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.

Read the original at dev.to →

More in Tech

4 Hours, 9 Channels, 28 Real Events: A Brand-Listening Case Walkthrough

A client asked last month: "Which channels are talking about my brand, and who starts the conversation?" Sounds like a five-minute Google Alerts answer.

  • Four-hour process reveals 9 brand channels from 47 candidates
  • 28 origin events identified, 284 amplifications following
  • Counterfeit scare narrative emerges as most actionable

Mexico Unveils Online Child Safety Rules on 9 October

Mexico's government unveiled an online child safety decree that tells digital platforms to protect minors from harmful content, without setting any penalties.

  • Mexico released child safety decree on 9 October
  • Platforms must prevent minors from harmful content
  • Helpline Línea de la Vida offers psychological support

More from Saturday 10 October →