End-customer onboarding (identity verification, KYC, account signing) is handled through journeys — secure, hosted web flows. You create a journey via the API and redirect the customer to the returned URL. Read more about journeys in Web Flows for End-Customer Actions.
Create a createAccount journey. Redirect the customer to the returned url — Fondo handles BankID verification, PEP/sanctions screening, and account agreement signing.
- Sandboxhttps://api.sandbox.fondo.se/v2/partner/client/{clientId}/journey
- NPChttps://api.npc.fondo.se/v2/partner/client/{clientId}/journey
- Productionhttps://api.fondo.se/v2/partner/client/{clientId}/journey
- curl
- Node.js
- Go
- C#
- Python
- Java
curl -i -X POST \
https://api.sandbox.fondo.se/v2/partner/client/49ad7378-121c-4a53-9894-dfd14a7b4877/journey \
-H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
-H 'Content-Type: application/json' \
-d '{
"type": "string",
"journey": {
"payment": "49ad7378-121c-4a53-9894-dfd14a7b4877",
"journeyType": "signWithdrawal"
},
"callbackUrl": "https://api.habibisfonder.se/v1/fondo/callback",
"redirectUrl": "customerApp:///",
"completionRedirectUrl": "https://partner.example/onboarding-done",
"scope": "string"
}'A similar journey, createLegalEntityAccount journey type is used for companies. Fondo automatically retrieves verified company data and authorized signatory combinations based on the organisation number provided during the journey.
The resulting account will have an owner with ownerType: "legal_entity" including name, crn, and additional entity details.
Poll the journey or listen for callbacks. Journey status progresses: new → pending → complete (or canceled / error / expired).
- Sandboxhttps://api.sandbox.fondo.se/v2/partner/client/{clientId}/journey/{journeyId}
- NPChttps://api.npc.fondo.se/v2/partner/client/{clientId}/journey/{journeyId}
- Productionhttps://api.fondo.se/v2/partner/client/{clientId}/journey/{journeyId}
- curl
- Node.js
- Go
- C#
- Python
- Java
curl -i -X GET \
https://api.sandbox.fondo.se/v2/partner/client/49ad7378-121c-4a53-9894-dfd14a7b4877/journey/49ad7378-121c-4a53-9894-dfd14a7b4877 \
-H 'Authorization: Bearer <YOUR_TOKEN_HERE>'On completion, the result object contains the created account ID, account type, and service type.
Type of journey. Mirrors the journey.journeyType
new— Journey created but not yet opened by the end customerpending— End customer has opened the journey and is in progresscanceled— End customer aborted the journeyerror— An error occurred during the journeycomplete— Journey completed successfullyexpired— Journey URL expired before completion
- new
- pending
- canceled
- expired
- error
- complete
New, journey not yet activated
The ID of web journey.
The ID of requested client.
journey url
Date when journey token is considered stale
- signWithdrawal
- createLegalEntityAccount
- signSubmission
- addBankAccount
- kycRenewal
- updateAllocationPlan
- updateSavingsPlan
- createAccount
Let end user sign an insurance withdrawal request.
ULID (Universally Unique Lexicographically Sortable Identifier)
Date when acocunt was created
Date when last modified
True if the journey is deleted
Date when last modified
optional submission id. May be created in legal entity journeys. May be fetched on separate GET /submission/:id route
optional submission id. May be created in legal entity journeys. May be fetched on separate GET /submission/:id route
URL that receives a POST request when the journey status changes to canceled, error, or complete. The payload includes the journey id, status, and scope. Must use https in production.
Passed to BankID as the redirect target after mobile signing completes. Set this to a deep link (e.g. customerApp:///) so BankID returns the user to your app instead of the webview. Not needed for web-only integrations.
URL the browser is redirected to once the journey completes successfully. Can be an http(s) URL or a custom-scheme deep link (e.g. myapp://done) for native-app handoff.
Any errors occurring during journey
Where end-user exited the journey. On error on cancel, if applicable.
BASE64 encoded partner specific data attached to the journey, such as encrypted data containing session information. It will be passed back to callback.
Result of journey
- createAccount result
- updateAllocationPlan result
- updateSavingsPlan result
- signSubmission result
- createLegalEntityAccount result
- kycRenewal result
- addBankAccount result
Result of journey
Next: Deposits