Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
const secret = "abcdefg";
function generateSignature(string) {
return require("node:crypto")
.createHmac("sha256", secret) // your secret key
.update(string)
.digest("base64");
}
const signature = generateSignature(stringIdFromMyDatabase);
const callbackUri =
"https://my-webhooks.example.com/flashfx?signature=" + signature;
const externalId = stringIdFromMyDatabase;
// Use both callbackUri and externalId when creating transfers with Flash Payments APIfunction myCallbackEndpointHandler(req, res) {
const signature = req.query.signature;
const stringIdFromMyDatabase = req.body.externalId;
if (generateSignature(stringIdFromMyDatabase) !== signature) {
console.error("Security warning! Webhook endpoint received bad data", req);
res.sendStatus(500);
return;
}
// continue with the webhook processing
}Sub-client VANs lifecycle
Disburse your money to a third party bank account
Convert between your multi-currency balances
enum ConversionStatus {
INITIALISED
PENDING
CONVERTED
FAILED
CANCELLED
}General information how to start using Flash Payments API
echo '{
"query":
"{
quote(input: {
fromCurrency: AUD, toCurrency: USD, size: 9.9, currency: AUD
})
{
bid ask symbol timestamp inverted
}
}"
}' | curl -X POST 'https://api.uat.flash-payments.com.au' \
-H 'authorization: Bearer YOUR_TOKEN' \
-H 'content-type: application/json' \
-d @-{
"data": { ... },
"errors": [ ... ]
}Here is how to identify the mandatory input fields for your GraphQL queries and mutations.
Deposit processing statuses
Convert and send your balance as single instruction
Screen individuals and organisations against adverse media sources
Query your master account balances
Generate named Virtual Account Numbers (aka sub-clients) for your clients' for collection
How to handle a payout rejection
Explains how to accept deposits programmatically
Return the funds back to the original sender
lastNameavailableDeliveryMethods - query countries/currency combinations we support and what the required bank account details are.
{
"currencies": ["AUD"]
}const bodyJSON = {
operationName: "balances",
variables: {
currencies: ["AUD"],
},
query: `
query balances($currencies: [CurrencyIso3]) {
balances(currencies: $currencies) {
currency cleared pending
}
}`,
};query balances($currencies: [CurrencyIso3]){
balances(currencies: $currencies) {
currency
cleared
pending
}
}CANCELLATION_REQUESTED_BY_PARTICIPANT
CANCELLATION_BY_RECIPIENT_FI
COMPLIANCE_DECLINED
COMPLIANCE_DECLINED_EXTERNAL
SENDER_INADEQUATE_DATA
SENDER_INVALID_ADDRESS
SENDER_INCOMPLETE_ADDRESS
RECIPIENT_INADEQUATE_DATA
RECIPIENT_INVALID_ADDRESS
RECIPIENT_INCOMPLETE_ADDRESS
DATA_ENQUIRY_TIME_ELAPSED
DATA_ENQUIRY_RESPONSE_INADEQUATE
SOURCE_OF_FUNDS_INADEQUATE
DUPLICATE_TRANSACTION
TECHNICAL_ISSUE
RECIPIENT_ACCOUNT_CLOSED
RECIPIENT_INVALID_ACCOUNT_NUMBER
RECIPIENT_INVALID_BANK_CODE
RECIPIENT_INVALID_ACCOUNT
RECIPIENT_COUNTRY_NOT_SUPPORTED
RECIPIENT_CURRENCY_NOT_SUPPORTED
EXPIREDconst bodyJSON = {
variables: {
id: "6053d4e0e3bc655e0598a742",
input: {
amount: 10,
reason: "sent by mistake",
},
},
query: `
mutation ($id: ID!, $input: RefundDepositInput!) {
refundDeposit(id: $id, input: $input) {
success code message
}
}`,
};mutation($id: ID!, $input: RefundDepositInput!) {
refundDeposit(id: $id, input: $input) {
success
code
message
}
}enum PaymentStatus {
INITIALISING
OPEN
CLOSED
FAILED
CANCELLED
}{
"data": {
"balances": [
{
"currency": "AUD",
"cleared": 3860,
"pending": 0
}
]
}
}{
"id": "6053d4e0e3bc655e0598a742",
"input": {
"amount": 10,
"reason": "sent by mistake"
}
}{
"data": {
"refundDeposit": {
"success": true,
"code": "REFUND_SENT",
"message": "Refund initiated successfully"
}
}
}Understand every movement of your primary balance
const bodyJSON = {
variables
query($input: StatementQueryInput!) {
{
"input": {
"fromDate": "2023-08-28T00:00:00+03:00",
"currency": "USD"
}
}{
"data": {
"statement": [
{
"success": true,
"code": "GENERATED",
"message": "Statement generated",
"fromDate": "2023-08-27T21:00:00Z",
"toDate": "2023-08-28T21:00:00Z",
"rows": {
[
{
"debit": 123.45,
"credit": 0
}
]
}
}
]
}
}Withdrawal processing statuses
RFI lifecycle statuses
Verify that a payee's account name matches their bank account details
Here is how to send your data to us as JSON instead of embedding it into the GraphQL queries.
Respond to compliance information requests programmatically
All reply codes and GraphQL errors
Validate and standardise physical addresses
When you cannot provide the requested information
FAILED - NOT FINAL status. Depending on the processing error we have three scenarios now.const bodyJSON = {
variables: {
input: {
accountIdType: "BSB",
bsb: "012003",
accountNo: "123456789",
accountName: "John Smith",
},
},
query: `
mutation ($input: CopInput!) {
confirmationOfPayee(input: $input) {
success code message billable
}
}`,
};mutation ($input: CopInput!) {
confirmationOfPayee(input: $input) {
success
code
message
billable
}
} {
"input": {
"accountIdType": "BSB",
"bsb": "012003",
"accountNo": "123456789",
"accountName": "John Smith"
}
}{
"data": {
"confirmationOfPayee": {
"success": true,
"code": "MATCH",
"message": "Account name matches",
"billable": true
}
}
}Retry-After: 59{
success: false,
code: "TOO_MANY_REQUESTS",
message: "Retry after 1 min",
retrySecs: 59
}QueryInputecho '{
"query":
"{
quote(input: {
fromCurrency: AUD, toCurrency: USD, size: 9.9, currency: AUD
})
{
bid ask symbol timestamp inverted
}
}"
}' | curl -X POST 'https://api.uat.flash-payments.com.au' \
-H 'authorization: Bearer YOUR_TOKEN' \
-H 'content-type: application/json' \
-d @-echo '{
"query":
"query ($input: QuoteInput!) {
quote(input: $input) { bid ask symbol timestamp inverted }
}",
"variables": {
"input": { "fromCurrency": "AUD", "toCurrency": "USD", "size": 9.9, "currency": "AUD" }
}
}' | curl -X POST 'https://api.uat.flash-payments.com.au' \
-H 'authorization: Bearer YOUR_TOKEN' \
-H 'content-type: application/json' \
-d @-echo '{
"query":
"mutation ($input: RecipientInput!) {
createRecipient(input: $input) { code message recipient { id } }
}",
"variables": {
"input": {
"firstName": "Test",
"lastName": "Lastest",
"currency": "PHP",
"accountIdType": "PH_CASH",
"mobile": "+63 9121231234",
"phCashoutNetwork": "MLHUILLIER",
"address": {
"building": "12th Floor Centerpoint Building",
"street": "Julia Vargas Avenue corner Garnet Street",
"suburb": "Pasig",
"state": "manila",
"country": "PH",
"postcode": "1605"
}
}
}
}' | curl 'https://api.uat.flash-payments.com.au' \
-H 'authorization: Bearer YOUR_TOKEN' \
-H 'content-type: application/json' \
-d @-CANCELLATION_REQUESTED_BY_PARTICIPANT ;const bodyJSON = {
variables
mutation($input: DeclineRfiInput!) {
{
"input": {
"rfiId": "61f3a2c8d1e9b7a4c5d6e7f8"
}
}{
"data": {
"declineRfi": {
"success": true,
"code": "MARKED",
"message": "RFI marked as unanswered",
"rfi": {
"id": "61f3a2c8d1e9b7a4c5d6e7f8",
"status": "CLOSED",
"statusMessage": "You specified that you are unable to comply. Relevant transfers can be cancelled."
}
}
}
}const bodyJSON = {
variables
query($input: DepositQueryInput!) {
{
"input": {
}
}{
"data": {
"deposits": [
{
"id": "6053d4e0e3bc655e0598a742",
"amount": 2000,
"currency": "AUD",
"status": "CONFIRMED",
"statusMessage": "Transaction Confirmed",
"externalId": "PR.1vcl",
"externalReference": "FX1111",
"subClient": null,
"createdAt": "2021-03-18T22:32:01.010Z"
},
{
"id": "6053d3319588389e1443587e",
"amount": 40,
"currency": "AUD",
"status": "CONFIRMED",
"statusMessage": "Transaction Confirmed",
"externalId": "PR.1vci",
"externalReference": "FX2121",
"subClient": {
"id": "5fb314cb9224595df522db61",
"fullName": "John Doe",
"status": "ACTIVE",
"clientType": "INDIVIDUAL"
},
"createdAt": "2021-03-18T22:24:49.096Z"
},
]
}
}const bodyJSON = {
variables
query($input: ID) {
{
# there are more query parameters available, see the API schema
"input": "6053d4e0e3bc655e0598a742"
}{
"data": {
"deposit": {
"id": "6053d4e0e3bc655e0598a742",
"amount": 2000,
"currency": "AUD",
"status": "CONFIRMED",
"statusMessage": "Transaction Confirmed",
"externalId": "PR.1vcl",
"externalReference": "KX23249",
"createdAt": "2021-03-18T22:32:01.010Z"
}
}
}Different countries support different account types, transfer mechanisms, payment delivery methods.
const bodyJSON = {
variables
query($input: AvailableDeliveryMethodsInput!) {
{
"input": {
{
"data": {
"availableDeliveryMethods": [
{
"country": "AE",
"currency": "AED",
"method": "ACC_NO",
"requiredFields": [
"bic",
"accountNo"
]
},
{
"country": "AT",
"currency": "EUR",
"method": "IBAN",
"requiredFields": [
"bic",
"iban"
]
},
...const bodyJSON = {
variables:
query($input: AvailableDeliveryMethodsInput!) {
{
"input": {
"country": "FR",
"currency": "EUR"
}
}Convert between your multi-currency balances
You can query all your past conversions
const bodyJSON = {
variables
query($input: ConversionQueryInput!) {
{
"input": {
}
}{
"data": {
"conversions": [
{
"id": "6b04c62ec0bf606bf216ae21",
"fromCurrency": "AUD",
"toCurrency": "EUR",
"rate": 0.71
},
{
"id": "6b04c6bfc0bf606bf216af06",
"fromCurrency": "AUD",
"toCurrency": "USD",
"rate": 0.70
},
{
"id": "6b04c8e3c0bf606bf216b026",
"fromCurrency": "EUR",
"toCurrency": "AUD",
"rate": 0.71
}
]
}
}const bodyJSON = {
variables
query($input: ConversionQueryInput!) {
{
"input": {
"statuses": "CONVERTED",
"toCurrencies": ["EUR","USD"]
}
}{
"data": {
"conversions": [
{
"id": "6833ad9b4e94acce5d4a031b",
"fromCurrency": "AUD",
"toCurrency": "USD"
},
{
"id": "678a18bb2879c374b378ee71",
"fromCurrency": "AUD",
"toCurrency": "EUR"
}
]
}
}const bodyJSON = {
variables: {
input: "6b04c62ec0bf606bf216ae21",
},
query: `
query ($input: ID) {
conversion(id: $input) {
status createdAt fromAmount toAmount
}
}`,
};query($input: ID) {
conversion(id: $input) {
status
createdAt
fromAmount
toAmount
# there are many other properties
}
}{
"input": "6b04c62ec0bf606bf216ae21"
}{
"data": {
"conversion": {
"status": "CONVERTED",
"createdAt": "2024-08-13T05:45:28.698Z",
"fromAmount": 1000,
"toAmount": 710.01
}
}
}Adverse media search request statuses
Get your access token

const bodyJSON = {
variables: {
input: {
fromCurrency: "AUD",
toCurrency: "EUR",
size: "10000",
currency: "AUD",
tradeable: true,
applicability: "CONVERSION",
},
},
query: `
query ($input: QuoteInput!) {
quote(input: $input) {
id bid ask symbol timestamp inverted expireAt
}
}`,
};query($input: QuoteInput!) {
quote(input: $input) {
id
bid
ask
symbol
timestamp
inverted
expireAt
}
}const bodyJSON = {
variables: {
input: {
},
},
query: `
query ($input: PaymentQueryInput!) {
payments(input: $input) {
id fromCurrency toCurrency
}
}`,
}; query($input: PaymentQueryInput!) {
payments(input: $input) {
id
fromCurrency
toCurrency
# there are many other properties
}
} {
"input": {
}
}const bodyJSON = {
variables: {
input: {
statuses: "CLOSED",
toCurrencies: ["EUR","USD"],
},
},
query: `
query ($input: PaymentQueryInput!) {
payments(input: $input) {
id fromCurrency toCurrency
}
}`,
}; query($input: PaymentQueryInput!) {
payments(input: $input) {
id
fromCurrency
toCurrency
# there are many other properties
}
}const secret = "my-webhook-secret";
function generateSignature(string) {
return require("node:crypto")
.createHmac("sha256", secret) // your secret key
.update(string)
.digest("base64");
}function myCallbackEndpointHandler(req, res) {
const signature = req.headers["flashfx-signature"];
const payload = req.body;
if (generateSignature(payload) !== signature) {
console.error("Security warning! Webhook endpoint received bad data", req);
res.sendStatus(500);
return;
}
// proceed with the webhook processing
}{
"data": {
"availableDeliveryMethods": [
{
"country": "FR",
"currency": "EUR",
"method": "ACC_NO",
"requiredFields": [
"bic",
"accountNo"
]
},
{
"country": "FR",
"currency": "EUR",
"method": "IBAN",
"requiredFields": [
"bic",
"iban"
]
}
]
}
}const bodyJSON = {
variables: {
input: {
legalName: "Intermediate Institution Ltd",
businessNumber: "A39477669937",
address: {
postcode: "2000",
street: "203 Business Street",
country: "AU",
state: "NSW",
suburb: "Sydney",
},
},
},
query: `
mutation ($input: InstitutionInput!) {
createInstitution(input: $input) {
success code message
institution {
id
}
}
}`,
};mutation($input: InstitutionInput!) {
createInstitution(input: $input) {
success
code
message
institution {
id
}
}
} "input": {
"legalName": "Intermediate Institution Ltd",
"businessNumber": "A39477669937",
"address": {
"postcode": "2000",
"street": "203 Business Street",
"country": "AU",
"state": "NSW",
"suburb": "Sydney"
}
}
}{
"data": {
"createInstitution": {
"success": true,
"code": "INSTITUTION_CREATED",
"message": "Institution created",
"institution": {
"id": "65570da4f176682c5e412552"
}
}
}
}{
"input": {
"fromCurrency": "AUD",
"toCurrency": "EUR",
"size": "10000",
"currency": "AUD",
"tradeable": true,
"applicability": "CONVERSION"
}
}{
"data": {
"quote": {
"id": "685369cf85f7cb51fb4ae2eb",
"bid": 0.55663,
"ask": 0.57153,
"symbol": "AUDEUR",
"timestamp": "2025-06-19T01:37:19.418Z",
"inverted": false,
"expireAt": "2025-06-19T01:39:19.419Z"
}
}
}const bodyJSON = {
variables: {
input: {
note: "for major client",
externalId: "561402",
quoteId: "6854dcffaa36ba8534d5f8e2",
callbackUri: "https://example.com/my-webhook/endpoint/",
},
},
query: `
mutation ($input: ConversionInput!) {
createConversion(input: $input) {
success code message
conversion {
id fromCurrency toCurrency currencyPair fromAmount toAmount rate note
status statusMessage callbackUri externalId createdAt updatedAt
}
}
}`,
};mutation($input: ConversionInput!) {
createConversion(input: $input) {
success code message
conversion {
id fromCurrency toCurrency currencyPair fromAmount toAmount rate note
status statusMessage callbackUri externalId createdAt updatedAt
}
}
}{
"input": {
"note": "for major client",
"externalId": "561402",
"quoteId": "6854dcffaa36ba8534d5f8e2",
"callbackUri": "https://example.com/my-webhook/endpoint/"
}
}{
"data": {
"createConversion": {
"success": true,
"code": "CREATED",
"message": "Conversion successfully created",
"conversion": {
"id": "6711f0a7b549a701ebeb02ac",
"fromCurrency": "EUR",
"toCurrency": "AUD",
"currencyPair": "AUDEUR",
"fromAmount": 101,
"toAmount": 159.81,
"rate": 0.63199,
"note": "for major client",
"status": "PENDING",
"statusMessage": "Awaiting execution",
"callbackUri": "https://example.com/my-webhook/endpoint/",
"externalId": "561402",
"createdAt": "2024-10-18T05:22:47.433Z",
"updatedAt": "2024-10-18T05:22:47.433Z"
}
}
}
}{
"data": {
"payment": {
"status": "CLOSED",
"createdAt": "2018-08-13T05:45:28.698Z",
"size": 1000
}
}
}{
"data": {
"payments": [
{
"id": "5b04c62ec0bf606bf216ae21",
"fromCurrency": "AUD",
"toCurrency": "EUR"
},
{
"id": "5b04c6bfc0bf606bf216af06",
"fromCurrency": "AUD",
"toCurrency": "USD"
},
{
"id": "5b04c8e3c0bf606bf216b026",
"fromCurrency": "EUR",
"toCurrency": "AUD"
}
]
}
} {
# there are more query parameters available, see the API schema
"input": {
"statuses": "CLOSED",
"toCurrencies": ["EUR","USD"]
}
}{
"data": {
"payments": [
{
"id": "5b04c62ec0bf606bf216ae21",
"fromCurrency": "AUD",
"toCurrency": "EUR"
},
{
"id": "5b04c6bfc0bf606bf216af06",
"fromCurrency": "AUD",
"toCurrency": "USD"
}
]
}
}const bodyJSON = {
variables: {
input: "5b04c62ec0bf606bf216ae21",
},
query: `
query ($input: ID) {
payment(id: $input) {
status createdAt size
}
}`,
};query($input: ID) {
payment(id: $input) {
status
createdAt
size
# there are many other properties
}
}{
# there are more query parameters available, see the API schema
"input": "5b04c62ec0bf606bf216ae21"
}const bodyJSON = {
variables: {
input: {
email: "you@example.com",
password: "12345678",
},
},
query: `
mutation ($input: LoginInput!) {
login(input: $input) {
token message code success
}
}`,
};mutation($input: LoginInput!) {
login(input: $input) {
token
message
code
success
}
}{
"input": {
"email": "you@example.com",
"password": "12345678"
}
}{
"data": {
"login": {
"token": "YOUR_TOKEN",
"message": "OK",
"code": "SUCCESS",
"success": true
}
}
}{
...
"iat": 1620967717,
"exp": 1621054117
}const seconds = JSON.parse(Buffer.from(token.split(".")[1], "base64url")).exp;
if (Date.now() >= seconds*1000) {
// get new token
}{
"authorization": "Bearer YOUR_TOKEN"
}{
"input": {
"email": "you@example.com",
"password": "12345678",
"affiliation": FP_AUS
}
}const bodyJSON = {
variables
query($input: WithdrawalQueryInput!) {
{
"input": {
}
}{
"data": {
"withdrawals": [
{
"id": "5b04c62ec0bf606bf216ae21",
"recipient": {
"firstName": "John"
"lastName": "Smith"
}
},
{
"id": "5b04c6bfc0bf606bf216af06",
"recipient": {
"firstName": "John"
"lastName": "Smith"
}
},
{
"id": "5b04c8e3c0bf606bf216b026",
"recipient": {
"firstName": "John"
"lastName": "Smith"
}
}
]
}
}const bodyJSON = {
variables
query($input: WithdrawalQueryInput!) {
{
# there are more query parameters available, see the API schema
"input": {
"statuses": "CONFIRMED",
"maxCreatedAt": "2020-01-29"
}
}{
"data": {
"withdrawals": [
{
"id": "5b04c62ec0bf606bf216ae21",
"createdAt": "2020-01-17T07:21:20.247Z"
},
{
"id": "5b04c6bfc0bf606bf216af06",
"createdAt": "2018-08-13T05:45:28.698Z"
}
]
}
}const bodyJSON = {
variables: {
input: "5b04c62ec0bf606bf216ae21",
},
query: `
query ($input: ID) {
withdrawal(id: $input) {
status createdAt amount
}
}`,
};query($input: ID) {
withdrawal(id: $input) {
status
createdAt
amount
# there are many other properties
}
}{
# there are more query parameters available, see the API schema
"input": "5b04c62ec0bf606bf216ae21"
}Quote the current bid and ask for a currency pair and size.
const bodyJSON = {
variables
query($input: QuoteInput!) {
{
"input": {
"fromCurrency": "AUD",
"toCurrency": "USD",
"size": "10000",
"currency": "AUD"
}
}{
"data": {
"quote": {
"bid": 0.61104,
"ask": 0.62077,
"symbol": "USDAUD",
"timestamp": "2018-08-13T07:54:54.993Z",
"inverted": true
}
}
}const bodyJSON = {
variables
mutation($input: AmsRequestInput!) {
adverseMediaSearch(input: $input) {
success
code
message
amsRequest {
id
status
}
}
}{
"input": {
"firstName": "John",
"lastName": "Smith",
"country": "AU"
}
}{
"data": {
"adverseMediaSearch": {
"success": true,
"code": "SCAN_SCHEDULED",
"message": "Name scan scheduled",
"amsRequest": {
"id": "6820a4f3e1c2b5d8f0123456",
"status": "INITIALISED"
}
}
}
}const bodyJSON = {
variables: {
input: {
accountName: "Acme Pty Ltd",
country: "AU",
},
},
query: `
mutation ($input: AmsRequestInput!) {
adverseMediaSearch(input: $input) {
success
code
message
amsRequest {
id
status
}
}
}`,
};mutation($input: AmsRequestInput!) {
adverseMediaSearch(input: $input) {
success
code
message
amsRequest {
id
status
}
}
}{
"input": {
"accountName": "Acme Pty Ltd",
"country": "AU"
}
}Retrieve your RFIs and their questions
Ensuring bank details are correct
const bodyJSON = {
variables: {
input: {
bsb: "012622",
},
},
query: `
query ($input: BankInfoQueryInput!) {
bankInfo(input: $input) {
name
address {
building street suburb state country postcode
}
}
}`,
};query($input: BankInfoQueryInput!){
bankInfo(input: $input) {
name
address {
building
street
suburb
state
country
postcode
}
}
}{
"data": {
"withdrawal": {
"status": "CONFIRMED",
"createdAt": "2020-01-17T07:21:20.247Z",
"amount": 1000
}
}
}query {
AUDUSD: quote(input: { fromCurrency: AUD, toCurrency: USD, size: 1000 }) { bid ask symbol }
AUDEUR: quote(input: { fromCurrency: AUD, toCurrency: EUR, size: 1000 }) { bid ask symbol }
AUDGBP: quote(input: { fromCurrency: AUD, toCurrency: GBP, size: 1000 }) { bid ask symbol }
}{
"data": {
"AUDUSD": {
"bid": 0.76508,
"ask": 0.76922,
"symbol": "AUDUSD"
},
"AUDEUR": {
"bid": 0.64588,
"ask": 0.64942,
"symbol": "AUDEUR"
},
"AUDGBP": {
"bid": 0.57091,
"ask": 0.57404,
"symbol": "AUDGBP"
}
}
}const fromCurrencies = ["AUD"];
const toCurrencies = ["USD", "EUR", "GBP"];
const size = 1000;
let query = "";
for (const from of fromCurrencies)
for (const to of toCurrencies)
query += `${from}${to}: quote(input: { fromCurrency: ${from}, toCurrency: ${to}, size: ${size} }) { bid ask symbol }\n`;
query = "query {\n" + query + "\n}";
const response = await fetch("https://api.uat.flash-payments.com.au", {
method: "POST",
headers: {
authorization: "Bearer " + YOUR_TOKEN,
"content-type": "application/json",
},
body: JSON.stringify({ query }),
});
const { data } = await response.json();const bodyJSON = {
variables: {
input: {
fromCurrency: "AUD",
toCurrency: "USD",
size: "10000",
currency: "AUD",
tradable: true,
},
},
query: `
query ($input: QuoteInput!) {
quote(input: $input) {
bid ask symbol timestamp inverted expireAt id
}
}`,
};query($input: QuoteInput!) {
quote(input: $input) {
bid
ask
symbol
timestamp
inverted
expireAt
id
}
} {
"input": {
"fromCurrency": "AUD",
"toCurrency": "USD",
"size": "10000",
"currency": "AUD",
"tradeable": true
}
}{
"data": {
"quote": {
"bid": 0.61339,
"ask": 0.63101,
"symbol": "AUDUSD",
"timestamp": "2025-03-04T01:53:08.829Z",
"inverted": false,
"expireAt": "2025-03-04T01:55:08.830Z",
"id": "67c65d04e5086d18751617ba"
}
}
}{
"data": {
"confirmationOfPayee": {
"success": false,
"code": "COP_API_DISABLED",
"message": "Confirmation Of Payee API is disabled. Please contact support.",
"billable": false
}
}
}{
"data": {
"adverseMediaSearch": {
"success": true,
"code": "SCAN_SCHEDULED",
"message": "Name scan scheduled",
"amsRequest": {
"id": "6820b1d9c3f4a7e2d0987654",
"status": "INITIALISED"
}
}
}
}const bodyJSON = {
variables: {
input: {
bic: "BARCGB22",
},
},
query: `
query ($input: BankInfoQueryInput!) {
bankInfo(input: $input) {
name
address {
building street suburb state country postcode
}
}
}`,
};query($input: BankInfoQueryInput!){
bankInfo(input: $input) {
name
address {
building
street
suburb
state
country
postcode
}
}
} {
"input": {
"bic": "BARCGB22"
}
}{
"data": {
"bankInfo": {
"name": "BARCLAYS BANK PLC",
"address": {
"building": null,
"street": "1 CHURCHILL PLACE, CANARY WHARF London",
"suburb": "London",
"state": null,
"country": "GB",
"postcode": "E14 5HP"
}
}
}
}const bodyJSON = {
variables: {
input: {
iban: "DE59500105178646768962",
},
},
query: `
query ($input: BankInfoQueryInput!) {
bankInfo(input: $input) {
name
address {
building street suburb state country postcode
}
}
}`,
};query($input: BankInfoQueryInput!){
bankInfo(input: $input) {
name
address {
building
street
suburb
state
country
postcode
}
}
} {
"input": {
"iban": "DE59500105178646768962"
}
}{
"data": {
"bankInfo": {
"name": "ING-DIBA AG (RETAIL BANKING)",
"address": {
"building": null,
"street": "THEODOR-HEUSS-ALLEE 2 Frankfurt Am Main",
"suburb": "Frankfurt Am Main",
"state": null,
"country": "DE",
"postcode": "60486"
}
}
}
} {
"input": {
"bsb": "012622"
}
}{
"data": {
"bankInfo": {
"name": "ANZ",
"address": {
"building": null,
"street": "Shop 1 Westfield Shopping Ctr",
"suburb": "Figtree",
"state": "NSW",
"country": "AU",
"postcode": "2525"
}
}
}
}mutation($input: AnswerRfiQuestionInput!) {
answerRfiQuestion(input: $input) {
success
code
message
rfi {
id
status
questions { questionCode answered }
}
}
}{
"input": {
"rfiId": "61f3a2c8d1e9b7a4c5d6e7f8",
"questionCode": "SENDER_ID_PROOF",
"files": [
{ "name": "passport.pdf", "base64": "JVBERi0xLjQK..." }
]
}
}{
"data": {
"answerRfiQuestion": {
"success": true,
"code": "RECORDED",
"message": "RFI reply recorded",
"rfi": {
"id": "61f3a2c8d1e9b7a4c5d6e7f8",
"status": "PENDING",
"questions": [
{ "questionCode": "SENDER_ID_PROOF", "answered": true },
{ "questionCode": "OTHER_TX_PURPOSE", "answered": false }
]
}
}
}
}const bodyJSON = {
variables: {
input: {
rfiId: "61f3a2c8d1e9b7a4c5d6e7f8",
questionCode: "OTHER_TX_PURPOSE",
text: "Payment for invoice #INV-2031, software development services.",
},
},
query: `
mutation ($input: AnswerRfiQuestionInput!) {
answerRfiQuestion(input: $input) {
success
code
message
rfi {
id
status
questions { questionCode answered }
}
}
}`,
};mutation($input: AnswerRfiQuestionInput!) {
answerRfiQuestion(input: $input) {
success
code
message
rfi {
id
status
questions { questionCode answered }
}
}
}{
"input": {
"rfiId": "61f3a2c8d1e9b7a4c5d6e7f8",
"questionCode": "OTHER_TX_PURPOSE",
"text": "Payment for invoice #INV-2031, software development services."
}
}{
"data": {
"answerRfiQuestion": {
"success": true,
"code": "RECORDED",
"message": "RFI reply recorded",
"rfi": {
"id": "61f3a2c8d1e9b7a4c5d6e7f8",
"status": "ASSESSING",
"questions": [
{ "questionCode": "SENDER_ID_PROOF", "answered": true },
{ "questionCode": "OTHER_TX_PURPOSE", "answered": true }
]
}
}
}
}const bodyJSON = {
variables: {
input: {
rfiId: "61f3a2c8d1e9b7a4c5d6e7f8",
questionCode: "SENDER_ID_PROOF",
files: [{ name: "passport.pdf", base64: "JVBERi0xLjQK..." }]
},
},
query: `
mutation ($input: AnswerRfiQuestionInput!) {
answerRfiQuestion(input: $input) {
success
code
message
rfi {
id
status
questions { questionCode answered }
}
}
}`,
};const bodyJSON = {
variables: {
input: {
statuses: ["PENDING"],
},
},
query: `
query ($input: RfisInput) {
rfis(input: $input) {
id
status
deadline
questions {
questionCode
answered
}
createdAt
}
}`,
};query($input: RfisInput) {
rfis(input: $input) {
id
status
deadline
questions {
questionCode
answered
}
createdAt
}
}{
"input": {
"statuses": ["PENDING"]
}
}{
"data": {
"rfis": [
{
"id": "61f3a2c8d1e9b7a4c5d6e7f8",
"status": "PENDING",
"deadline": "2026-06-04T09:00:00.000Z",
"questions": [
{ "questionCode": "SENDER_ID_PROOF", "answered": false },
{ "questionCode": "OTHER_TX_PURPOSE", "answered": false }
],
"createdAt": "2026-05-28T09:00:00.000Z"
}
]
}
}query($id: ID!) {
rfi(id: $id) {
id
status
statusMessage
deadline
questions {
questionCode
questionText
fileUploadOption
answered
}
withdrawals { id status }
deposits { id status }
payments { id status }
createdAt
}
}{
"id": "61f3a2c8d1e9b7a4c5d6e7f8"
}{
"data": {
"rfi": {
"id": "61f3a2c8d1e9b7a4c5d6e7f8",
"status": "PENDING",
"statusMessage": "We are waiting for your replies",
"deadline": "2026-06-04T09:00:00.000Z",
"questions": [
{
"questionCode": "SENDER_ID_PROOF",
"questionText": "Sender's ID proof",
"fileUploadOption": "PREFERRED",
"answered": false
},
{
"questionCode": "OTHER_TX_PURPOSE",
"questionText": "Purpose of transfer",
"fileUploadOption": "NONE",
"answered": false
}
],
"withdrawals": [
{ "id": "61f3a2c8d1e9b7a4c5d6e7aa", "status": "REVIEWING" }
],
"deposits": [],
"payments": [],
"createdAt": "2026-05-28T09:00:00.000Z"
}
}
}const bodyJSON = {
variables: {
id: "61f3a2c8d1e9b7a4c5d6e7f8",
},
query: `
query ($id: ID!) {
rfi(id: $id) {
id
status
statusMessage
deadline
questions {
questionCode
questionText
fileUploadOption
answered
}
withdrawals { id status }
deposits { id status }
payments { id status }
createdAt
}
}`,
};{
"data": {
"amsRequests": [
{
"id": "6820a4f3e1c2b5d8f0123456",
"name": "John Smith",
"country": "AU",
"status": "COMPLETED",
"createdAt": "2025-03-15T08:23:14.521Z"
},
{
"id": "6820b1d9c3f4a7e2d0987654",
"name": "Acme Pty Ltd",
"country": "AU",
"status": "PENDING",
"createdAt": "2025-03-15T09:01:44.008Z"
}
]
}
}const bodyJSON = {
variables: {
input: {
statuses: ["COMPLETED"],
minCreatedAt: "2025-03-01T00:00:00.000Z",
maxCreatedAt: "2025-04-01T00:00:00.000Z",
country: "AU",
},
},
query: `
query ($input: AmsQueryInput) {
amsRequests(input: $input) {
id
name
country
status
createdAt
}
}`,
};query($input: AmsQueryInput) {
amsRequests(input: $input) {
id
name
country
status
createdAt
}
}{
# there are more filter parameters available, see the API schema
"input": {
"statuses": ["COMPLETED"],
"minCreatedAt": "2025-03-01T00:00:00.000Z",
"maxCreatedAt": "2025-04-01T00:00:00.000Z",
"country": "AU"
}
}{
"data": {
"amsRequests": [
{
"id": "6820a4f3e1c2b5d8f0123456",
"name": "John Smith",
"country": "AU",
"status": "COMPLETED",
"createdAt": "2025-03-15T08:23:14.521Z"
}
]
}
}query($id: ID!) {
amsRequest(id: $id) {
id
name
country
status
createdAt
results {
title
link
adversityScore
personSimilarity
summary
# there are many other result fields
}
}
}{
"id": "6820a4f3e1c2b5d8f0123456"
}{
"data": {
"amsRequest": {
"id": "6820a4f3e1c2b5d8f0123456",
"name": "John Smith",
"country": "AU",
"status": "COMPLETED",
"createdAt": "2025-03-15T08:23:14.521Z",
"results": [
{
"title": "Local businessman John Smith fined for tax evasion",
"link": "https://example-news.com.au/articles/smith-tax",
"adversityScore": 72,
"personSimilarity": 85,
"summary": "John Smith of Sydney was fined $45,000 for understating income over three financial years."
}
]
}
}
}const bodyJSON = {
variables: {
input: {},
},
query: `
query ($input: AmsQueryInput) {
amsRequests(input: $input) {
id
name
country
status
createdAt
}
}`,
};query($input: AmsQueryInput) {
amsRequests(input: $input) {
id
name
country
status
createdAt
# there are many other properties
}
}{
"input": {}
}const bodyJSON = {
variables: {
id: "6820a4f3e1c2b5d8f0123456",
},
query: `
query ($id: ID!) {
amsRequest(id: $id) {
id
name
country
status
createdAt
results {
title
link
adversityScore
personSimilarity
summary
}
}
}`,
};mutation($input: CreateSubClientInput!) {
createSubClient(input: $input) {
success
code
message
subClient {
id
legalName
businessNumber
fullName
clientType
status
primaryContact {
firstName
lastName
email
mobile
dob
}
address {
country
}
bsb
accountNo
externalId
# more properties available, see API schema
}
}
}{
"input": {
"legalName": "Chineese Tradings",
"businessNumber": "330782000329701",
"firstName": "John",
"lastName": "Smith",
"email": "john.smith@example.com",
"mobile": "+61422832849",
"dob": "1979-05-12",
"address": {
"building": "25",
"street": "Xihu Road, Yuexiu District",
"suburb": "Guangzhou City",
"state": "Guangdong Province",
"postcode": "510030",
"country": "CN"
},
"idDoc": {
"type": "passport",
"docNumber": "FF1948394",
"issuer": "Australian Passport Office (APO)",
"issueDate": "2000-01-01",
"expiryDate": "2045-01-01",
"country": "AU"
},
"externalId": "991188227733"
}
}{
"data": {
"createSubClient": {
"success": true,
"code": "SUBCLIENT_CREATED",
"message": "Sub-client was successfully created",
"subClient": {
"id": "606d28675a2d931bc925fec2",
"legalName": "Chineese Tradings",
"businessNumber": "330782000329701",
"fullName": "John Smith",
"clientType": "INDIVIDUAL",
"status": "ACTIVE",
"primaryContact": {
"firstName": "John",
"lastName": "Smith",
"email": "john.smith@example.com",
"mobile": "+61 422 832 849",
"dob": "1979-05-12"
},
"address": {
"country": "CN"
},
"bsb": "802919",
"accountNo": "1066419",
"externalId": "991188227733"
}
}
}
}const bodyJSON = {
variables: {
input: {
legalName: "Chineese Tradings",
businessNumber: "330782000329701",
firstName: "John",
lastName: "Smith",
email: "john.smith@example.com",
mobile: "+61422832849",
dob: "1979-05-12",
address: {
building: "25",
street: "Xihu Road, Yuexiu District",
suburb: "Guangzhou City",
state: "Guangdong Province",
postcode: "510030",
country: "CN",
},
idDoc: {
type: "passport",
docNumber: "FF1948394",
issuer: "Australian Passport Office (APO)",
issueDate: "2000-01-01",
expiryDate: "2045-01-01",
country: "AU",
},
externalId: "991188227733",
},
},
query: `
mutation ($input: CreateSubClientInput!) {
createSubClient(input: $input) {
success code message
subClient {
id legalName businessNumber fullName clientType status
primaryContact {
firstName lastName email mobile dob
}
address {
country
}
bsb accountNo externalId
}
}
}`,
};const bodyJSON = {
variables
mutation($input: ID!) {
{
"input": "606128f24bf29139b2cf74ef"
}{
"data": {
"disableSubClient": {
"success": true,
"code": "SUCCESS",
"message": "Sub-client was successfully disabled",
"subClient": {
"id": "606128f24bf29139b2cf74ef",
"status": "DISABLED"
}
}
}
}const bodyJSON = {
variables
mutation($input: ID!) {
{
"input": "606128f24bf29139b2cf74ef"
}{
"data": {
"activateSubClient": {
"success": true,
"code": "SUCCESS",
"message": "Sub-client was successfully activated",
"subClient": {
"id": "606128f24bf29139b2cf74ef",
"status": "ACTIVE"
}
}
}
}Automatically receive and convert funds from other countries and currencies
const bodyJSON = {
variables
fragment AddressParts on Address { building streetNo street suburb state postcode country }
mutation($input: AddressInput!) {
cleanseAddress(input: $input) {
success
code
message
addressRequest {
id
originalAddress { ...AddressParts }
cleansedAddress { ...AddressParts }
recommendation
score
}
}
}{
"input": {
"street": "33 effingham st, sth launceston 7249",
"country": "AU"
}
}{
"data": {
"cleanseAddress": {
"success": true,
"code": "CLEANSED",
"message": "Address cleansed",
"addressRequest": {
"id": "6820a4f3e1c2b5d8f0123456",
"originalAddress": {
"building": null,
"streetNo": null,
"street": "33 effingham st, sth launceston 7249",
"suburb": null,
"state": null,
"postcode": null,
"country": "AU"
},
"cleansedAddress": {
"building": null,
"streetNo": null,
"street": "33 Effingham Street",
"suburb": "South Launceston",
"state": "TAS",
"postcode": "7249",
"country": "AU"
},
"recommendation": "approve",
"score": 97.1
}
}
}
}const bodyJSON = {
variables
query($id: ID!) {
addressCleanserRequest(id: $id) {
id
originalAddress {
building
streetNo
street
suburb
state
postcode
country
}
cleansedAddress {
building
streetNo
street
suburb
state
postcode
country
}
recommendation
score
createdAt
billable
}
}{
"id": "6820a4f3e1c2b5d8f0123456"
}{
"data": {
"addressCleanserRequest": {
"id": "6820a4f3e1c2b5d8f0123456",
"originalAddress": {
"building": null,
"streetNo": null,
"street": "33 effingham st, sth launceston 7249",
"suburb": null,
"state": null,
"postcode": null,
"country": "AU"
},
"cleansedAddress": {
"building": null,
"streetNo": null,
"street": "33 Effingham Street",
"suburb": "South Launceston",
"state": "TAS",
"postcode": "7249",
"country": "AU"
},
"recommendation": "approve",
"score": 97.1,
"createdAt": "2026-06-12T08:23:14.521Z",
"billable": true
}
}
}Retrieve the members of your client account
const bodyJSON = {
variables: {
input: {
currencies: ["EUR","USD","HKD","CNY"],
},
},
query: `
query ($input: FundingAccountQueryInput!) {
fundingAccounts(input: $input) {
iban accountNo accountName accountAddress bic currency externalReference
}
}`,
}; query($input: FundingAccountQueryInput!) {
fundingAccounts(input: $input) {
iban
accountNo
accountName
accountAddress
bic
currency
externalReference
}
}const bodyJSON = {
variables: {
id: "606d28675a2d931bc925fec2",
input: {
currencies: ["EUR","USD","HKD","CNY"],
},
},
query: `
query ($id: ID!, $input: FundingAccountQueryInput!) {
subClient(id: $id) {
id fullName legalName tradingAsNam clientType status
primaryContact {
firstName middleName lastName email dob mobile
}
address {
building street suburb state country postcode
}
postalAddress {
building street suburb state country postcode
}
businessNumber bsb accountNo externalId
fundingAccounts(input: $input) {
iban accountNo bic currency externalReference
}
}
}`,
};const bodyJSON = {
variables: {
id: "660fef8e1f3b5452bd6945ec",
input: {
externalId: "my_system_id_29f-ae0978b00d09e",
},
},
query: `
mutation ($id: ID!, $input: UpdateSubClientInput!) {
updateSubClient(id: $id, input: $input) {
success code message
subClient {
id status externalId
}
}
}`,
};mutation($id: ID!, $input: UpdateSubClientInput!) {
updateSubClient(id: $id, input: $input) {
success
code
message
subClient {
id
status
externalId
}
}
}{
"id": "660fef8e1f3b5452bd6945ec",
"input": {
"externalId": "my_system_id_29f-ae0978b00d09e"
}
}{
"data": {
"updateSubClient": {
"success": true,
"code": "SUCCESS",
"message": "Sub-client was successfully updated",
"subClient": {
"id": "660fef8e1f3b5452bd6945ec",
"status": "ACTIVE",
"externalId": "my_system_id_29f-ae0978b00d09e"
}
}
}
}const bodyJSON = {
variables: {
id: "660fef8e1f3b5452bd6945ec",
input: {
adddress: {
street: "456 New St",
suburb: "Newtow",
state: "VIC",
postcode: "3220",
country: "AU",
},
},
},
query: `
mutation ($id: ID!, $input: UpdateSubClientInput!) {
updateSubClient(id: $id, input: $input) {
success code message
subClient {
id status externalId address {building street suburb state postcode country}
}
}
}`,
};mutation($id: ID!, $input: UpdateSubClientInput!) {
updateSubClient(id: $id, input: $input) {
success
code
message
subClient {
id
status
externalId
address {
building
street
suburb
state
postcode
country
}
}
}
}{
"id": "660fef8e1f3b5452bd6945ec",
"input": {
"address": {
"street": "456 New St",
"suburb": "Newtow",
"state": "VIC",
"postcode": "3220",
"country": "AU"
}
}
}{
"data": {
"updateSubClient": {
"success": true,
"code": "SUCCESS",
"message": "Sub-client was successfully updated",
"subClient": {
"id": "660fef8e1f3b5452bd6945ec",
"status": "ACTIVE",
"externalId": "my_system_id_29f-ae0978b00d09e",
"address": {
"building": null,
"street": "456 New St",
"suburb": "Newtow",
"state": "VIC",
"postcode": "3220",
"country": "AU"
}
}
}
}
} {
"input": {
"currencies": ["EUR", "USD", "HKD", "CNY"]
}
}{
"data": {
"fundingAccounts": [
{
"iban": "GB91 BARC 2006 0565 4685 66",
"accountNo": "65468566",
"bic": "BARCGB22",
"currency": "USD",
"externalReference": "191127-99999"
},
{
"iban": "GB05 BARC 2006 0574 7412 77",
"accountNo": "74741277",
"bic": "BARCGB22",
"currency": "EUR",
"externalReference": "191127-99999"
},
{
"iban": null,
"accountNo": "87135588",
"bic": "BARCGB22",
"currency": "CNY",
"externalReference": "191127-99999"
},
{
"iban": "GB87 BARC 2006 0546 9946 00",
"accountNo": "46994600",
"bic": "BARCGB22",
"currency": "HKD",
"externalReference": "191127-99999"
}
]
}
}const bodyJSON = {
variables: {
sc: {
externalId: "991188227733",
},
fa: {
currencies: ["EUR","USD","CNY"],
},
},
query: `
query ($sc: SubClientQueryInput!, $fa: FundingAccountQueryInput!) {
subClients(input: $sc) {
id externalId
fundingAccounts(input: $fa) {
iban accountNo accountName accountAddress bic currency externalReference
}
}
}`,
};query($sc: SubClientQueryInput!, $fa: FundingAccountQueryInput!) {
subClients(input: $sc) {
id
externalId
fundingAccounts(input: $fa) {
iban
accountNo
accountName
accountAddress
bic
currency
externalReference
}
}
} {
"sc": {
"externalId": "991188227733"
},
"fa": {
"currencies": ["EUR", "USD", "CNY"]
}
}{
"data": {
"subClients": [
{
"id": "60a1e9e76eaedbf66964a323",
"externalId": "991188227733",
"fundingAccounts": [
{
"iban": "GB91 BARC 2006 0565 4685 66",
"accountNo": "65468566",
"bic": "BARCGB22",
"currency": "USD",
"externalReference": "210616-99999"
},
{
"iban": "GB05 BARC 2006 0574 7412 77",
"accountNo": "74741277",
"bic": "BARCGB22",
"currency": "EUR",
"externalReference": "210616-99999"
},
{
"iban": null,
"accountNo": "87135588",
"bic": "BARCGB22",
"currency": "CNY",
"externalReference": "210616-99999"
},
]
}
]
}
}const bodyJSON = {
variables: {
input: {},
},
query: `
query ($input: AddressCleanserQueryInput) {
addressCleanserRequests(input: $input) {
id
recommendation
score
createdAt
}
}`,
};query($input: AddressCleanserQueryInput) {
addressCleanserRequests(input: $input) {
id
recommendation
score
createdAt
# there are many other properties
}
}{
"input": {}
}{
"data": {
"addressCleanserRequests": [
{
"id": "6820a4f3e1c2b5d8f0123456",
"recommendation": "approve",
"score": 98.25,
"createdAt": "2026-06-12T08:23:14.521Z"
},
{
"id": "6820b1d9c3f4a7e2d0987654",
"recommendation": "review",
"score": 64.1,
"createdAt": "2026-06-12T09:01:44.008Z"
}
]
}
}const bodyJSON = {
variables: {
input: {
recommendation: "approve",
minCreatedAt: "2026-06-01T00:00:00.000Z",
maxCreatedAt: "2026-07-01T00:00:00.000Z",
},
},
query: `
query ($input: AddressCleanserQueryInput) {
addressCleanserRequests(input: $input) {
id
recommendation
score
createdAt
}
}`,
};query($input: AddressCleanserQueryInput) {
addressCleanserRequests(input: $input) {
id
recommendation
score
createdAt
}
}{
"input": {
"recommendation": "approve",
"minCreatedAt": "2026-06-01T00:00:00.000Z",
"maxCreatedAt": "2026-07-01T00:00:00.000Z"
}
}{
"data": {
"addressCleanserRequests": [
{
"id": "6820a4f3e1c2b5d8f0123456",
"recommendation": "approve",
"score": 98.25,
"createdAt": "2026-06-12T08:23:14.521Z"
}
]
}
}query($id: ID!, $input: FundingAccountQueryInput!) {
subClient(id: $id) {
id
fullName
legalName
tradingAsName
clientType
status
primaryContact {
firstName
middleName
lastName
email
dob
mobile
}
address {
building
street
suburb
state
country
postcode
}
postalAddress {
building
street
suburb
state
country
postcode
}
businessNumber
bsb
accountNo
externalId
fundingAccounts(input: $input) {
iban
accountNo
bic
currency
externalReference
}
}
}{
"id": "606d28675a2d931bc925fec2",
"input": {
"currencies": ["EUR", "USD", "HKD", "CNY"]
}
}{
"data": {
"subClient": {
"id": "606d28675a2d931bc925fec2",
"fullName": "ACME Corp",
"legalName": "ACME Corp",
"tradingAsName": null,
"clientType": "COMPANY",
"status": "ACTIVE",
"primaryContact": {
"firstName": "John",
"middleName": null,
"lastName": "Smith",
"email": "john.smith@example.com",
"dob": "1980-12-12",
"mobile": "+61 422 832 849"
},
"address": {
"building": "25",
"street": "Moore St",
"suburb": "Waterloo",
"state": "NSW",
"country": "AU",
"postcode": "2017"
},
"postalAddress": {
"building": "25",
"street": "Moore St",
"suburb": "Waterloo",
"state": "NSW",
"country": "AU",
"postcode": "2017"
},
"businessNumber": "91383840265",
"bsb": "802919",
"accountNo": "1066419",
"externalId": "991188227733"
}
}
}const bodyJSON = {
variables: {
input: {
},
},
query: `
query ($input: SubClientQueryInput!) {
subClients(input: $input) {
id fullName legalName clientType status businessNumber
bsb accountNo externalId
}
}`,
}; query($input: SubClientQueryInput!){
subClients(input: $input) {
id
fullName
legalName
clientType
status
businessNumber
bsb
accountNo
externalId
# any other set of properties
}
} {
"input": {
}
}{
"data": {
"subClients": [
{
"id": "5fb314cb9224595df522db61",
"fullName": "Richard Smith",
"legalName": null,
"clientType": "INDIVIDUAL",
"status": "ACTIVE",
"businessNumber": null,
"bsb": "802919",
"accountNo": "1963041",
"externalId": null
},
{
"id": "60612f00a4d7dd5c96e37676",
"fullName": "ABC Capital",
"legalName": "ABC Co",
"clientType": "COMPANY",
"status": "ACTIVE",
"businessNumber": "839399923932",
"bsb": "802919",
"accountNo": "1914920",
"externalId": null
}
]
}
}const bodyJSON = {
variables: {
input: {
clientType: "INDIVIDUAL",
status: "ACTIVE",
firstName: "John",
lastName: "Smith",
address: {
country: "AU",
},
},
},
query: `
query ($input: SubClientQueryInput!) {
subClients(input: $input) {
id fullName clientType status
primaryContact {
firstName lastName
}
address {
country
}
}
}`,
}; query($input: SubClientQueryInput!){
subClients(input: $input) {
id
fullName
clientType
status
primaryContact {
firstName
lastName
}
address {
country
}
# any other set of properties
}
}{
# more filters available, see SubClientQueryInput in API schema
"input": {
"clientType": "INDIVIDUAL",
"status": "ACTIVE",
"firstName": "John",
"lastName": "Smith",
"address": {
"country": "AU"
}
}
}{
"data": {
"subClients": [
{
"id": "5fb314cb9224595df522db61",
"fullName": "John Smith",
"clientType": "INDIVIDUAL",
"status": "ACTIVE",
"primaryContact": {
"firstName": "John",
"lastName": "Smith"
},
"address": {
"country": "AU"
}
}
]
}
}rolesaccessconst bodyJSON = {
variables: {
input: {
status: ["ACTIVE"],
roles: ["director"],
access: ["transact"],
},
},
query: `
query ($input: MembersQueryInput) {
members(input: $input) {
id firstName lastName status roles access
}
}`,
};query ($input: MembersQueryInput) {
members(input: $input) {
id
firstName
lastName
status
roles
access
}
}{
"input": {
"status": ["ACTIVE"],
"roles": ["director"],
"access": ["transact"]
}
}{
"data": {
"members": [
{
"id": "5fb314cb9224595df522db61",
"firstName": "John",
"lastName": "Smith",
"status": "ACTIVE",
"roles": ["director"],
"access": ["transact", "login"]
}
]
}
}{
"input": {
}
}{
"data": {
"members": [
{
"id": "5fb314cb9224595df522db61",
"firstName": "John",
"middleName": null,
"lastName": "Smith",
"dob": "1980-12-12",
"email": "john.smith@example.com",
"mobile": "+61 422 832 849",
"address": {
"building": null,
"streetNo": "25",
"street": "Moore St",
"suburb": "Waterloo",
"state": "NSW",
"postcode": "2017",
"country": "AU"
},
"status": "ACTIVE",
"roles": ["director", "treasurer"],
"access": ["admin", "transact", "approve"],
"isPrimaryContact": true
}
]
}
}const bodyJSON = {
variables: {
input: {
},
},
query: `
query ($input: MembersQueryInput) {
members(input: $input) {
id firstName middleName lastName dob email mobile
address {
building streetNo street suburb state postcode country
}
status roles access isPrimaryContact
}
}`,
};query ($input: MembersQueryInput) {
members(input: $input) {
id
firstName
middleName
lastName
dob
email
mobile
address {
building
streetNo
street
suburb
state
postcode
country
}
status
roles
access
isPrimaryContact
}
}
How to send orchestrated account-to-account payments which include FX
const bodyJSON = {
variables
mutation($input: PaymentInput!) {
createPayment(input: $input) {
success
code
message
payment {
id
status
size
}
}
}{
"input": {
"fromCurrency": "AUD",
"toCurrency": "GBP",
"size": 1000,
"currency": "AUD",
"reason": "BUSINESS",
"sourceOfFunds": "BUSINESS_FUNDS",
"externalReference": "my ref 221b",
"externalId": "12344321",
"idempotencyKey": "12344321",
"recipient": {
"iban": "GB26MIDL40051512345674",
"companyName": "Acme GB Ltd",
"currency": "GBP",
"accountIdType": "IBAN",
"address": {
"street": "1 Main St LONDON SW1A 1AA",
"country": "GB"
}
}
}
}{
"data": {
"createPayment": {
"success": true,
"code": "SUCCESS",
"message": "Scheduled for immediate execution",
"payment": {
"id": "60711af8c078ba061f623531",
"status": "OPEN",
"size": 1000
}
}
}
}recipient object or recipientIdSend money from your Flash Payments balances to Australian bank accounts or internationally per your approved use case.
const bodyJSON = {
variables: {
input: {
fromCurrency: "AUD",
toCurrency: "GBP",
size: 1000,
currency: "AUD",
reason: "BUSINESS",
sourceOfFunds: "BUSINESS_FUNDS",
externalReference: "my ref 221b",
subClientId: "6092360bf40f2dgc52f85cf1",
recipient: {
iban: "GB26MIDL40051512345674",
companyName: "Acme GB Ltd",
currency: "GBP",
accountIdType: "IBAN",
address: {
street: "1 Main St LONDON SW1A 1AA",
country: "GB",
},
},
externalId: "123443212",
idempotencyKey: "123443212",
},
},
query: `
mutation ($input: PaymentInput!) {
createPayment(input: $input) {
success code message
payment {
id status size
}
}
}`,
}; mutation($input: PaymentInput!) {
createPayment(input: $input) {
success
code
message
payment {
id
status
size
}
}
}{
"input": {
"fromCurrency": "AUD",
"toCurrency": "GBP",
"size": 1000,
"currency": "AUD",
"reason": "BUSINESS",
"sourceOfFunds": "BUSINESS_FUNDS",
"externalReference": "my ref 221b",
"subClientId": "6092360bf40f2dgc52f85cf1",
"externalId": "12344321",
"idempotencyKey": "12344321",
"recipient": {
"iban": "GB26MIDL40051512345674",
"companyName": "Acme GB Ltd",
"currency": "GBP",
"accountIdType": "IBAN",
"address": {
"street": "1 Main St LONDON SW1A 1AA",
"country": "GB"
}
}
}
}{
"data": {
"createPayment": {
"success": true,
"code": "SUCCESS",
"message": "Scheduled for immediate execution",
"payment": {
"id": "60711bg8d078cb061g623531",
"status": "OPEN",
"size": 1000
}
}
}
}const bodyJSON = {
variables: {
input: {
fromCurrency: "AUD",
toCurrency: "GBP",
size: 1000,
currency: "AUD",
reason: "BUSINESS",
sourceOfFunds: "BUSINESS_FUNDS",
externalReference: "my ref 2234",
recipient: {
iban: "GB26MIDL40051512345674",
companyName: "Acme GB Ltd",
currency: "GBP",
accountIdType: "IBAN",
address: {
street: "1 Main St LONDON SW1A 1AA",
country: "GB",
},
},
externalId: "0123443210",
idempotencyKey: "0000012344321000",
},
},
query: `
mutation ($input: PaymentInput!) {
createPayment(input: $input) {
success code message
payment {
id status size
sender {
firstName lastName companyName
}
}
}
}`,
}; mutation($input: PaymentInput!) {
createPayment(input: $input) {
success
code
message
payment {
id
status
size
sender {
firstName
lastName
companyName
}
}
}
}{
"input": {
"fromCurrency": "AUD",
"toCurrency": "GBP",
"size": 1000,
"currency": "AUD",
"reason": "BUSINESS",
"sourceOfFunds": "BUSINESS_FUNDS",
"externalReference": "my ref 2234",
"externalId": "0123443210",
"idempotencyKey": "0000012344321000",
"recipient": {
"iban": "GB26MIDL40051512345674",
"companyName": "Acme GB Ltd",
"currency": "GBP",
"accountIdType": "IBAN",
"address": {
"street": "1 Main St LONDON SW1A 1AA",
"country": "GB"
}
}
}
}{
"data": {
"createPayment": {
"success": true,
"code": "SUCCESS",
"message": "Scheduled for immediate execution",
"payment": {
"id": "67d8e98caaa23286e1a1fd00",
"status": "OPEN",
"size": 1000,
"sender": {
"firstName": "John",
"lastName": "Smith",
"companyName": "Smith Consulting Pty Ltd"
}
}
}
}
}280const bodyJSON = {
variables: {
input: {
amount: 1000,
currency: "AUD",
externalReference: "invoice #1234",
recipient: {
bsb: "370370",
accountNo: "123123123",
companyName: "Acme Pty Ltd",
currency: "AUD",
accountIdType: "BSB",
address: {
street: "1 Main St SYDNEY NSW 2000",
country: "AU",
},
},
subClientId: "3fbj71b1dc328d56g94g9375",
externalId: "123443212",
idempotencyKey: "123443212",
},
},
query: `
mutation ($input: CreateWithdrawalInput!) {
createWithdrawal(input: $input) {
success code message
withdrawal {
id status amount currency
}
}
}`,
}; mutation($input: CreateWithdrawalInput!) {
createWithdrawal(input: $input) {
success
code
message
withdrawal {
id
status
amount
currency
}
}
} {
"input": {
"amount": 1000,
"currency": "AUD",
"externalReference": "invoice #1234",
"recipient": {
"bsb": "370370",
"accountNo": "123123123",
"companyName": "Acme Pty Ltd",
"currency": "AUD",
"accountIdType": "BSB",
"address": {
"street": "1 Main St SYDNEY NSW 2000",
"country": "AU"
}
},
"subClientId": "3fbj71b1dc328d56g94g9375",
"externalId": "123443212",
"idempotencyKey": "123443212"
}
}{
"data": {
"createWithdrawal": {
"success": true,
"code": "SUCCESS",
"message": "Withdrawal was created",
"withdrawal": {
"id": "60711af8c078ba061f623531",
"status": "INITIALISED",
"amount": 1000,
"currency": "AUD"
}
}
}
}const bodyJSON = {
variables: {
input: {
amount: 500,
currency: "AUD",
externalReference: "invoice #123",
recipient: {
bsb: "370370",
accountNo: "123123123",
companyName: "Acme Pty Ltd",
currency: "AUD",
accountIdType: "BSB",
address: {
street: "1 Main St SYDNEY NSW 2000",
country: "AU",
},
},
externalId: "1234567890",
idempotencyKey: "0987654321",
},
},
query: `
mutation ($input: CreateWithdrawalInput!) {
createWithdrawal(input: $input) {
success code message
withdrawal {
id status amount currency
sender {
firstName lastName companyName
}
}
}
}`,
}; mutation($input: CreateWithdrawalInput!) {
createWithdrawal(input: $input) {
success
code
message
withdrawal {
id
status
amount
currency
sender {
firstName
lastName
companyName
}
}
}
} {
"input": {
"amount": 500,
"currency": "AUD",
"externalReference": "invoice #123",
"recipient": {
"bsb": "370370",
"accountNo": "123123123",
"companyName": "Acme Pty Ltd",
"currency": "AUD",
"accountIdType": "BSB",
"address": {
"street": "1 Main St SYDNEY NSW 2000",
"country": "AU"
}
},
"externalId": "1234567890",
"idempotencyKey": "0987654321"
}
}{
"data": {
"createWithdrawal": {
"success": true,
"code": "SUCCESS",
"message": "Withdrawal was created",
"withdrawal": {
"id": "67cb69f2ee6c254315bb1c3d",
"status": "INITIALISED",
"amount": 500,
"currency": "AUD",
"sender": {
"firstName": "John",
"lastName": "Smith",
"companyName": "Smith Consulting Pty Ltd"
}
}
}
}mutation($input: CreateWithdrawalInput!) {
createWithdrawal(input: $input) {
success
code
message
withdrawal {
id
status
amount
currency
}
}
}{
"input": {
"amount": 1000,
"currency": "AUD",
"sender": {
"companyName": "Acme LLC",
"address": {
"street": "1 Jon St PORTLAND VA 54321",
"country": "US"
}
},
"recipient": {
"bsb": "370370",
"accountNo": "123123123",
"companyName": "Acme Pty Ltd",
"currency": "AUD",
"accountIdType": "BSB",
"address": {
"street": "1 Main St SYDNEY NSW 2000",
"country": "AU"
}
},
"externalReference": "invoice #1234",
"externalId": "12344321",
"idempotencyKey": "12344321"
}
}{
"data": {
"createWithdrawal": {
"success": true,
"code": "SUCCESS",
"message": "Withdrawal was created",
"withdrawal": {
"id": "6904332f42b934e1954a734e",
"status": "INITIALISED",
"amount": 1000,
"currency": "AUD"
}
}
}
}const bodyJSON = {
variables: {
input: {
amount: 1000,
currency: "AUD",
sender: {
companyName: "Acme LLC",
address: {
street: "1 Jon St PORTLAND VA 54321",
country: "US",
},
},
recipient: {
bsb: "370370",
accountNo: "123123123",
companyName: "Acme Pty Ltd",
currency: "AUD",
accountIdType: "BSB",
address: {
street: "1 Main St SYDNEY NSW 2000",
country: "AU",
},
},
externalReference: "invoice #1234",
externalId: "12344321",
idempotencyKey: "12344321",
},
},
query: `
mutation ($input: CreateWithdrawalInput!) {
createWithdrawal(input: $input) {
success code message withdrawal {
id status amount currency
}
}
}`,
}; CRUD queries for your payment recipients
CRUD queries for your payment senders
{
"input": "6b04c62ec0bf606bf216ae21"
}const bodyJSON = {
variables: {
input: "6b04c62ec0bf606bf216ae21",
},
query: `
query ($input: ID) {
recipient(id: $input) {
accountIdType currency country email
}
}`,
};query($input: ID) {
recipient(id: $input) {
accountIdType
currency
country
email
# there are many other properties
}
}{
"data": {
"recipient": {
"accountIdType": "ACC NO",
"currency": "USD",
"country": "AU",
"email": "john@example.com"
}
}
}const bodyJSON = {
variables: {
input: {
currency: "USD",
},
},
query: `
query ($input: RecipientQueryInput!) {
recipients(input: $input) {
accountIdType currency country email
}
}`,
};query($input: RecipientQueryInput!) {
recipients(input: $input) {
accountIdType
currency
country
email
# there are many other properties
}
}{
"input": {
"currency": "USD"
}
} {
"data": {
"recipients": [
{
"accountIdType": "ACC NO",
"currency": "USD",
"country": "AU",
"email": "john@example.com"
}
]
}
}const bodyJSON = {
variables: {
input: {
firstName: "John",
lastName: "Malkovich",
dob: "1987-06-05",
accountIdType: "BSB",
currency: "AUD",
bsb: "370370",
accountNo: "12341234",
email: "john@example.com",
address: {
street: "22 Woolooware Rd",
suburb: "Woolooware",
state: "NSW",
country: "AU",
postcode: "2230",
},
},
},
query: `
mutation ($input: RecipientInput!) {
createRecipient(input: $input) {
success code message
recipient {
id nickName accountIdType currency email
}
}
}`,
};mutation($input: RecipientInput!) {
createRecipient(input: $input) {
success code message
recipient {
id nickName accountIdType currency email
# there are many other properties
}
}
} {
"input": {
"firstName": "John",
"lastName": "Malkovich",
"dob": "1987-06-05",
"accountIdType": "BSB",
"currency": "AUD",
"bsb": "370370",
"accountNo": "12341234",
"email": "john@example.com",
"address": {
"street": "22 Woolooware Rd",
"suburb": "Woolooware",
"state": "NSW",
"country": "AU",
"postcode": "2230"
}
}
}{
"data": {
"createRecipient": {
"success": true,
"code": "SUCCESS",
"message": "Recipient created",
"recipient": {
"id": "6859c06eaa36ba8534d974f1",
"nickName": "JohnMalkov",
"accountIdType": "BSB",
"currency": "AUD",
"email": "john@example.com"
}
}
}
}const bodyJSON = {
variables: {
input: {
companyName: "Acme Pty Ltd",
accountIdType: "BSB",
currency: "AUD",
bsb: "370370",
accountNo: "12341234",
email: "john@example.com",
address: {
street: "22 Woolooware Rd",
suburb: "Woolooware",
state: "NSW",
country: "AU",
postcode: "2230",
},
},
},
query: `
mutation ($input: RecipientInput!) {
createRecipient(input: $input) {
success code message
recipient {
id nickName accountIdType currency email
}
}
}`,
};mutation($input: RecipientInput!) {
createRecipient(input: $input) {
success code message
recipient {
id nickName accountIdType currency email
# there are many other properties
}
}
} {
"input": {
"companyName": "Acme Pty Ltd",
"accountIdType": "BSB",
"currency": "AUD",
"bsb": "370370",
"accountNo": "12341234",
"email": "john@example.com",
"address": {
"street": "22 Woolooware Rd",
"suburb": "Woolooware",
"state": "NSW",
"country": "AU",
"postcode": "2230"
}
}
}{
"data": {
"createRecipient": {
"success": true,
"code": "SUCCESS",
"message": "Recipient created",
"recipient": {
"id": "6859ca4baa36ba8534d97da1",
"nickName": "Acme Pty L",
"accountIdType": "BSB",
"currency": "AUD",
"email": "john@example.com"
}
}
}
}const bodyJSON = {
variables: {
id: "5ba89a6b35a2b327b81ffc3b",
input: {
nickName: "JohnM",
firstName: "John",
lastName: "Malkovich",
accountIdType: "BSB",
currency: "AUD",
bsb: "370370",
accountNo: "12341234",
email: "john@example.com",
address: {
street: "22 Woolooware Rd",
suburb: "Woolooware",
state: "NSW",
country: "AU",
postcode: "2230",
},
},
},
query: `
mutation ($id: ID, $input: RecipientInput!) {
updateRecipient(id: $id, input: $input) {
success code message
recipient {
id nickName
}
}
}`,
}; mutation($id: ID, $input: RecipientInput!) {
updateRecipient(id: $id, input: $input) {
success
code
message
recipient {
id
nickName
# there are many other properties
}
}
}{
"id": "5ba89a6b35a2b327b81ffc3b",
"input":{
"nickName": "JohnM",
"firstName": "John",
"lastName": "Malkovich",
"accountIdType": "BSB",
"currency": "AUD",
"bsb": "370370",
"accountNo": "12341234",
"email": "john@example.com",
"address": {
"street": "22 Woolooware Rd",
"suburb" : "Woolooware",
"state": "NSW",
"country": "AU",
"postcode": "2230"
}
}
}{
"data": {
"createRecipient": {
"success": true,
"code": "SUCCESS",
"message": "Recipient updated",
"recipient": {
"id": "5ba89a6b35a2b327b81ffc3b",
"nickName": "JohnM"
}
}
}
}const bodyJSON = {
variables: {
input: "6b04c62ec0bf606bf216ae21",
},
query: `
mutation ($input: ID) {
deleteRecipient(id: $input) {
success code message
}
}`,
};mutation($input: ID) {
deleteRecipient(id: $input) {
success
code
message
# there are many other properties
}
}{
"input": "6b04c62ec0bf606bf216ae21"
}{
"data": {
"deleteRecipient": {
"success": true,
"code": "SUCCESS",
"message": "Recipient deleted"
}
}
}const bodyJSON = {
variables
query($input: ID) {
{
"input": "59f2733f2519e236edab0efe"
}{
"data": {
"sender": {
"email": "john@example.com",
"firstName": "John",
"lastName": "Smith",
"companyName": null,
"address": {
"country": "GB"
}
}
}
}const bodyJSON = {
variables: {
input: {
email: "john@example.com",
},
},
query: `
query ($input: RecipientQueryInput!) {
senders(input: $input) {
email firstName lastName companyName
address {
country
}
}
}`,
};query($input: SenderQueryInput!) {
senders(input: $input) {
email
firstName
lastName
companyName
address {
country
}
# there are many other properties
}
}{
"input": {
"email": "john@example.com"
}
}{
"data": {
"senders": [
{
"email": "john@example.com",
"firstName": "John",
"lastName": "Smith",
"companyName": null,
"address": {
"country": "GB"
}
},
{
"email": "john@example.com",
"firstName": null,
"lastName": null,
"companyName": "Acme Inc",
"address": {
"country": "US"
}
},
]
}
}const bodyJSON = {
variables: {
input: {
firstName: "Malcolm",
lastName: "Jez",
dob: "2000-01-01",
email: "malcolm@example.com",
mobile: "+61 4123456789",
address: {
street: "1 Test St",
suburb: "London",
state: "TST",
country: "GB",
postcode: "2000",
},
idDoc: {
type: "passport",
docNumber: "GB1234321",
issuer: "His Majesty’s Passport Office (HMPO)",
issueDate: "1990-01-01",
expiryDate: "2045-01-01",
country: "GB",
},
},
},
query: `
mutation ($input: SenderInput!) {
createSender(input: $input) {
success code message
sender {
id nickName
}
}
}`,
};mutation($input: SenderInput!) {
createSender(input: $input) {
success code message
sender {
id
nickName
# there are many other properties
}
}
}{
"input": {
"firstName": "Malcolm",
"lastName": "Jez",
"dob": "2000-01-01",
"email": "malcolm@example.com",
"mobile": "+61 4123456789",
"address": {
"street": "1 Test St",
"suburb": "London",
"state": "TST",
"country": "GB",
"postcode": "2000"
},
"idDoc": {
"type": "passport",
"docNumber": "GB1234321",
"issuer": "His Majesty’s Passport Office (HMPO)",
"issueDate": "1990-01-01",
"expiryDate": "2045-01-01",
"country": "GB"
}
}
}{
"data": {
"createSender": {
"success": true,
"code": "CREATED",
"message": "New sender created",
"sender": {
"id": "686393e689c1fb1b255cac5c",
"nickName": "MalcolmJez"
}
}
}
}const bodyJSON = {
variables: {
input: {
companyName: "Acme Pte Ltd",
businessNumber: "12345678912",
email: "acme@example.com",
mobile: "+61 4123456789",
address: {
street: "1 Test St",
suburb: "London",
state: "TST",
country: "GB",
postcode: "2000",
},
idDoc: {
type: "certificateOfRegistration",
docNumber: "GB-REG-987654321",
issuer: "Companies House",
issueDate: "1990-01-01",
expiryDate: "2100-01-01",
country: "GB",
},
},
},
query: `
mutation ($input: SenderInput!) {
createSender(input: $input) {
success code message
sender {
id nickName
}
}
}`,
};mutation($input: SenderInput!) {
createSender(input: $input) {
success code message
sender {
id
nickName
# there are many other properties
}
}
}{
"input": {
"companyName": "Acme Pte Ltd",
"businessNumber": "12345678912",
"email": "acme@example.com",
"mobile": "+61 4123456789",
"address": {
"street": "1 Test St",
"suburb": "London",
"state": "TST",
"country": "GB",
"postcode": "2000"
},
"idDoc": {
"type": "certificateOfRegistration",
"docNumber": "GB-REG-987654321",
"issuer": "Companies House",
"issueDate": "1990-01-01",
"expiryDate": "2100-01-01",
"country": "GB"
}
}
}{
"data": {
"createSender": {
"success": true,
"code": "CREATED",
"message": "New sender created",
"sender": {
"id": "68638e6989c1fb1b255ca9c3",
"nickName": "Acme Pte L"
}
}
}
}const bodyJSON = {
variables: {
input: {
firstName: "Malcolm",
lastName: "Jez The Second",
dob: "2000-01-01",
email: "malcolm@example.com",
mobile: "+61 4123456789",
address: {
street: "1 Test St",
suburb: "London",
state: "TST",
country: "GB",
postcode: "2000",
},
},
},
query: `
mutation ($input: SenderInput!) {
updateSender(input: $input) {
success code message
sender {
id lastName
}
}
}`,
};mutation($id: ID, $input: SenderInput!) {
updateSender(id: $id, input: $input) {
success code message
sender {
id
lastName
# there are many other properties
}
}
}{
"id": "686393e689c1fb1b255cac5c",
"input": {
"firstName": "Malcolm",
"lastName": "Jez The Second",
"dob": "2000-01-01",
"email": "malcolm@example.com",
"mobile": "+61 4123456789",
"address": {
"street": "1 Test St",
"suburb": "London",
"state": "TST",
"country": "GB",
"postcode": "2000"
}
}
}{
"data": {
"updateSender": {
"success": true,
"code": "UPDATED",
"message": "Sender 686393e689c1fb1b255cac5c updated.",
"sender": {
"id": "686393e689c1fb1b255cac5c",
"lastName": "Jez The Second"
}
}
}
}const bodyJSON = {
variables: {
input: "686393e689c1fb1b255cac5c",
},
query: `
mutation ($input: ID) {
deleteSender(id: $input) {
success code message
}
}`,
};mutation($input: ID) {
deleteSender(id: $input) {
success
code
message
# there are many other properties
}
}{
"input": "686393e689c1fb1b255cac5c"
}
{
"data": {
"deleteSender": {
"success": true,
"code": "SUCCESS",
"message": "Sender deleted"
}
}
}Two types of the webhooks
content-type: application/json
user-agent: FlashFX
flashfx-request-id: [A unique ID of this particuar event]
flashfx-signature: [The cryptographic signature]{
"event": "deposit_initiated",
"eventScheduledAt": "2026-03-03T01:25:11.984Z",
"id": "603f0198770d6595e3c83e0d",
"amount": 100,
"totalFee": 1,
"currency": "AUD",
"externalReference": "2233445566",
"clearedAt": "2026-03-03T03:25:12.792Z",
"statusMessage": "Deposit initiated",
"recipient": {
"accountName": "ACME Inc",
"accountNo": "1839394",
"bsb": "809387"
},
"sender": {
"accountName": "ACME Inc",
"companyName": "ACME Inc",
"bankName": "Bank ACME",
"bankCountry": "AU"
},
"subClient": {
"id": "203af01936410fd5d5e3c8f14d",
"fullName": "ACME Inc",
"accountNo": "1839394",
"bsb": "809387",
"externalId": "111222333"
}
}{
"event": "deposit_reviewing",
"eventScheduledAt": "2026-03-03T01:25:11.984Z",
"id": "603f0198770d6595e3c83e0d",
"amount": 100,
"totalFee": 1,
"currency": "AUD",
"externalReference": "2233445566",
"clearedAt": "2026-03-03T03:25:12.792Z",
"statusMessage": "Awaiting manual compliance",
"recipient": {
"accountName": "ACME Inc",
"accountNo": "1839394",
"bsb": "809387"
},
"sender": {
"accountName": "ACME Inc",
"companyName": "ACME Inc",
"bankName": "Bank ACME",
"bankCountry": "AU"
},
"subClient": {
"id": "203af01936410fd5d5e3c8f14d",
"fullName": "ACME Inc",
"accountNo": "1839394",
"bsb": "809387",
"externalId": "111222333"
}
}{
"event": "deposit_cleared",
"eventScheduledAt": "2026-03-03T01:25:11.984Z",
"id": "603f0198770d6595e3c83e0d",
"amount": 100,
"totalFee": 1,
"currency": "AUD",
"externalReference": "2233445566",
"clearedAt": "2026-03-03T03:25:12.792Z",
"statusMessage": "Deposit cleared",
"recipient": {
"accountName": "ACME Inc",
"accountNo": "1839394",
"bsb": "809387"
},
"sender": {
"accountName": "ACME Inc",
"companyName": "ACME Inc",
"bankName": "Bank ACME",
"bankCountry": "AU"
},
"subClient": {
"id": "203af01936410fd5d5e3c8f14d",
"fullName": "ACME Inc",
"accountNo": "1839394",
"bsb": "809387",
"externalId": "111222333"
}
}{
"event": "deposit_cancelled",
"eventScheduledAt": "2026-03-03T01:25:11.984Z",
"id": "603f0198770d6595e3c83e0d",
"amount": 100,
"totalFee": 1,
"currency": "AUD",
"externalReference": "2233445566",
"clearedAt": "2026-03-03T03:25:12.792Z",
"statusMessage": "Cancelled by: john@example.com : ",
"recipient": {
"accountName": "ACME Inc",
"accountNo": "1839394",
"bsb": "809387"
},
"sender": {
"accountName": "ACME Inc",
"companyName": "ACME Inc",
"bankName": "Bank ACME",
"bankCountry": "AU"
},
"subClient": {
"id": "203af01936410fd5d5e3c8f14d",
"fullName": "ACME Inc",
"accountNo": "1839394",
"bsb": "809387",
"externalId": "111222333"
}
}{
"event": "deposit_refunding",
"eventScheduledAt": "2026-03-03T01:25:11.984Z",
"id": "603f0198770d6595e3c83e0d",
"amount": 100,
"totalFee": 1,
"refundAmount": 99,
"currency": "AUD",
"externalReference": "2233445566",
"refundReason": "Client refund request",
"statusMessage": "Deposit refunded",
"refundedAt": "2026-03-03T03:28:43.936Z",
"clearedAt": "2026-03-03T03:25:12.792Z",
"recipient": {
"accountName": "ACME Inc",
"accountNo": "1839394",
"bsb": "809387"
},
"sender": {
"accountName": "ACME Inc",
"companyName": "ACME Inc",
"bankName": "Bank ACME",
"bankCountry": "AU"
},
"subClient": {
"id": "203af01936410fd5d5e3c8f14d",
"fullName": "ACME Inc",
"accountNo": "1839394",
"bsb": "809387",
"externalId": "111222333"
}
}{
"event": "deposit_refunded",
"eventScheduledAt": "2026-03-03T01:25:11.984Z",
"id": "603f0198770d6595e3c83e0d",
"amount": 100,
"totalFee": 1,
"refundAmount": 99,
"currency": "AUD",
"externalReference": "2233445566",
"refundReason": "Client refund request",
"statusMessage": "Deposit refunded",
"refundedAt": "2026-03-03T03:28:43.936Z",
"clearedAt": "2026-03-03T03:25:12.792Z",
"recipient": {
"accountName": "ACME Inc",
"accountNo": "1839394",
"bsb": "809387"
},
"sender": {
"accountName": "ACME Inc",
"companyName": "ACME Inc",
"bankName": "Bank ACME",
"bankCountry": "AU"
},
"subClient": {
"id": "203af01936410fd5d5e3c8f14d",
"fullName": "ACME Inc",
"accountNo": "1839394",
"bsb": "809387",
"externalId": "111222333"
}
}{
"event": "withdrawal_initiated",
"eventScheduledAt": "2026-03-03T01:25:11.984Z",
"id": "51711af8c078ba061f623531",
"amount": 2000,
"totalFee": 1,
"currency": "AUD",
"externalId": "12344321",
"subClient": {
"id": "203af01936410fd5d5e3c8f14d",
"fullName": "ACME Inc",
"accountNo": "1839394",
"bsb": "809387",
"externalId": "111222333"
}
}{
"event": "withdrawal_reviewing",
"eventScheduledAt": "2026-03-03T01:25:11.984Z",
"id": "51711af8c078ba061f623531",
"amount": 2000,
"totalFee": 1,
"currency": "AUD",
"statusMessage": "Awaiting manual compliance"
"externalId": "12344321",
"subClient": {
"id": "203af01936410fd5d5e3c8f14d",
"fullName": "ACME Inc",
"accountNo": "1839394",
"bsb": "809387",
"externalId": "111222333"
}
}{
"event": "withdrawal_pending",
"eventScheduledAt": "2026-03-03T01:25:11.984Z",
"id": "51711af8c078ba061f623531",
"amount": 2000,
"totalFee": 1,
"currency": "AUD",
"statusMessage": "Sent to recipient bank"
"externalId": "12344321",
"subClient": {
"id": "203af01936410fd5d5e3c8f14d",
"fullName": "ACME Inc",
"accountNo": "1839394",
"bsb": "809387",
"externalId": "111222333"
}
}{
"event": "withdrawal_completed",
"eventScheduledAt": "2026-03-03T01:25:11.984Z",
"id": "51711af8c078ba061f623531",
"amount": 2000,
"totalFee": 1,
"currency": "AUD",
"externalId": "12344321",
"statusMessage": "Transaction Confirmed",
"clearedAt": "2021-03-03T03:25:12.792Z",
"subClient": {
"id": "203af01936410fd5d5e3c8f14d",
"fullName": "ACME Inc",
"accountNo": "1839394",
"bsb": "809387",
"externalId": "111222333"
}
}{
"event": "withdrawal_failed",
"eventScheduledAt": "2026-03-03T01:25:11.984Z",
"id": "51711af8c078ba061f623531",
"amount": 2000,
"totalFee": 1,
"currency": "AUD",
"externalId": "12344321",
"subClient": {
"id": "203af01936410fd5d5e3c8f14d",
"fullName": "ACME Inc",
"accountNo": "1839394",
"bsb": "809387",
"externalId": "111222333"
}
}{
"event": "withdrawal_refunded",
"eventScheduledAt": "2026-03-03T01:25:11.984Z",
"id": "51711af8c078ba061f623531",
"amount": 2000,
"totalFee": 1,
"refundAmount": 2000,
"currency": "AUD",
"externalId": "12344321",
"refundReason": "No account or incorrect account number",
"statusMessage": "Payout reversal",
"refundedAt": "2026-03-04T15:21:11.920Z",
"clearedAt": "2026-03-03T03:25:12.792Z",
"recipient": {
"displayName": "John Smith",
"bsb": "012620",
"accountNo": "89900998"
},
"subClient": {
"id": "203af01936410fd5d5e3c8f14d",
"fullName": "John Smith",
"accountNo": "1839394",
"bsb": "809387",
"externalId": "111222333"
}
}{
"event": "withdrawal_cancelled",
"eventScheduledAt": "2026-03-03T01:25:11.984Z",
"id": "51711af8c078ba061f623531",
"amount": 2000,
"totalFee": 1,
"currency": "AUD",
"externalId": "12344321",
"rejectCode": "CANCELLATION_REQUESTED_BY_PARTICIPANT",
"rejectedAt": "2025-07-24T21:41:14.581Z"
"statusMessage": "The transaction is rejected upon request.",
"subClient": {
"id": "203af01936410fd5d5e3c8f14d",
"fullName": "ACME Inc",
"accountNo": "1839394",
"bsb": "809387",
"externalId": "111222333"
}
}{
"event": "currency_converted",
"eventScheduledAt": "2026-03-03T01:25:11.984Z",
"id": "60711af8c078ba061f623531",
"fromAmount": 1000,
"fromCurrency": "AUD",
"toAmount": 411.04,
"toCurrency": "EUR",
"externalId": "12344321"
}{
"event": "payment_complete",
"eventScheduledAt": "2026-03-03T01:25:11.984Z",
"id": "60711af8c078ba061f623531",
"fromAmount": 1000,
"fromCurrency": "AUD",
"toAmount": 411.04,
"toCurrency": "EUR",
"externalId": "12344321"
}{
"event": "payment_failed",
"eventScheduledAt": "2026-03-03T01:25:11.984Z",
"id": "60711af8c078ba061f623531",
"fromAmount": 1000,
"fromCurrency": "AUD",
"toAmount": 411.04,
"toCurrency": "EUR",
"externalId": "12344321"
}{
"event": "payment_cancelled",
"eventScheduledAt": "2026-03-03T01:25:11.984Z",
"id": "60711af8c078ba061f623531",
"fromAmount": 1000,
"fromCurrency": "AUD",
"toAmount": 411.04,
"toCurrency": "EUR",
"externalId": "12344321"
}{
"event": "payment_created",
"eventScheduledAt": "2026-03-03T01:25:11.984Z",
"id": "60711af8c078ba061f623531",
"fromAmount": 3500,
"fromCurrency": "EUR",
"toAmount": 2501.94,
"toCurrency": "AUD",
"subClient": {
"id": "203af01936410fd5d5e3c8f14d",
"fullName": "ACME Inc",
"accountNo": "1839394",
"bsb": "809387",
"externalId": "111222333"
}
}{
"event": "conversion_initialised",
"eventScheduledAt": "2026-03-03T01:25:11.984Z",
"id": "60711af8c078ba061f623531",
"fromAmount": 1000,
"fromCurrency": "AUD",
"toAmount": 411.04,
"toCurrency": "EUR",
"rate": 0.41104,
"externalId": "12344321"
}{
"event": "conversion_pending",
"eventScheduledAt": "2026-03-03T01:25:11.984Z",
"id": "60711af8c078ba061f623531",
"fromAmount": 1000,
"fromCurrency": "AUD",
"toAmount": 411.04,
"toCurrency": "EUR",
"rate": 0.41104,
"externalId": "12344321"
}{
"event": "conversion_converted",
"eventScheduledAt": "2026-03-03T01:25:11.984Z",
"id": "60711af8c078ba061f623531",
"fromAmount": 1000,
"fromCurrency": "AUD",
"toAmount": 411.04,
"toCurrency": "EUR",
"rate": 0.41104,
"externalId": "12344321"
}{
"event": "conversion_failed",
"eventScheduledAt": "2026-03-03T01:25:11.984Z",
"id": "60711af8c078ba061f623531",
"fromAmount": 1000,
"fromCurrency": "AUD",
"toAmount": 411.04,
"toCurrency": "EUR",
"rate": 0.41104,
"externalId": "12344321"
}{
"event": "conversion_cancelled",
"eventScheduledAt": "2026-03-03T01:25:11.984Z",
"id": "60711af8c078ba061f623531",
"fromAmount": 1000,
"fromCurrency": "AUD",
"toAmount": 411.04,
"toCurrency": "EUR",
"rate": 0.41104,
"externalId": "12344321"
}{
"event": "subclient_initiated",
"eventScheduledAt": "2026-03-03T01:25:11.984Z",
"id": "695257f8c8754a74ad671c48",
"fullName": "John Doe",
"status": "INITIATED",
"externalId": "123456789"
}{
"event": "subclient_active",
"eventScheduledAt": "2026-03-03T01:25:11.984Z",
"id": "695257f8c8754a74ad671c48",
"fullName": "John Doe",
"status": "ACTIVE",
"externalId": "123456789"
}{
"event": "subclient_unapproved",
"eventScheduledAt": "2026-03-03T01:25:11.984Z",
"id": "695257f8c8754a74ad671c48",
"fullName": "John Doe",
"status": "UNAPPROVED",
"externalId": "123456789"
}{
"event": "subclient_failed_kyc",
"eventScheduledAt": "2026-03-03T01:25:11.984Z",
"id": "695257f8c8754a74ad671c48",
"fullName": "John Doe",
"status": "FAILED_KYC",
"externalId": "123456789"
}{
"event": "subclient_deactivated",
"eventScheduledAt": "2026-03-03T01:25:11.984Z",
"id": "695257f8c8754a74ad671c48",
"fullName": "John Doe",
"status": "DEACTIVATED",
"externalId": "123456789"
}{
"event": "subclient_disabled",
"eventScheduledAt": "2026-03-03T01:25:11.984Z",
"id": "695257f8c8754a74ad671c48",
"fullName": "John Doe",
"status": "DEACTIVATED",
"externalId": "123456789"
}{
"event": "ams_initialised",
"eventScheduledAt": "2026-03-03T08:23:14.521Z",
"id": "6820a4f3e1c2b5d8f0123456",
"name": "John Smith",
"country": "AU",
"status": "INITIALISED"
}{
"event": "ams_pending",
"eventScheduledAt": "2026-03-03T08:23:15.108Z",
"id": "6820a4f3e1c2b5d8f0123456",
"name": "John Smith",
"country": "AU",
"status": "PENDING"
}{
"event": "ams_completed",
"eventScheduledAt": "2026-03-03T08:26:42.774Z",
"id": "6820a4f3e1c2b5d8f0123456",
"name": "John Smith",
"country": "AU",
"status": "COMPLETED"
}{
"event": "ams_failed",
"eventScheduledAt": "2026-03-03T08:26:42.774Z",
"id": "6820a4f3e1c2b5d8f0123456",
"name": "John Smith",
"country": "AU",
"status": "FAILED"
}{
"event": "rfi_created",
"eventScheduledAt": "2026-05-28T09:00:01.115Z",
"id": "61f3a2c8d1e9b7a4c5d6e7f8",
"statusMessage": "We are waiting for your replies",
"deadline": "2026-06-04T09:00:00.000Z",
"depositIds": [],
"withdrawalIds": ["61f3a2c8d1e9b7a4c5d6e7aa"],
"paymentIds": [],
"createdAt": "2026-05-28T09:00:00.000Z",
"updatedAt": "2026-05-28T09:00:00.000Z"
}{
"event": "rfi_assessing",
"eventScheduledAt": "2026-05-28T11:42:13.512Z",
"id": "61f3a2c8d1e9b7a4c5d6e7f8",
"statusMessage": "We are assessing the information you provided",
"deadline": "2026-06-04T09:00:00.000Z",
"depositIds": [],
"withdrawalIds": ["61f3a2c8d1e9b7a4c5d6e7aa"],
"paymentIds": [],
"createdAt": "2026-05-28T09:00:00.000Z",
"updatedAt": "2026-05-28T11:42:13.512Z"
}{
"event": "rfi_closed",
"eventScheduledAt": "2026-05-29T02:10:44.901Z",
"id": "61f3a2c8d1e9b7a4c5d6e7f8",
"statusMessage": "We assessed the information you provided",
"deadline": "2026-06-04T09:00:00.000Z",
"depositIds": [],
"withdrawalIds": ["61f3a2c8d1e9b7a4c5d6e7aa"],
"paymentIds": [],
"createdAt": "2026-05-28T09:00:00.000Z",
"updatedAt": "2026-05-29T02:10:44.890Z"
}{
"event": "rfi_cancelled",
"eventScheduledAt": "2026-05-28T14:05:09.220Z",
"id": "61f3a2c8d1e9b7a4c5d6e7f8",
"statusMessage": "This request has been withdrawn and no longer needs a response",
"deadline": "2026-06-04T09:00:00.000Z",
"depositIds": [],
"withdrawalIds": ["61f3a2c8d1e9b7a4c5d6e7aa"],
"paymentIds": [],
"createdAt": "2026-05-28T09:00:00.000Z",
"updatedAt": "2026-05-28T14:05:09.210Z"
}rfi_created, rfi_assessing, rfi_closed. Dispatched for every RFI regardless of whether it is answered via the API or via the email form.ams_completedams_failedCLABEIFSCCNAPSSORT_CODEACC_NObicUNAPPROVED.deposit_cleared will be sent immediately as we approve (clear) the deposits. So, no changes here.accountNamedepositMechanismacceptingInstructionInstitutionSenderId - you must pre-create this Sender and submit every time if you were instructed by other FI to make this withdrawal.const bodyJSON = {
variables: {
input: {
amount: 1000,
recipient: { // <- this is new !!!
bsb: "370370",
accountNo: "123123123",
companyName: "Acme Pty Ltd",
currency: "AUD",
accountIdType: "BSB",
address: { street: "1 Main St SYDNEY NSW 2000", country: "AU" },
},
sender: { // <- this is new too !!!
companyName: "Acme LLC",
address: { street: "1 Jon St PORTLAND VA 54321", country: "US" },
},
},
},
query: `
mutation ($input: CreateWithdrawalInput!) {
createWithdrawal(input: $input) {
success code message withdrawal { id }
}
}`,
};
