1. Transfers
Framnex for Developers
  • Introduction
    • Overview
    • Quick Start
    • Authentication
    • Environments
  • Guides
    • Onboard a client
    • Open an account
    • Create an outgoing transfer
    • Handle webhooks
  • Accounts
    • Open account
      POST
    • List accounts
      GET
    • Get account
      GET
  • Auth
    • Get access token
      POST
  • Clients
    • Create client
      POST
    • List clients
      GET
    • Get client creation schema
      GET
    • Get client
      GET
    • Get client state
      GET
  • Transfers
    • Create transfer
      POST
    • List transfers
      GET
    • Get transfer
      GET
  • Webhooks
    • Register webhook URL
      POST
    • Get webhook URL
      GET
    • List webhook deliveries
      GET
    • Get webhook delivery
      GET
    • Retry webhook delivery
      POST
  • Cards
    • List card products
    • List cardholders
    • Issue card
    • List cards
    • Get card
    • Activate card
    • Freeze card
    • Unfreeze card
    • Close card
    • Set card limits
    • Create encryption envelope
    • Reveal card details
    • Set PIN
  • Card Transactions
    • List card transactions
    • Get card transaction
  • Exchange Rates
    • Get exchange rate
  • Incoming Transfers
    • Simulate incoming transfer
  • Transfer Documents
    • Download document
    • List documents
    • Upload documents
  • Documents
    • Uploads one file for the selected client-creation flow; use its UUID in a configured document field.
  • Schemas
    • BaaS API
      • Account
      • AccountCredentials
      • AccountOpenedWebhookPayload
      • AccountOpeningFailedWebhookPayload
      • AccountPagedDataDto
      • AccountState
      • AccountType
      • AchCredentials
      • Address
      • AuthTokenRequest
      • AuthTokenResponse
      • BankDetails
      • BusinessClient
      • BusinessEntity
      • Client
      • CreateBusinessClientRequest
      • ClientCreateType
      • CreateClientRequest
      • ClientCreatedResponse
      • ClientPagedDataDto
      • CreateIndividualClientRequest
      • ClientState
      • ClientStateResponse
      • ClientType
      • ClientsFilter
      • CreateAccountRequest
      • CreateExchangeTransferRequest
      • CreateIncomingTransferRequest
      • CreateOutgoingTransferRequest
      • CredentialsState
      • CreateTransferRequest
      • ExchangeRate
      • CreateTransferType
      • CreatedResponse
      • Credentials
      • CredentialsIssueFailedWebhookPayload
      • CredentialsIssuedWebhookPayload
      • ExchangeTransferProcessingWebhookPayload
      • CryptoCredentials
      • IError
      • CryptoTransferDetails
      • IReason
      • DocumentDto
      • ISuccess
      • EmptyResponse
      • ErrorDetailsDto
      • IdentificationDocument
      • ExchangeTransfer
      • ExchangeTransferCancelledWebhookPayload
      • ExchangeTransferExecutedWebhookPayload
      • FasterUkCredentials
      • FedWireCredentials
      • ForeignTransferParty
      • GasPaymentWebhookPayload
      • IdentificationDocumentType
      • IncomingTransfer
      • IncomingTransferReceivedWebhookPayload
      • OutgoingTransferProcessingWebhookPayload
      • IndividualClient
      • IndividualEntity
      • LegalEntity
      • InternalCredentials
      • Participant
      • LegalEntityType
      • LocalAEDCredentials
      • LocalXafCredentials
      • NeftCredentials
      • Result
      • OnboardingCompletedWebhookPayload
      • OutgoingTransfer
      • RiskLevel
      • OnboardingFailedWebhookPayload
      • OutgoingTransferCancelledWebhookPayload
      • PageInfoDto
      • OutgoingTransferExecutedWebhookPayload
      • TransferPagedDataDto
      • PagedFilterDto
      • PaymentMethod
      • ProblemDetails
      • TransfersFilter
      • PixCredentials
      • RegisterWebhookRequest
      • WebhookDelivery
      • SortOrderDto
      • WebhookDeliveryPagedDataDto
      • SepaCredentials
      • SortDto
      • Transfer
      • WebhookSubscription
      • SwiftCredentials
      • TedPayCredentials
      • WebhooksFilter
      • TransferDetails
      • TransferDetailsType
      • TransferGas
      • TransferState
      • TransferType
      • ValidationProblemDetails
      • UploadedClientDocumentDto
      • UaeFtsCredentials
      • UaeIppCredentials
      • WebhookPayload
      • WebhookState
      • WebhookType
      • YeePayKesLocalCredentials
      • YeePayMxnLocalCredentials
      • YeePayNgnLocalCredentials
    • CardProduct
    • Cardholder
    • IssueCardRequest
    • Card
    • CardType
    • CardState
    • CardPagedDataDto
    • CloseCardRequest
    • SetCardLimitsRequest
    • CardEncryptionEnvelope
    • CardEncryptedDetailsRequest
    • CardEncryptedDetails
    • SetCardPinRequest
    • CardTransaction
    • CardTransactionState
    • CardTransactionPagedDataDto
    • CardNetwork
    • CardIssuanceFee
    • CardShipping
    • CardSpendingLimit
    • CardLimitInterval
    • CardCloseReason
    • CardSecretType
    • CardEncryptedValue
    • CardMerchant
    • CardWebhookType
    • CardWebhookPayload
    • CardIssuedWebhookPayload
    • CardIssuanceFailedWebhookPayload
    • CardStateChangedWebhookPayload
    • CardTransactionAuthorizedWebhookPayload
    • CardTransactionCompletedWebhookPayload
    • CardTransactionReversedWebhookPayload
