Cover Page
The formal front matter for this Developer Guide, provided for enterprise procurement, audit, and archival purposes. This section does not affect the technical content below — skip to Introduction to start integrating.
| Product name | FT AML Platform |
| Document title | FT AML Platform — Developer Guide |
| Document version | TODO — Information Required (to be provided by Product Team) |
| Product / platform version | TODO — Information Required (to be provided by Product Team) |
| Release date | TODO — Information Required (to be provided by Product Team) |
| Prepared by | Fyscaltech — Developer Experience & Documentation |
| Confidentiality | Confidential — for the intended customer, partner, or implementation team only. Not for public redistribution. |
This is a living, web-based Developer Guide rather than a fixed PDF release — the version and release date above should be read as "as of the last confirmed update" rather than a frozen snapshot. Ask your Fyscaltech integration contact for a dated export if you need a fixed-point-in-time copy for audit purposes.
Document Control
Version history, review, and approval tracking for this guide. Populated as the guide moves through formal review cycles.
Version history
| Version | Date | Author | Summary of changes |
|---|---|---|---|
| TODO | TODO | TODO | Information Required — to be provided by Product Team |
Reviewers & approvers
| Role | Name | Date reviewed / approved |
|---|---|---|
| Technical reviewer | TODO | TODO |
| Product owner | TODO | TODO |
| Documentation approver | TODO | TODO |
Change log
A running log of substantive content changes to this guide (distinct from the API/product changelog, which tracks changes to the platform itself).
A formal change log for this document will be maintaiyned here once the guide moves into a versioned release cycle.
Table of Contents
A linear index of every section in this guide, generated from the sidebar navigation on the left. Use the sidebar for day-to-day navigation — this section exists for printed/exported copies where the sidebar isn't available.
Generating…
Introduction
This Developer Portal is the integration reference for the FT AML Platform. It is written for customers connecting core systems, partners building integrations, and Fyscaltech implementation teams delivering go-live solutions.
What FT AML does
FT AML is an Anti-Money Laundering (AML) platform that helps financial institutions detect suspicious activity, screen customers against regulatory watchlists, perform callback name screening, monitor transactions, and manage compliance investigations.
Integration Capabilities
- Bulk upload via S3 — Explicitly supported for loading or refreshing large volumes of Customer, Account, Transaction, and Watchlist datasets into FT AML via AWS S3.
- API Callback Integration — Capability to integrate Name Screening API and Customer Ingestion API.
Bulk upload via S3 and Callback integrations are fully documented in this portal. Token-passing information, request tracing details, and API signature specifications will be provided directly by Fyscaltech.
Who does what
Customers
Provide source data (Customer, Account, Transaction, Watchlist) via API key or AWS access.
Partners
Build integrations using provided API callbacks and S3 bulk upload pathways.
System Requirements & Prerequisites
FT AML is delivered as a hosted (SaaS) platform. Requirements and prerequisites focus on client-side connectivity, firewall settings, access provisioning, network configuration, and third-party software.
What you need on your side
| Outbound network access | HTTPS (443) outbound to FT AML API endpoints with IP whitelisting configured as a prerequisite. |
| TLS support | TLS 1.2 or higher on any client making API calls or S3 uploads. |
| Supported browsers | Google Chrome, Microsoft Edge, Mozilla Firefox, Apple Safari for console access. |
| API Signature | API signature capabilities and signing specifications will be added/provided by Fyscaltech. |
Firewall & SSL requirements
- Allow outbound HTTPS (443) to FT AML API hostnames with IP whitelisting active.
- Allow outbound HTTPS to AWS S3 bucket regions for Bulk upload via S3.
- TLS 1.2+ certificate validation required.
Access & Prerequisites
- Access Provisioning — API key or AWS access are the ways customers will be given access by Fyscaltech during onboarding.
- Outbound Network Access — IP whitelisting in Outbound Network Access is required as a mandatory prerequisite for connecting to FT AML endpoints.
Network & DNS
- Standard public DNS resolution to Fyscaltech-provided hostnames.
- Outbound network access requires IP whitelisting on port 443 (HTTPS).
- If receiving webhooks/callbacks, provide a publicly reachable HTTPS endpoint with a valid DNS name and TLS 1.2+ certificate.
Third-party software
- AWS CLI — For Bulk upload via S3.
- An HTTP client capable of TLS 1.2+ — For Customer Ingestion API and Screening API calls. Plain JSON over HTTPS.
Quick Start
If you're an external developer integrating FT AML into your own systems for the first time, this is the one section to read start to finish — everything else in this portal is reference material you'll come back to as you go.
The fastest path from zero to a working integration follows the same six steps regardless of which integration method you end up using day to day.
- Request API credentials — contact the Fyscaltech integration team (see Support) to start onboarding. They'll confirm which integration method(s) fit your use case.
- Receive non-prod access — where a non-prod/test environment applies to your chosen method, credentials and connection details are issued as part of onboarding (see Testing & non-prod).
- Upload a sample customer — load a small test file via Bulk upload (50–100 rows is plenty), or a single record via the Customer Ingestion API, to confirm your data format is accepted.
- Call the Screening API — submit a customer's full name to
/screenand confirm a result comes back in the response. - Check the delivery mechanism for ingestion-triggered screening — if you plan to rely on
name_screening_enabledduring ingestion instead of calling the Screening API directly, confirm with Fyscaltech how that result reaches you before building against it. - View the screening result — check the FT AML console (Alert Manager, or Name Screening) to see the same result reflected on the platform side.
If you're not sure which integration method fits your volume and timeline, read Integration Methods and the "Which one should I use?" table first — then bring that shortlist to the Fyscaltech integration team.
Platform & Architecture
The FT AML Platform is built as a high-throughput, multi-tenant SaaS architecture designed for real-time customer name screening, bulk dataset ingestion, transaction monitoring, and case management.
Architectural Overview
Data Ingestion Engine
Supports both real-time Customer Ingestion APIs and asynchronous high-volume bulk CSV uploads via AWS S3.
Fuzzy Screening Core
Ultra-fast name screening engine matching against PEPs, sanctions, and custom watchlists with configurable thresholds.
Scalability & Availability
- Fully managed SaaS infrastructure with continuous automated failover across availability zones.
- Isolated client tenant routing ensuring data privacy and zero cross-tenant contamination.
- Asynchronous event-driven webhook callbacks for instant alert notifications.
Installation Guide
FT AML is a hosted (SaaS) platform. This guide documents the setup steps required on your side to connect and verify reachability.
Step 1 — Request access
Objective: Obtain access credentials from Fyscaltech.
Customers will be given access via API key or AWS access during onboarding. Contact Fyscaltech implementation teams to receive your credentials.
Step 2 — Set up the AWS CLI (Bulk upload via S3)
Objective: Authenticate AWS CLI or S3 SDK for file uploads.
aws configure
Validation:
aws s3 ls s3://<bucket>/<client-id>/
Access Denied on this command almost always means the client id in the path doesn't match the one issued to you, credentials belong to a different environment (Non-Production vs. Production), or the path itself may be incorrect.Step 3 — Confirm API reachability
Objective: Verify network reachability to active API endpoints over HTTPS.
Submit a test JSON payload to the active Screening API endpoint:
{
"request": "POST /riskradar/core/api/v1/screen",
"headers": {
"Content-Type": "application/json"
},
"body": {
"customer_name": "Test User"
}
}
Equivalent curl verification:
curl -i -X POST https://<host>/riskradar/core/api/v1/screen \
-H "Content-Type: application/json" \
-d '{"customer_name": "Test User"}'
Expected output: An HTTP 200 response with a JSON envelope containing code and data.
Step 4 — Verification checklist
- AWS CLI (or SDK) authenticates and lists your client-id S3 path — Bulk upload path
- Test HTTPS call to active Screening API endpoint returns valid JSON response
- Environment (Non-Production or Production) confirmed with Fyscaltech
Configuration Guide
Configuration guidance for FT AML integrations.
Environments
FT AML operates under exactly two environments:
- Non-Production — Dedicated Non-Production environment for integration development, testing, and staging.
- Production — Live production environment for active customer ingestion, transaction monitoring, and screening.
Database Configuration
Database requirements, custom watchlist database integration, schema standards, and data persistence specifications for FT AML integrations.
Database Architecture & Indexing
FT AML manages underlying data persistence automatically. For clients bringing custom watchlist databases or maintaining local data stores, adhere to the following guidelines:
- Custom Watchlists — Store watchlist records with unique identifiers and ISO-compliant country codes.
- UTF-8 Character Set — Mandatory UTF-8 encoding for full international character and multi-language name support.
- Indexing — Index
customer_id,customer_name, andscreening_idfields for fast local lookups.
Data Retention & Backups
Ingested customer records and historical screening results are persisted securely in compliant storage with automated encrypted daily backups and standard audit trail logging.
Core Concepts
Fundamental domain concepts used throughout the FT AML Platform.
Customer Records
Individual or entity profiles tracked for AML risk assessment and screening.
Watchlist
Watchlists represent collections of sanctioned entities, Politically Exposed Persons (PEPs), and custom high-risk individual/entity lists. Customers can bring their own custom watchlist or integrate compatible global list datasets, such as LSEG (London Stock Exchange Group) and other standard provider lists.
Alerts & Cases
Screening and transaction monitoring matches generate alerts that compliance analysts review in the FT AML Console.
Integration Methods
Which one should I use?
Choose Bulk upload via S3 for batch processing datasets, or the Customer Ingestion API and Screening API for real-time customer updates and on-demand screening. API Callback integration handles asynchronous screening events.
| Integration Method | Primary Use Case | Latency & Mode | Data Format |
|---|---|---|---|
| Bulk upload via S3 | Loading large volume batch customer, account, transaction, or watchlist files. | Asynchronous / Batch processing upon S3 upload | CSV files via AWS S3 |
| Customer Ingestion API | Real-time customer record creation and profile modification. | Synchronous / Real-time processing | JSON over HTTPS |
| Screening API | On-demand instant name screening against sanctions, PEPs, and watchlists. | Synchronous / Immediate API response | JSON over HTTPS |
Bulk data ingestion (CSV via S3)
Getting access
Access is provisioned via AWS access (S3 bucket & credentials) or API key by Fyscaltech.
Ingestion Mode
Bulk CSV ingestion operates without a fixed schedule. Files uploaded to designated S3 folders are automatically ingested and processed upon upload.
Screening Integration
Ingested customer data automatically triggers screening against active watchlists and sanctions databases as part of the ingestion pipeline.
Build Your Integration
This section details where and how to upload data for each core domain within FT AML:
1. Where to upload Customer data
Upload Customer profile CSV files to your designated S3 bucket customer directory:
s3://<bucket>/<client-id>/customer/customer_<timestamp>.csv
2. Where to upload Account data
Upload Customer Account CSV files to your designated S3 bucket account directory:
s3://<bucket>/<client-id>/account/account_<timestamp>.csv
3. Where to upload Transaction data
Upload Transaction CSV files to your designated S3 bucket transaction directory:
s3://<bucket>/<client-id>/transaction/transaction_<timestamp>.csv
4. Where/how to upload Watchlist data
Upload custom or third-party Watchlist datasets to your designated S3 bucket watchlist directory:
s3://<bucket>/<client-id>/watchlist/watchlist_<timestamp>.csv
Watchlist Data Specifications: Customers can bring their own custom watchlist or use compatible industry list providers. FT AML supports standard watchlist lists, including LSEG (London Stock Exchange Group) and other compatible screening provider formats.
Customer Ingestion API
Endpoint for real-time customer profile creation and modification.
Request Payload
{
"customer_id": "CUST-10029",
"customer_name": "Jane Doe",
"dob": "1985-04-12",
"country": "US",
"name_screening_enabled": true
}
Validation Rules
customer_id— Required string. Unique customer identifier.customer_name— Required string. Non-empty.dob— Optional ISO date format (YYYY-MM-DD).country— Optional 2-letter ISO country code.
API Status Codes
| Status Code | Meaning | Description |
|---|---|---|
| 200 OK | Success | Request processed successfully. |
| 400 Bad Request | Validation Error | Invalid payload structure or missing required fields. |
| 401 Unauthorized | Authentication Error | Invalid or missing API credentials. |
| 500 Internal Server Error | System Failure | Platform processing or system failure. |
| 503 Service Unavailable | Service Unavailable | Service temporarily unavailable. |
Screening API
Active Endpoint: POST /riskradar/core/api/v1/screen
Performs real-time fuzzy name matching against sanctions, PEPs, and watchlists.
The endpoint /screen is deprecated and has been removed from Backoffice documentation. All screening integrations must use the standard /screen endpoint.
Request Payload
{
"customer_name": "John Smith",
"threshold": 0.8,
"include_pep": true
}
Response Envelope
{
"code": "00000",
"message": "Success",
"data": {
"screening_id": "SCR-99482",
"matches_found": 1,
"results": [
{
"entity_name": "John Smith",
"score": 0.92,
"matched_list": "LSEG World-Check / Sanctions"
}
]
}
}
Authentication
Authentication and authorization for FT AML platform access.
Token-passing information and authentication credentials will be provided directly by Fyscaltech during onboarding.
- API Key Access — For Customer Ingestion API, Screening API, and API callback integration. Token-passing details provided by Fyscaltech.
- AWS Access — S3 bucket access credentials provided by Fyscaltech for Bulk upload via S3.
Module-wise Integration Guide
Step-by-step integration specifications across the core functional modules of the FT AML Platform.
1. Customer Ingestion Module
Manages customer profiles and updates. Integrate via the Customer Ingestion API or S3 Bulk Upload.
2. Name Screening Module
Real-time fuzzy name matching against sanctions & PEP watchlists using the Screening API (/screen).
3. Watchlist Management Module
Upload and maintain custom watchlists (including LSEG World-Check and internal blacklists).
4. Alert & Case Management Module
Receive webhook events and manage suspicious activity review workflows in the FT AML Console.
Integration Workflows
There are two distinct request patterns depending on which APIs you use — a synchronous flow where the screening result comes back in the same response, and an asynchronous flow where it's delivered later to your webhook.
Flow A — synchronous (Screening API called directly)
(already ingested)
(full name)
in the response
Flow B — asynchronous (ingestion-triggered screening)
The Customer Ingestion API accepts a name_screening_enabled field (defaulting to true when omitted), so ingesting a customer can trigger screening as a side effect rather than requiring a separate call to the Screening API. What isn't yet confirmed in this documentation is the exact delivery mechanism for that result back to your system — likely a webhook, but confirm the specifics with your Fyscaltech integration contact before building against it.
(name_screening_enabled: true)
as a side effect
— confirm with Fyscaltech
Bulk upload — batch (sits outside both flows)
Bulk upload uploads are for getting Customer, Customer Account, and Customer Transaction data into the platform in volume, rather than triggering an immediate screening result back to your system. Screening or monitoring against that data happens on the platform's own schedule (see Name Screening's Batch and Delta Screening, and Transaction Monitoring's execution intervals) rather than as a direct response to the upload.
Choosing sync vs. async
| Pattern | Use it when |
|---|---|
| Synchronous (Flow A) | You need the result immediately in your own onboarding flow — e.g. blocking account opening until screening completes |
| Asynchronous (Flow B) | You're already pushing customer records via the Ingestion API and prefer not to poll — results land on your webhook as they complete |
| Batch (Bulk upload) | You're loading or refreshing large populations, and don't need a per-record result back in real time |
Full request/response detail for both APIs is now documented under Integration Methods. Visual sequence-timing diagrams aren't available yet, but the endpoint paths, payload shapes, and response envelopes above are enough to build against.
Webhooks & Events
A webhook would only be relevant if you're using the Customer Ingestion API's name_screening_enabled flag to trigger screening as part of ingesting a customer record, rather than calling the Screening API directly. Whether delivery actually happens via webhook — versus some other mechanism — isn't confirmed yet; the pattern below is the expected shape, not a confirmed spec.
How it works (expected pattern, not yet confirmed)
- Unlike Bulk upload, a webhook endpoint would be hosted and owned by you, not Fyscaltech
- Fyscaltech would provide the request format and signature-verification guidelines once finalized
Confirmed event names and payload structures for webhook deliveries haven't been provided yet. What is confirmed: ingestion accepts a name_screening_enabled flag (see Customer Ingestion API), so screening can run as a side effect of ingestion — the exact event/delivery format for that result is what's pending here.
This webhook is only needed for the ingest-then-screen flow through the Customer Ingestion API. If you only use bulk upload ingestion, or call the Screening API directly for each check, you don't need to set up a webhook at all.
Errors, Limits & Best Practices
Error codes, handling strategies, and platform error responses.
Business Error Codes
| Error Condition | Error Code | HTTP Status | Classification |
|---|---|---|---|
| System failure | SWW01 | 500 | System failure |
| System failure | SYSTEM_FAILURE | 503 | System failure |
| Invalid JSON payload | BAD_REQUEST | 400 | Validation Error |
| Authentication failure | UNAUTHORIZED | 401 | Authentication Error |
Deployment Guide
Instructions for deploying, configuring, and promoting FT AML integrations from staging to production.
Pre-Deployment Checklist
- Confirm API keys and AWS S3 bucket credentials are generated for the target production environment.
- Ensure outbound HTTPS (443) firewall rules and IP whitelisting are active on client servers.
- Verify TLS 1.2+ certificate validation on all client API communication channels.
- Test end-to-end webhook delivery endpoints using valid public SSL certificates.
Promoting to Production
Once non-prod testing is complete, switch API base URLs to the production endpoint hostname provided during onboarding, update API keys, and run a single test record verification.
Testing & non-prod
Guidelines for testing integrations in Fyscaltech sandbox and non-production environments.
Non-Prod Sandbox Setup
Fyscaltech provides a dedicated non-production environment for integration development, test file uploads, and dry-run screening API calls.
- Test Credentials — Separate API keys and test S3 bucket paths issued during onboarding.
- Sample Data Verification — Upload test files (50–100 records) to confirm schema formatting before volume testing.
- Mock Screening Calls — Execute test requests against
/screenusing test customer names to verify match scoring.
Validation Checklist
Complete this checklist to verify your integration before go-live.
- API key or AWS access credentials received from Fyscaltech.
- IP whitelisting configured for Outbound Network Access.
- Bulk upload via S3 paths verified for Customer, Account, Transaction, and Watchlist datasets.
- Active Screening API endpoint (
/screen) verified with test JSON payload. - API callback integration configured and callback name screening verified.
- Non-Production and Production environment separation confirmed with Fyscaltech.
Logging
Logging and request tracing specifications.
Request Tracing
Request tracing information and tracking header specifications will be provided/told by Fyscaltech.
Security Best Practices
Security standards for integrating with the FT AML platform.
Secrets Management
- Store API keys and AWS credentials in secure secrets managers.
- Never embed credentials in client-side or browser-based code.
Transport & Certificates
- Enforce TLS 1.2 or higher for all API and S3 connections.
- Validate server TLS certificates.
Access Control & Least Privilege
Access control information, IAM policy specifications, and role permission details will be provided directly by Fyscaltech.
Troubleshooting & FAQ
Common issues
| Problem | Possible cause | Resolution | Commands | Where to check |
|---|---|---|---|---|
| Bulk upload file stuck in Processing | Encoding or column issue in the source file | Re-export as UTF-8 with the exact header; re-upload; escalate to Fyscaltech if it doesn't clear | aws s3 ls s3://<bucket>/<client-id>/jobs/ | Console → Data Ingestion |
| Whole upload file rejected | Header row doesn't match exactly (spelling, order, case, extra spaces) | Copy the header line verbatim from Bulk upload | — | rejected/customer/ or rejected/account/ in S3 |
| Individual upload rows rejected | REQUIRED, INVALID_ENUM, INVALID_DATE, DUPLICATE, MAX_LENGTH_EXCEEDED, or COLUMN_COUNT_MISMATCH — see Common problems | Fix the specific rows named in the error report and re-upload only those rows in a new file | — | jobs/<run>/errors/ in S3 |
| Screening API returns no matches for a known name | Name submitted differs from the registered form, or no watchlist entry exists | Confirm exact spelling; remember matching is on full name only today — not date of birth, address, or citizenship | — | Re-run via /screen to compare |
| Customer Ingestion call succeeds but no screening result appears | name_screening_enabled not set as expected, or delivery mechanism not yet wired on your side | Confirm the field was sent as intended (default is true); check Alert Manager directly — result-delivery mechanism isn't confirmed yet, see Webhooks & Events | — | Console → Alert Manager / Name Screening |
| Accounts silently not loaded | Their customer hasn't reached the platform yet, or was itself rejected | Upload the customer file first and confirm it wasn't rejected before uploading accounts | aws s3 ls s3://<bucket>/<client-id>/processed/customer/ | S3 processed/ vs rejected/ |
| Connection timeout calling any API | Outbound firewall rule missing — see System Requirements | Confirm HTTPS (443) outbound is allowed to the FT AML host | curl -v https:// | Your own network/firewall logs |
Frequently asked questions
Can we use more than one integration method at once?
Yes — most institutions use Bulk upload for the initial customer population, then the Customer Ingestion API and/or Screening API for ongoing, real-time updates.
Do we need a webhook if we only use the Screening API?
No. Calling the Screening API directly returns the result in the same response — a webhook is only needed for the ingest-then-screen flow via the Customer Ingestion API.
Is there a non-prod we can test against before going live?
Not confirmed yet — see Testing & non-prod.
Can the Screening API match on more than full name?
Not currently — it supports full name matching only. Additional matching fields (date of birth, address, citizenship) are available through Manual Screening in the console today.
Where do we find upcoming API changes before they land?
Keep a point of contact with the Fyscaltech integration team, and check Resources & Changelog once a public changelog is published.
What happens if I upload a Bulk upload file with the wrong header?
The entire file is rejected and moved to rejected/customer/ or rejected/account/ — no rows are processed. Copy the header line exactly from Bulk data ingestion (upload via S3) rather than retyping it.
Is the Customer Ingestion API synchronous or asynchronous?
Asynchronous. It returns 202 Accepted immediately after validating and publishing an event — the actual database write happens moments later via a background consumer, not within the request. See Customer Ingestion API.
Do I need to install anything to integrate with FT AML?
No. FT AML is a hosted platform — there's no server software to install on your side. See Installation Guide for the (lightweight) one-time setup that applies instead.
Glossary
Terms and field names used throughout this Developer Portal, defined for anyone integrating for the first time.
| Term | Meaning |
|---|---|
| AML / CTF | Anti-Money Laundering / Counter-Terrorist Financing |
| KYC | Know Your Customer — the due-diligence fields carried on a Customer Record (kyc_level, kyc_level_description, kyc_authorized_signatory_name) |
| PEP | Politically Exposed Person — surfaced on a Customer Record as pep_flag |
customer_type | Whether a record is Individual or Corporate (Customer Ingestion API) / Individual or Entity (Screening API) — the two APIs use slightly different values for this field |
risk_level / risk_score | The customer's assessed AML risk, as a category (LOW/MEDIUM/HIGH) and a numeric score |
sanctions_status | Whether a customer has a known sanctions hit on file, independent of a live Screening API call |
| Watchlist | The sanctions/PEP/adverse-media data source the Screening API matches against |
| Full name screening | Matching based on the customer's full name — currently the only field the Screening API supports |
alert_score / alert_category | The Screening API's match confidence (0–100) and its banded severity (e.g. HIGH) |
entity_key / screening_id | Identifiers in a Screening API response used to trace a specific screening run |
| Bulk ingestion | Loading data via upload file upload to S3, as opposed to the record-by-record Customer Ingestion API |
| MLRO | Money Laundering Reporting Officer — approves SAR/STR filings |
| SAR / STR | Suspicious Activity / Transaction Report filed with regulators |
Additional terms will be added here as more of the platform's API surface is confirmed.
Developer Community
A space for developers integrating with FT AML to ask questions, share patterns, and hear from each other — not just from Fyscaltech directly.
This section is a placeholder — content, links, and setup for a developer community (forum, Slack/Discord, discussion board, or similar) will be added here once provided.
Resources & Changelog
Downloadable and reference materials to speed up integration work. Anything not yet available will be published soon once received from technical team.
Postman Collection
A ready-to-import collection covering the Customer Ingestion and Screening APIs. Will be published soon once received from technical team.
PendingOpenAPI Specification
Machine-readable spec for generating clients or importing into your own API tooling. Will be published soon once received from technical team.
PendingUpload Templates
The exact Customer and Account file headers are already documented in full under Bulk upload via S3 — copy them directly from there.
AvailableRelease Notes
A running log of platform and API changes. Will be published soon once received from technical team.
PendingSDKs
Official client libraries for common languages, planned for a future release.
FutureFyscaltech Integration Team
The most reliable resource today — see Support for contact details.
AvailableChangelog & versioning
As the Customer Ingestion and Screening APIs move from onboarding-provided specifications toward a stable published reference, changes will be communicated directly by the Fyscaltech integration team. If you're integrated against either API, keeping a point of contact with the team (see Support) is the most reliable way to hear about upcoming changes before they land.
A formal versioning policy and public changelog will be published here once the API reference itself is finalized.
Support
- In-app: Homepage > Help & Support
- Email: hello@fyscaltech.com
- Phone: +65 8080 5424
- Headquarters: Singapore · 68 Circular Road
- Account-level issues (API key provisioning, permissions) — contact your organization's Admin
What to include when you contact us
To help us resolve integration issues quickly, please include: the environment (Non-Production/Production), the endpoint and HTTP method, the X-Request-Id from the response headers if available, and a timestamp of when the issue occurred.
Thank you for building on FT AML.
Appendix
Reference material collected in one place: acronyms, configuration templates, and sample payloads — each cross-referenced back to its full documentation elsewhere in this guide rather than duplicated in full.
Acronyms
| Acronym | Meaning |
|---|---|
| AML | Anti-Money Laundering |
| CTF | Counter-Terrorist Financing |
| KYC | Know Your Customer |
| PEP | Politically Exposed Person |
| MLRO | Money Laundering Reporting Officer |
| SAR / STR | Suspicious Activity / Transaction Report |
| API | Application Programming Interface |
| JSON | JavaScript Object Notation |
| upload | Comma-Separated Values |
| S3 | Amazon Simple Storage Service |
| SNS / SQS | Amazon Simple Notification Service / Simple Queue Service |
| TLS | Transport Layer Security |
| IAM | Identity and Access Management (AWS) |
Glossary
The full term-by-term glossary lives in its own section — see Glossary for every field name and platform term used throughout this guide.
References & external links
- FT AML product page
- FT AML User Guide — the console/end-user reference, as distinct from this Developer Guide
- Fyscaltech integration team — see Support
Configuration templates
Copy-paste-ready header rows for Bulk upload — full column-level reference is under Bulk data ingestion (upload via S3).
Customer file header (52 columns):
CUSTOMER_ID,CUSTOMER_TYPE,CUSTOMER_NAME,STATUS_CODE,CUSTOMER_SEGMENT_CODE,CUSTOMER_SEGMENT_NAME,RISK_LEVEL,RISK_SCORE,KYC_LEVEL,KYC_LEVEL_DESCRIPTION,PEP_FLAG,SANCTIONS_STATUS,SOURCE_OF_FUNDS,KYC_AUTHORIZED_SIGNATORY_NAME,ONBOARDING_DATE,ONBOARDING_CHANNEL,STREET,CITY,PROVINCE_REGION,ADDRESS_COUNTRY,POSTAL_CODE,CITIZENSHIP_COUNTRY,RESIDENCE_OPERATION_COUNTRY,BIRTH_INCORPORATION_COUNTRY,CUSTOMER_CONTACT_NO,ACCOUNT_TYPE,ACCOUNT_OPEN_DATE,ACCOUNT_AGE_DAYS,EXPECTED_MONTHLY_SPEND,EXPECTED_MONTHLY_SPEND_CURRENCY,EXPECTED_TXN_FREQUENCY,PURPOSE_OF_ACCOUNT,FIRST_NAME,MIDDLE_NAME,LAST_NAME,GENDER,DATE_OF_BIRTH_OR_INCORPORATION,CUSTOMER_AGE,CUSTOMER_ALIASES,CUSTOMER_ID_NO,CUSTOMER_ID_TYPE,CUSTOMER_ID_EXPIRY_DATE,CUSTOMER_ID_ISSUE_DATE,CUSTOMER_ID_COUNTRY,DESIGNATION,EMPLOYER_NAME,DECLARED_INCOME,INCOME_CURRENCY,NATURE_OF_BUSINESS,COUNTRY_OF_OPERATIONS,CREATED_AT,UPDATED_AT
Account file header (13 columns):
ACCOUNT_NUMBER,CUSTOMER_ID,ACCOUNT_TYPE,ACCOUNT_NAME,ACCOUNT_CURRENCY_CODE,ACCOUNT_BANK_NAME,ACCOUNT_BANK_COUNTRY,ACCOUNT_STATUS,ACCOUNT_HOLDING_TYPE,SIGNATORY_CUSTOMER_ID,SIGNATORY_NAME,CREATED_AT,UPDATED_AT
Sample requests & responses
Customer Ingestion API — full reference at Customer Ingestion API:
POST /datahub/ingestion/v1/customerContent-Type: application/json
{ "customer_id": "CUST-1001", "customer_name": "Jane Doe", "customer_type": "Individual" }
202 Accepted{ "code": "00000", "message": "success" }
Screening API — full reference at Screening API:
POST /riskradar/core/api/v1/screenContent-Type: application/json
{ "customer_name": "Jane Doe", "customer_type": "Individual" }
200 OK{ "code": "00000", "message": "Success", "data": { "screening_result": { "alert_score": 87.5, "alert_category": "HIGH" } } }
Documentation standards used in this guide
- Confirmed technical detail is stated directly; anything not yet confirmed by the technical team is marked with a "Will be published soon" callout or a TODO — Information Required tag, rather than guessed at.
- Existing screenshots and diagrams from the original guide are preserved as-is; new diagrams use the same flow-box/flow-arrow visual pattern already established in Integration Workflows.
- Every numbered procedure includes an objective, the exact commands, expected output, and a validation step, consistent with Installation Guide.