Complete REST API reference for the WCSTA Intelligence Portal
Integrate external platforms — mobile wallets, banks, forex agencies, tax portals — with the WCSTA Intelligence Portal.
Version & Base URL
v1.0
https://api-sandbox.hafide.com/v1/portalApi
Authentication
Pass x-api-source: your-platform header for webhook ingestion. User sessions required for management endpoints.
Content-Type
All requests must send Content-Type: application/json with a JSON body.
Supported Source Types
Webhook Ingestion
Push flagged transactions from any external platform. No user session required — use x-api-source header instead.
Request Fields
| Field | Type | Required | Description |
|---|---|---|---|
| resource | string | Yes | Must be "ingest" |
| source_type | enum | Yes | ecommerce | mobile_payment | wallet | bank_transfer | pos | remittance | crypto | government_tax | forex | other |
| source_platform | string | No | Platform name e.g. Telebirr, Zaad, MoF Tax Portal, Salaam Exchange |
| transactions | array | Yes | Array of transaction objects (see below) |
Transaction Object Fields
| Field | Type | Required | Description |
|---|---|---|---|
| transaction_ref | string | Yes | Unique reference ID from source system |
| merchant_name | string | Yes | Business or entity name |
| amount | number | Yes | Transaction amount |
| currency | enum | Yes | USD | SLSH | ETB | SOS | KES |
| flag_reason | enum | Yes | unusual_volume | price_manipulation | sanctions_match | structuring | identity_mismatch | cross_border_anomaly | duplicate_invoice | tax_evasion_suspect |
| risk_level | enum | No | low | medium | high | critical |
| status | enum | No | pending_review (default) | under_investigation | cleared | escalated | enforcement_action |
| description | string | No | Human-readable description of the flag |
| destination_country | string | No | Target country for cross-border transactions |
| goods_category | string | No | Category of goods involved |
| transaction_date | datetime | No | ISO 8601 datetime of the original transaction |
Example Request
POST https://api-sandbox.hafide.com/v1/portalApi
Content-Type: application/json
x-api-source: hafide
{
"resource": "ingest",
"source_type": "mobile_payment",
"source_platform": "Telebirr",
"transactions": [
{
"transaction_ref": "TBR-2026-00192",
"merchant_name": "Addis Mobile Shop",
"amount": 85000,
"currency": "ETB",
"flag_reason": "unusual_volume",
"risk_level": "high",
"status": "pending_review",
"description": "Bulk payment exceeding daily threshold",
"transaction_date": "2026-04-16T09:30:00Z"
}
]
}Example Response
// Response 201
{
"success": true,
"ingested": 1,
"data": [{ "id": "abc123", "transaction_ref": "TBR-2026-00192", ... }]
}Transactions
Merchants
Bank Integration
Mobile Money Integration
Reports