GuidesBaaS API Reference
Bank Client API ReferenceFrontOffice API Reference
GuidesBaaS API Reference
Bank Client API ReferenceFrontOffice API Reference
  1. Transfers

Create transfer

POST
/baas/Transfers
Creates a transfer from a client's account. The type field selects the kind of transfer:
outgoing - a payment to a beneficiary over the selected paymentMethod; amount is in the currency of
the sending account. Up to 4 uploaded documents can be attached by their stored file names (documents).
exchange - a currency exchange between two accounts of the same client; sellAmount is debited from the
sell account.
The response contains the transfer identifier; the transfer starts in the processing state. The outcome is
reported asynchronously with the outgoingTransferExecuted / outgoingTransferCancelled or
exchangeTransferExecuted / exchangeTransferCancelled webhooks; you can also poll GET /baas/Transfers/{id}.
externalId is your identifier of the transfer and protects against duplicates: while a transfer with the
same externalId is processing or completed, a new request returns 409 Conflict. After a failed transfer,
the same externalId can be used again.
purpose and purposes are different fields: purpose is a free-text description of the payment, and
purposes holds coded attributes, such as a purpose code, that some payment methods require.
Errors: 400 Bad Request for invalid request data; 422 Unprocessable Content if the transfer cannot be
created for any other reason, for example when an account is not found.

Request

Authorization
JWT Bearer
Add the parameter
Authorization
to Headers
Example:
Authorization: ********************
or
Body Params application/json

Example
{
    "externalId": "string",
    "type": "outgoing",
    "paymentMethod": "sepa",
    "reference": "string",
    "purpose": "string",
    "purposes": {
        "property1": "string",
        "property2": "string"
    },
    "accountId": "3d07c219-0a88-45be-9cfc-91e9d095a1e9",
    "amount": 1,
    "beneficiary": {
        "credentials": {
            "bankDetails": {
                "bankName": "string",
                "bankCountry": "string",
                "bankRegion": "string",
                "bankAddress": "string",
                "bic": "string",
                "intermediaryBic": "string",
                "bankCode": "string",
                "routingNumber": "string",
                "sortCode": "string",
                "branchCode": "string"
            },
            "type": "sepa",
            "iban": "string",
            "reference": "string"
        },
        "legalEntity": {
            "address": {
                "streetLine1": "string",
                "streetLine2": "string",
                "city": "string",
                "state": "string",
                "zip": "string",
                "country": "string"
            },
            "type": "business",
            "legalName": "string"
        }
    },
    "documents": [
        "string"
    ]
}

Request Code Samples

Shell
JavaScript
Java
Swift
Go
PHP
Python
HTTP
C
C#
Objective-C
Ruby
OCaml
Dart
R
Request Request Example
Shell
JavaScript
Java
Swift
curl --location '/baas/Transfers' \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
    "externalId": "string",
    "type": "outgoing",
    "paymentMethod": "sepa",
    "reference": "string",
    "purpose": "string",
    "purposes": {
        "property1": "string",
        "property2": "string"
    },
    "accountId": "3d07c219-0a88-45be-9cfc-91e9d095a1e9",
    "amount": 1,
    "beneficiary": {
        "credentials": {
            "bankDetails": {
                "bankName": "string",
                "bankCountry": "string",
                "bankRegion": "string",
                "bankAddress": "string",
                "bic": "string",
                "intermediaryBic": "string",
                "bankCode": "string",
                "routingNumber": "string",
                "sortCode": "string",
                "branchCode": "string"
            },
            "type": "sepa",
            "iban": "string",
            "reference": "string"
        },
        "legalEntity": {
            "address": {
                "streetLine1": "string",
                "streetLine2": "string",
                "city": "string",
                "state": "string",
                "zip": "string",
                "country": "string"
            },
            "type": "business",
            "legalName": "string"
        }
    },
    "documents": [
        "string"
    ]
}'

Responses

🟢200
application/json
OK
Bodyapplication/json

Example
{
    "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
}
🟠400
🟠404
🟠422
🔴500
Modified at 2026-09-29 12:10:42
Previous
Get client state
Next
List transfers
Built with