AFAS
Connect Exopen to AFAS Profit to automatically sync bookkeeping, accounts receivable and payable, projects and products.
Step 1: Prepare AFAS
The setup is done by an AFAS administrator in Profit. Exopen does not create the App Connector for you.
1. Give the user access to the administrations
Go to Algemeen → Beheer → Autorisatie tool → Onderhoud gebruikers and open the user the token will be created for. On the Lid van groep tab the user must belong to a group authorized for the administrations you want to follow up, for example ADM - Alle administraties. Log out and back in afterwards.
Access to a subset is fine — Exopen then shows the administrations that user can see.
If the access is missing entirely the integration still works, but the company names are poorer. See How Exopen identifies the companies.
2. Create an App Connector
Go to Algemeen → Beheer → App connector and click Nieuw. Choose the type App connector, token type Classic token, and a Gebruikersgroep the user from step 1 belongs to. Geblokkeerd must be unchecked.
Do not use existing system connectors such as AFAS Payment Service or BI odata connector — they have no API keys or no GetConnectors enabled.
3. Enable the connectors
On the GetConnectoren tab, enable the connectors below. AppConnectorSubject is not a GetConnector — it is added on the Connectoren tab.
| Connector | Level | Used for | Without it |
|---|---|---|---|
| Profit_Accounts | Required | Chart of accounts | Nothing can be reported on |
| Profit_Creditor | Required | Suppliers | No suppliers |
| Profit_Creditor_Invoices | Required | Supplier invoices | No supplier invoices |
| Profit_Currency | Required | Currencies, and the base currency each legal entity reports in | Legal entities cannot be created |
| Profit_Debtor | Required | Customers | No customers |
| Profit_Debtor_Invoices | Required | Customer invoices | No customer invoices |
| Profit_Period_balance | Required | Opening balances | Figures start from zero |
| Profit_Transactions | Required | Journal entries, the ledger everything else is read against | No bookkeeping at all |
| Profit_Administrations | Recommended | Company names and codes, read straight from AFAS | Company names are derived from the bookkeeping instead, and are replaced by the real ones once the token's user is authorised for the administrations in Autorisatie tool |
| Profit_periods_per_administration | Recommended | Financial years and locked periods | Closed months are not marked as closed |
| AppConnectorSubject | Optional | Downloading the attachment files themselves | Attachments can be listed but the files cannot be opened |
| Profit_Article | Optional | Products | No products |
| Profit_CostCentre | Optional | Cost centres | No cost centres |
| Profit_Projects | Optional | Projects | No projects |
| Profit_SalesorderLines | Optional | Sales order lines | No sales order lines |
| Profit_Salesorders | Optional | Sales orders | No sales orders |
| Profit_Subject_Attachments | Optional | Which invoices have attachments | Invoices show no attachments |
| Profit_SubjectFile | Optional | Links between invoices and their attachments | Attachments cannot be tied to their invoice |
The list comes straight from Exopen and shows what each connector is used for. A missing optional connector still leaves a working connection, just without that feature — add it later and the data fills in on the next run.
4. Create a classic token
On the Gebruikerstokens tab, click Nieuw, pick the user and finish the wizard. The token looks like this:
<token><version>1</version><data>CB322B7F51C04E42B907EC37A9ED6665...</data></token>
Copy the whole XML string straight away. AFAS shows it only once.
Step 2: Create the data source in Exopen
-
Log in to the Exopen portal.
-
Go to Data sources and click New data source.
-
Pick AFAS from the list of available integrations.
-
Fill in Environment ID and Classic token, and click Next.
You will find the environment ID in your AFAS login URL. Both
O12345AAand12345work, and Exopen works out for itself whether the environment is production, accept or test. -
Tick the companies you want to follow up in Exopen, and click Add data source.
The list shows one row per administration, with AFAS's own number and the organisation number where Exopen found one. You get one data source covering the chosen companies.
Once the data source is created an initial sync starts automatically. It takes between thirty minutes and a couple of hours depending on how much data there is.
An AFAS administration is a bookkeeping unit, not necessarily a company. Empty administrations and elimination administrations appear in the list but are not ticked.
To change the selection later, contact support@exopen.se. Adding a company is quick — data for every administration is synced already.
How Exopen identifies the companies
Which names you see in the list depends on what the token can reach.
With access to the administrations, Exopen reads the names straight from AFAS. This is the normal case and gives the most complete details.
Without that access, AFAS returns an empty list of administrations even though all the bookkeeping can be read. Exopen then derives the companies from the bookkeeping instead — through the balances the group companies hold with each other, and through registration and tax numbers in the postings. A name that cannot be derived appears as Administration 3 and can still be selected.
That is also the one limitation with no way around it: an administration with no bookkeeping at all does not appear in the list, because there is nothing to derive it from. Grant the authorization if you need to follow up a company that has not posted anything yet.
Derived names are replaced by the real ones automatically once the access is granted. Nothing needs redoing.