With the Magento 2 AFAS Profit Online integration by Combidesk, orders are automatically booked as invoices in AFAS Profit Online. In this guide, you will go through the installation step by step.
Table of contents
1. Connect to Magento2
Log in to the Magento admin environment
Navigate to System -> Integrations
Click the red button "Add new Integration"
Enter the following information on the "General" tab: a. Name: Magento 2 integration b. Callback URL: https://combo-backend.combidesk.com/magento2/activateintegration/magento2-(app) c. Identity link URL: https://combidesk.com/oauthmagento2request/magento2-(app)
And on the "API" tab: a. Resource Access: All
Finally, click the red "Save" button in the top right. You will then need to enter the admin password on the "General" tab.
Activating
Click the "Activate" link in the Integrations overview
This opens the App Installer described in the next section
Click the red "Allow" button in the top right
App installer From Magento 2 you will enter the App Installer when activating the Integration. See screenshot below.
2. Connect to AFAS
Before you begin, make sure you have access to the following:
An active AFAS subscription with access to the AppConnector
The subdomain of your AFAS environment (the part before .afas.online)
An XML token generated via the AppConnector in AFAS
Haven't set up the AppConnector yet? Do this first in AFAS via Management → AppConnector. Make sure that at least one connector has been added to your AppConnector and copy the XML token — this is only shown once by AFAS.
Step by step: connecting your AFAS account
Step 1: Open the connection screen
Go to the installation page of the integration and click "Connect your AFAS account". A screen will appear as shown below.
Step 2: Enter your subdomain
In the Subdomain field, enter the first part of your AFAS URL. The full URL has the following format:
Only enter the part that comes before .afas.online.
Step 3: Paste the XML token
In the Token field, paste the full XML token that you copied from the AppConnector in AFAS. The token looks like this:
<token><version>1</version><data>...</data></token>
Please note: AFAS only shows this token once. If you no longer have it, you will need to create a new token in the AppConnector.
Step 4: Test or acceptance environment (optional)
Do you want to connect to a test or acceptance environment? Check the corresponding option:
Connect to a test environment
Connect to an acceptance environment
Leave these options unchecked if you want to connect to your production environment.
Step 5: Save
Click "Save" to confirm the connection. If everything is correct, your AFAS account is now successfully connected.
3. Configuration of the integration
For the integration to work properly, it must be configured correctly. In the paragraph below, we'll go through all the steps of the integration in sequence. Before starting the installation, we recommend that you first carefully read through these steps.
Configure these Magento2 steps:
Processing discounts
Indicate if you want to process discounts on order line level, order level or split (discount percentages on orderline level and other discounts on order level).Add purchase order number
Add the purchase order number to the order number in ProfitFilter on order statuses
Select the statuses that orders should have in order to be transferred. If no status is selected, all orders will be transferred. Make sure to have "Canceled" included to have orders that are cancelled deleted again in Afas.Filter on storeviews
Select the storeviews you want the orders to be transferred from (if none are selected, all orders transferred).Discount amounts include tax?
Are the discount amounts returned by the api including tax?Include customer group
Do you want to use the Magento customer group to set the pricelist and discount group on new sales relations?Transfer shipping costs
Should the shipping costs be transferred to AFAS.Mark orders completed
Mark orders completed in your webshop if they have status "Geleverd" or "Handmatig afgehandeld". Note: all items of the order will be marked as delivered in your webshop though they might be in backorder.Transfer the product catalogue from AFAS to your shop
Shall we sync all products, changes from now on or none at all?This may take a while for larger webshops!
Default pricelist
Use the default pricelist including or excluding VAT?Configurable product grouping
Configurable product grouping by title or by main item codeConfigurable product sorting attribute
The attribute to sort the configurable products by (if group by title)Sorting attribute sort order
Enter the attribute values of the sorting attribute order by priority descendingConvert long description
Should the markdown formatting in the long description fields from Afas be converted into html?Sync zero priced products
Do you want to sync products with a price of 0?Synchronise stock to your webshop
Sync stock amounts from the selected warehouse to your webshop?Uses stock on warehouse level
Uses stock on warehouse level? (Uses the default Combidesk_Profit_Stock GetConnector?)Definition of stock
Please select the definition of stock you want to use (None=use default)Synchronise stock of preferred sales unit
Do you want to synchronise the stock of compositions to your webshop?Synchronise stock of compositions to your webshop
Do you want to synchronise the stock of the preferred sales unit of the item if available?Accounts for debtors
Create user accounts for debtors in AFAS?Use delivery address
Use the delivery address of a debtor if availableUse contact persons
Do you want to use debtor contact persons or debtors (Yes for contact persons, No for debtors)Use invoice to addresses
Use the address of an invoice to debtor if availableSynchronise prices to your webshop
Sync product prices to your webshop?Enable support for action prices
Enable support for action prices in your webshop (only Magento 2)?Enable tier prices
Should tier prices be transferred to your webshop?
Configure these AFAS steps:
Debtor ledger account
The debtor ledger account new debtors will be assigned toShipping costs item
The item code on which the shipping costs will be bookedOther costs item
The item code on which the other costs will be bookedDiscounts item
The item code on which the discounts will be bookedWarehouse
The warehouse from which the orders will be bookedAdministration
The administration the order will be booked intoProject
The project the order will be booked onDefault pricelist
The default pricelist that will be usedJournal
The journal the order will be booked intoShipping costs VAT low item
The item code on which the shipping costs will be bookedUpdate existing debtors
Should existing debtors be updated in AFAS?Default currency
Enter the default currency code for new relationsDefault "verstrekkingswijze"
Enter the default 'verstrekkingswijze' for new relationsDefault debtor profile B2C
Enter the code of the debtor profile for new B2C relationsDefault debtor profile
Enter the code of the debtor profile for new relationsPayment term
Select the default payment term for new relationsCredit limit
Enter the default credit limit for new relationsOrder processing
Enter the code for the default order processing for new relations herePreferred warehouse
Select the preference warehouse for new relationsAfwijkende aanmaningset
Enter the afwijkende aanmaningset for new relationsRepresentative
Select the representative for new relationsDefault pricelist for new debtors
Select the default pricelist for new relationsTransporter
Select the default transporter for new relationsShipping service
Select the shipping service for new ordersSending status
Select the default sending status for new ordersPackage
The default package for new ordersCost type
Are costs booked on costs items?Discounts VAT low item
The item code on which the discounts will be bookedDefault language
Enter the code for the default language for new relations hereDefault to account
Enter the code for the default to account for new relations hereDefault delivery conditions
Enter the code for the default delivery conditions for new relations hereDefault assortment
Enter the code for the default assortment for new relations herePricelist for invoices
Should orderlines be inserted with the debtor pricelist instead of the webshop prices?Preferred payment condition
Select the preferred payment condition for ordersPreferred payment method
Enter the preferred payment method for ordersAlternate contact person
Indicate if a different contact person should be added to the orderForeign debtor ledger account
The debtor ledger account new foreign debtors will be assigned toVAT duty code 3 to EU residents
Assign VAT duty code 3 to EU residents (note that a valid VAT number is mandatory)Payment method mapping
Map Afas properties for specific order payment methods. Format: <status1>=<property1>:<property_value1>&<property2>:<property_value2>;<status2>=<property1>:<property_value1>. Example: Paypal=OrderProcessingCode:1&PaymentMethod:00; Properties that are currently supported are: PaymentMethod, PaymentCondition and OrderProcessingCodeFree field "Credit" for sales invoice
The code for the free field "Credit" for sales invoices (please contact us if you don't have the free field)Invoice to
Should the invoice to field be filled with the debtor?Additional warehouses
Enter a comma separated list of warehouse codes that are used in addition to the default warehouseFixed debtor
If you want all orders booked on the same fixed debtor, enter the debtor number of this debtor hereBalie / Directfacturen
Do you want to create balie / directfacturen aangemaakt in Profit instead of sales orders?'Ordersoort'
Please enter the 'Ordersoort' code belowUse preferred warehouse
Should the preferred warehouse of the sales relation be used?Enter a comma separated list of country codes below, of which consumers should get VAT code 5 ("Afstandsverkopen").
Enter a comma separated list of country codes below for which consumer clients need to get VAT code 5 (distance selling).Canonline specific product numbers to administration
Fill amount down payment
Indicate if the field Amount Down Payment should be filled with the total order amount in case the order is paid. Note that Order Processing will be set to 7 (Aanbetalen, levering na aanbetaling) in Profit.Map shipping method on expeditor
Connect the shipping methods from your webshop to the corresponding expeditors in ProfitAdd address to contact person
The address will be added to the contact personVAT duty code 1 to EU companies
Assign VAT duty code 1 to EU companies that haven't filled the VAT numberFill invoice reference
Should the field invoice reference be filled with the order number?Fixed product
If you want all order lines booked on the same fixed product number, enter the product number of this product hereVrijgifte Boxwise
Do you want to fill in the field 'Vrijgave Boxwise' based on the payment status of the order? True if order is paid, false otherwiseVat tariff groups
For foreign orders, do we need to determine the vat tariff group on orderline level based on the used tariff in the order?Mapping default pricelist for new debtors
Map the default pricelist for new relations on the storeviewLanguages per storeview for new debtors
Enter the language code for new relations for every storeviewSales relation profile per storeview for new debtors
Enter the sales relatin profile code for new relations for every storeviewAdd person name as department name
Do you want to add the person name as department name?Use preferred sales unit for orders
Should the preferred sales unit be used for orderlines?Orderline prices incl. vat?
Should the orderline prices be inserted incl. vat when transferring them to Afas?Create orders blocked
Should orders be created blocked?Order blocked amount
Enter the amount limit to create orders blockedEnter default verbijzonderingsas
Enter the default 'Verbijzonderingsas' for invoice linesSelect the attribute set
Select the attribute set for new productsInsert price incl. VAT
Should prices be inserted incl. VAT in your webshop?Map languages
Map the AFAS language fields on the corresponding store views in Magento. Format: languagecode1=id1,id2;languagecode2=id3,id4Enable category mapping
Add and remove categories from productsAdditional websites
Comma separated list of additional website id's to add products toAdditional storeview
Comma separated list of codes of the additional storeviewTax class VAT high
Select the tax class for high tax productsTax class VAT low
Select the tax class for low tax productsURL Key Attributes
Define the attributes used to generate the URL Key for products. If none is entered, Magento will create the URL key.Configurable product attributes
Enter a comma separated list of attributes that are used to create configurable products (attribute1 .. attribute15)Related products
Should related products be sychronised to Magento?Transfer weight
Transfer weight from Afas to Magento?Additional storeview 2
Comma separated list of codes of the additional storeview 2Default password
Enter the default password for a new userSelect customer group
Select the default customer group for customersWebsite
Select the website the integration is connected to.Add customer groups
Should customer groups be createdIs Sectolin
Is Sectolin
4. The Combidesk customer dashboard
How does the dashboard work?
If you've created a new Combidesk account or installed a integration, you'll receive an email with access to your Combidesk account. When you log in to combidesk.com, you'll arrive at the dashboard. This is where your integration is located. From here, you can easily adjust your integration and account settings, view the integration logs (history), and access support.
What can you view via your Combidesk account?
From your Combidesk dashboard you also have access to your account settings, connected accounts, billing and support.
5. What can you expect from Combidesk?
We understand you're busy or perhaps have little software experience. That's why our specialized team is always ready to help. Take advantage of our installation packages to save yourself even more time.
Installation appointment
If you're short on time or would like us to handle the entire installation, take advantage of our remote implementation support. We'll take care of everything for you right away and deliver a fully functional connection. For most connections, installation support costs a fixed fee of €150, while others cost €300. If you decide not to continue with the connection after the trial period, there's no charge. Schedule an installation appointment below and schedule it right away.
Explanation of service level (SLA) subscriptions (Basic, Pro, Premium)
To help you use our integration effectively, we offer three service levels: basic, pro, and premium. You can always change the service level in your integration. The price will be adjusted for the next billing period.
