FlashFX Developer API documentation
FlashFX API is GraphQL based because GraphQL is simpler and easier than REST API and more developer friendly. Although, the data you send and receive is all JSON.
This documentation website does not have full list of API fields and methods. This is intentional. The full list of the API calls you can performs and the data fields you can send/receive is listed in the API Playground (click "DOCS" on the right hand side).
You can search, visualise, or extract your data using our FlashConnect product: https://connect.flash-fx.com/
You would get a dedicated Australian BSB and a bank account number.
Warning: The account number can only process local transfers, no SWIFT/RTGS.
Any funds deposited to that account would increase your FlashFX balance. We preserve the provided payment reference of every deposit for your further utilisation. E.g. invoice number or else.
By default, only yourself is allowed to deposit to it. However, the third party deposits are also possible. Although, we would need to enable this setting for you separately.
Sometimes, banks can delay your deposit by up to 24 hours. This should be expected. But typically, deposits are reflected in your FlashFX balance immediately.
If set, you would get a webhook (aka callback) notification about every deposit made to your bank account. Go to the https://connect.flash-fx.com to setup a deposit webhook.
You can manually reject unwanted deposits via the https://connect.flash-fx.com interface. The funds will be returned to the original sender bank account.
This API allows you to withdraw your FlashFX balance. By default, only yourself is allowed to receive those funds. The third party withdrawals (aka payouts) are also possible. Although, we would need to enable this setting for you separately.
If your payout is a part of FX payments, we are legally obliged to use classic Australian payment system a.k.a. Direct Entry. It would take from 0 up to few hours to deliver such funds. Otherwise, payouts are delivered to the recipient instantly.
If a payout fails you will receive a webhook notification with a clear explanation of what went wrong. This is typically bank account number typos.
The payout remitter name is configurable. You can give us the remitter name as
withdrawal.senderdata property. This is especially useful for FX-linked payouts. If a Brazilian mama Katarina Oreiro sends money to her son in Australia, he will see his mom's name in the bank statement - "Payment from Katarina Oreiro".
You can send you FlashFX balance internationally via our API and enjoy instant delivery to countries with local instant payment systems, e.g. Philippines. By the way, cash payments to Philippines are also supported.
Your code would need to pre-create both sender and recipient before creating a payment for them.
All the entities in our database (withdrawal, payment, sender, recipient) can hold your system's ID. See the
externalIdfield in the API docs.
Depending on the recipient's country a payment can take from few minutes to few days. You would receive a webhook notification when a payment state changes.
In most cases you can send money to your FlashFX balance. This can be automated. You will receive a webhook notification when we see you sending to FlashFX from other countries.
The API token you generate expires in 4 hours. You can always use
logoutGraphQL mutation to expire it earlier.
You can't reset your own password until we verify your identity.
Webhooks have cryptographic signatures.
IP address whitelisting feature is available from FlashConnect interface allowing login to our APIs from only preapproved addresses that you specify.
API rate limiting is in place to ensure stable performance of our service and prevent its potential abuse.
- 2.Explain what kind of services you are looking from FlashFX.
- 3.We will examine your needs and explain how to get access to our UAT environment.
While we will endeavour to not introduce any breaking changes they might still occur in the future. In that case we will communicate about the upcoming changes via your registered email.