PAYCommercial ยท FOMO Pay Pte Ltd

FOMO Pay

Singapore MAS-licensed major payment institution providing a banking-grade API for accounts, balances, virtual accounts, beneficiaries, outgoing transfers and transaction data. Known in SG for QR payment acceptance (PayNow/SGQR) and digital-currency-to-fiat settlement rails for merchants.

How to authenticate

5 stops to a working call

  1. 1Complete FOMO Pay merchant onboarding; generate an RSA key pair (openssl genrsa -out key.pem 2048) and share only the PEM public key with FOMO.
  2. 2After onboarding you receive a CustomerID used as the credential in the authorization header.
  3. 3On each request set headers: host, content-type, x-fomo-date (RFC-3339 Zulu), x-fomo-nonce (16-256 hex chars), x-fomo-content-sha256 (SHA256 of body), x-fomo-api-version.
  4. 4Build the CanonicalRequest (verb, URI, sorted query string, canonical headers, signed headers, hashed payload) and the StringToSign (FOMO1-RSA-SHA256 + timestamp + nonce + SHA256 of CanonicalRequest).
  5. 5Sign with your private key (RSA-SHA256, hex) and send 'authorization: FOMO1-RSA-SHA256 Credential=<CustomerID>,SignedHeaders=...,Signature=<hex signature>'.

Example request

Request
curl 'https://uat.fomoapis.com/v1/transactions?balance_id=2b09efb6-f7b7-4739-96dc-5536ea6444f3' -H 'x-fomo-date: 2025-02-24T07:09:57.589Z' -H 'x-fomo-nonce: 421ae34f7c4ca51050253fd22ac2b23e' -H 'x-fomo-content-sha256: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855' -H 'x-fomo-api-version: v20250212' -H 'authorization: FOMO1-RSA-SHA256 Credential=<CustomerID>,SignedHeaders=content-type;host;x-fomo-api-version;x-fomo-content-sha256;x-fomo-date;x-fomo-nonce,Signature=<hex>'

FOMO Pay: common questions

Is the FOMO Pay free?

The FOMO Pay is listed as contact. Check the official FOMO Pay Pte Ltd docs for current pricing.

Does the FOMO Pay need an API key?

Yes. It uses Restricted. Complete FOMO Pay merchant onboarding; generate an RSA key pair (openssl genrsa -out key.pem 2048) and share only the PEM public key with FOMO. After onboarding you receive a CustomerID used as the credential in the authorization header. On each request set headers: host, content-type, x-fomo-date (RFC-3339 Zulu), x-fomo-nonce (16-256 hex chars), x-fomo-content-sha256 (SHA256 of body), x-fomo-api-version. Build the CanonicalRequest (verb, URI, sorted query string, canonical headers, signed headers, hashed payload) and the StringToSign (FOMO1-RSA-SHA256 + timestamp + nonce + SHA256 of CanonicalRequest). Sign with your private key (RSA-SHA256, hex) and send 'authorization: FOMO1-RSA-SHA256 Credential=<CustomerID>,SignedHeaders=...,Signature=<hex signature>'.

Notes for AI agents

No self-serve signup: you must onboard commercially and exchange RSA public keys before getting a CustomerID, and even FOMO cannot forge requests (private-key signing, AWS-SigV4-style canonical request). Docs examples use the UAT host uat.fomoapis.com; production host is provided at onboarding. Zero-downtime key rotation is supported by registering a second public key.

Machine-readable version: /api/apis/fomo-pay

On the same line