Scam pattern teardown
Anatomy of a seller-mandate layer cake. EN590 ULSD, Rotterdam loading, all paper, no principal.
The most common pitch shape we see — verbatim across half a dozen brokers in our 2026 outreach pipeline. A 'Pinnacle Petrol LLC' or equivalent intermediary 'is a direct representative of the seller' and 'will provide Mandate Authorization Letter once the deal is underway.' Mandate never surfaces. Principal never surfaces. SPA never gets drafted. Counterparty churns away to the next buyer who'll sign an LOI on this basis.
TL;DR
A broker pitches 50,000 MT of EN590 ULSD loading Rotterdam via “Pinnacle Petrol LLC, a direct representative of the seller.” Spec sheet (sulfur ≤10 ppm, density 820–845 kg/m³, cetane ≥51) is correct because it’s copy-pasted from any EN590 reference page. Requested paper sequence: CIS → LOI → ICPO → POP → SPA. That sequence is the diagnostic — real institutional traders move on NCNDA → indicative offer → term sheet → SPA → L/C. The CIS/LOI/ICPO carousel exists to extract buyer details before any counter-paper materializes from the “principal” who never appears. Three asks collapse it in 24 hours.
The four signals
What gives the pattern away
01
Intermediary self-describes as 'representative,' not principal
A real refinery trade desk represents itself — Shell Trading, Vitol, Glencore. A 'Pinnacle Petrol LLC' that 'will provide a Mandate Authorization Letter once the deal is underway' is naming itself the layer between you and a principal who may not exist.
02
Spec sheet is technically perfect (because it's copy-paste)
EN590 specs are public. Anyone can claim ≤10 ppm sulfur + cetane ≥51. The diagnostic isn't the spec — it's whether the intermediary can name the loading terminal contact, the refinery batch number, the surveyor on standby.
03
Rotterdam loading on uneconomic destinations
Rotterdam loading for an Albanian or SE Asian buyer is geographically real for ARA-origin product but economically backwards for product that 'really' originates in a Persian Gulf or Russian refinery. The corridor is the tell.
04
CIS / LOI / ICPO / POP sequence with paper before principal
Real LCs don't open against a Letter of Intent. Real SPAs aren't drafted against a Proof of Product. The sequence exists to convert your due-diligence willingness into a paper trail the intermediary can show the NEXT broker in the chain.
The three asks that collapse it
What to send back in 24 hours
- Name the actual upstream principal. Not “the seller.” The named legal entity, with a registered office, that will be on the SPA as Seller. Real intermediaries can answer this in one message. Layer-cake intermediaries can’t because the principal doesn’t exist yet — they’re still shopping the deal.
- Share the corporate trade licence and registry entry. DMCC, ACRA, OpenCorporates — pick one. If a Singapore JV is claimed, ACRA is the public record. If a Dubai entity is claimed, DMCC is the public record. The intermediary either appears in the public registry or they don’t.
- Drop CIS / LOI / ICPO. Move to NCNDA → indicative offer → term sheet → SPA → L/C. Real institutional traders sign NCNDAs to share specifics, then move to a term sheet that prices the cargo. The CIS / LOI / ICPO carousel exists to keep the deal in motion without ever pricing it.
Layer-cake intermediaries respond to these three asks with deflection, re-pitch, or silence. A real trade desk responds with names, registry IDs, and a term sheet within a working day.
The API call
The same pattern, surfaced via /api/v1/kyc/screen
When the counterparty's named entity matches a known layer-cake front in our blocklist, the KYC screen returns the match synchronously with full evidence links. Compliance officers can verify each match against the public cluster record in one click.
curl -X POST -H "Authorization: Bearer $KEY" \
-H "Content-Type: application/json" \
"https://oilflow.us/api/v1/kyc/screen" \
-d '{
"company_name": "Pinnacle Petrol LLC",
"country": "United Arab Emirates",
"product": "EN590 ULSD"
}'
{
"ok": true,
"data": {
"verdict": "review",
"checks": {
"cluster_blocklist": {
"status": "fail",
"confidence_score": 0.7,
"evidence_links": ["..."],
"matches": [{
"entity_name": "Pinnacle Petrol",
"severity": "likely",
"pattern": "mandate_chain_layer_cake",
"reason": "Self-described 'representative of seller'; CIS/LOI/ICPO sequence; spec sheet copy-paste."
}]
},
"regulatory_tradability": { "status": "pass", "confidence_score": 0.9 }
}
}
}