
Payswiftly
Supports in this guide: Payouts
Provider website: payswiftly.io
What you need to do for start processing transactions (brief summary)
- Get your credentials (from Payswiftly)
- Connect in Dashboard
- Send an API request
Prerequisites: get from Payswiftly
Send a connection request at payswiftly.io/get-started or contact your Payswiftly account manager directly. Submit the required documents to verify your account, then get the following values issued for your account.
- Api Key -> Corefy field
api_key. - Api Secret -> Corefy field
api_secret. - Subaccount Id -> Corefy field
subaccount_id. - Use API V2 -> Corefy field
use_v2-> ask your Payswiftly account manager whether your account is enabled for the v2 receiver-account API before turning this on; it changes which fields are expected for some payout methods (see below).
Payouts processing (connect Provider account, create payout-invoice)
Connect Provider account in Corefy Dashboard
Step 1 - Open connection form
Open Payswiftly in the provider directory and press Connect at Payswiftly Provider Overview page in the New connection section.
Step 2 - Fill in fields and select settings
- Api Key
- Api Secret
- Subaccount Id
- Use API V2 -> (leave off unless your account manager confirmed your Subaccount is set up for it)
- Test Mode -> (enable if you are using sandbox credentials)
Success
You have connected Payswiftly Provider account!
First request to Corefy API (MIN)
What it does: creates a payout-invoice. Payswiftly requires a receiver (beneficiary) and a bank account to be created/verified for them before the payout itself can be sent - Corefy does this automatically as part of processing the invoice, using the fields you pass.
Payout - MIN
POST /api/payout-invoices
{
"data": {
"type": "payout-invoice",
"attributes": {
"reference_id": "7a8b9c0d-1e2f-4031-8a02-5b6c7d8e9f0a",
"service": "bank_transfer_aud",
"currency": "AUD",
"amount": 5500,
"fields": {
"beneficiary_name": "John",
"beneficiary_lastname": "Wick",
"beneficiary_email": "johnwick@example.com",
"account_type": "Individual",
"account_number": "7988368",
"bank_branch_code": "012003"
}
}
}
}
Important
account_typemust be exactlyIndividualorBusiness- any other value is silently dropped, and the request to Payswiftly is then sent with no account type at all.bank_branch_code(BSB) is required for every currency exceptEUR.- For
AUDandCAD, the beneficiary's country is derived automatically from the currency -beneficiary_country_code_isodoes not need to be sent. For every other currency it is required (see MAX).
Payout - MAX
{
"data": {
"type": "payout-invoice",
"attributes": {
"reference_id": "7a8b9c0d-1e2f-4031-8a02-5b6c7d8e9f0a",
"service": "bank_transfer_eur",
"currency": "EUR",
"amount": 5500,
"fields": {
"beneficiary_name": "John",
"beneficiary_lastname": "Wick",
"beneficiary_email": "johnwick@example.com",
"dialcode": "61",
"beneficiary_phone": "412345678",
"beneficiary_dob": "1991-06-10",
"beneficiary_address": "122 Grenfell St",
"beneficiary_city": "Adelaide",
"beneficiary_state": "SA",
"beneficiary_postcode": "5000",
"beneficiary_country_code_iso": "AU",
"account_type": "Individual",
"account_number": "7988368"
}
}
}
}
Extended request (MAX)
beneficiary_phone, beneficiary_dob, beneficiary_address, beneficiary_city, beneficiary_state, beneficiary_postcode and dialcode are all optional enrichment - they are passed through to Payswiftly's receiver-creation call when present but are not required for the payout to be accepted.
Payout methods and Use API V2
Payswiftly supports bank transfers (bank_transfer_cad, bank_transfer_aud, bank_transfer_eur, bank_transfer_gbp, bank_transfer_usd), EFT (eft_cad) and SEPA transfer (sepa_transfer_eur) services, plus ACH for US bank accounts. Which of these are enabled on your route is set up together with your account manager.
With Use API V2 enabled, some routes switch to a different bank-account endpoint and a different field set for the same service:
- EFT / ACH ->
account_number,routing_number,account_type - SEPA ->
iban,bic - Direct Entry (classic AU bank transfer under v2) ->
account_number,bank_branch_code(BSB) - Digital (e.g. a CAD route under v2) ->
beneficiary_email(sent to Payswiftly as the recipient identifier) and the beneficiary's full name
No Options or Constants are configured for this connector.
Refunds
Payswiftly does not support refunds - no refund interface is implemented for this connector, and Corefy only supports Payouts here.
Additional info
- Active reconciliation is available - Corefy can request the current payout status from Payswiftly on demand (
GET /api/payout/{id}), in addition to processing Payswiftly's own asynchronous callbacks. - Receiver KYC can put a payout on hold - if Payswiftly reports the newly created receiver's KYC status as
pending, the payout is left in a pending state with the message "Your payment has been put on hold. Please complete the KYC verification. Instructions have been sent to your email." It resumes automatically once Payswiftly sends the final KYC result (completedorfailed) via callback - no manual action is needed on your side. - Receivers are matched by email - before creating a new receiver, Corefy looks up an existing one by
beneficiary_emailunder your Subaccount and reuses it if found, rather than creating a duplicate. - No recurring - this connector does not support saving/charging a token through Corefy.
- Payments are not supported - only Payouts are implemented for this connector.
FAQ / Troubleshooting
- Invalid credentials / auth error -> verify Api Key, Api Secret and Subaccount Id match the selected environment (
test_mode) - Payout stuck in pending with a KYC message -> this is expected while Payswiftly reviews the receiver; it clears automatically once Payswiftly finalizes the KYC check
- Payout rejected for a missing/invalid field -> check that
account_typeis exactlyIndividualorBusiness, thatbank_branch_codeis sent for non-EUR currencies, and thatbeneficiary_country_code_isois sent for currencies other than AUD/CAD - Fields look different than expected for the same currency -> confirm whether Use API V2 is enabled on your Provider account; it changes the required field set for some payout methods (see above)
Question
Still looking for help connecting your Payswiftly account? Please contact our support team!