Algemeen
De koppeling met Minox maakt het mogelijk om gegevens te synchroniseren tussen QicsMilestones en Minox. De koppeling werkt twee kanten op en dit wordt in onderstaande schema weergegeven.
- klantgegevens worden vanuit Minox doorgezet naar QicsMilestones
- verkoopboekingen worden verzonden naar Minox
Hoe werkt de koppeling?
Wanneer de koppeling actief is, worden de verschillende gegevens vanuit Minox doorgezet naar QicsMilestones en andersom.
- Nieuwe klanten worden gesynchroniseerd (➡️ QicsMilestones)
- Wijzigingen van klanten worden gesynchroniseerd (➡️QicsMilestones)
- Verwerkte facturen worden doorgezet als verkoopboeking (➡️Minox)
Schema en 'trigger'
De koppeling draait dagelijks van 07.00 uur tot 20.00, iedere 15 minuten. Een wijziging op één van de koppel-velden zal ervoor zorgen dat de koppeling wordt 'getriggerd'.
Aandachtspunten
Het is goed om te weten dat wanneer de koppeling actief is, gegevens zullen worden overschreven door wijzigingen maar dat verwijderingen niet worden doorgezet. Dus een wijziging op een klant in Minox zorgt ervoor dat deze wordt doorgezet naar QicsMilestones, waarbij de waarden van de koppelvelden (zie onderstaande overzicht) zullen worden overgenomen.
Welke gegevens worden er doorgezet?
Het is mogelijk om naast klanten ook artikelen, kostenplaatsen, betalingscondities en btw-codes te importeren. In onderstaande overzichten worden de onderdelen en velden weergegeven welke via de koppeling worden doorgezet. De verkoopboeking en eventueel PDF van de factuur worden uiteindelijk geëxporteerd.
Gegevens van Minox naar QicsMilestones
BTW codes | ||
Minox | ➡️ | QicsMilestones |
VatResponse.id | VatCode.Code | |
VatResponse.description | VatCode.Name | |
VatResponse.percentage | VatCode.Percentage | |
VatResponse.type* | VatCode.ReverseCharge | |
* Wanneer het type het woord "verlegd" bevat, wordt "BTW verlegd" geselecteerd in QMS |
||
Kostenplaatsen | ||
Minox | ➡️ | QicsMilestones |
CostCenterResponse.id | CostCenter.Code | |
CostCenterResponse.decription | CostCenter.Name | |
Betalingscondities | ||
Minox | ➡️ | QicsMilestones |
PaymentTermResponse.id | PaymentCondition.Code | |
PaymentTermResponse.description | PaymentCondition.Name | |
PaymentTermResponse.description | PaymentCondition.Description | |
PaymentTermResponse.days | PaymentCondition.PaymentTerm | |
PaymentTermResponse.mandate* | PaymentCondition.PaymentConditionType | |
* Wanneer het mandate gevuld is (maakt niet uit met wat) dan is het type DirectDebit, anders Credit |
||
Dit id wordt gerefereerd in Customer import | ||
Artikelen | ||
Minox | ➡️ | QicsMilestones |
ItemResponse.blocked | Item.IsActive | |
ItemResponse.id | Item.ItemCode | |
ItemResponse.description | Item.Name | |
ItemResponse.unit_packaging* | Item.ItemType | |
true | Item.AllowTimeEntry | |
true | Item.WillBeInvoiced | |
ItemResponse.Vat.id | Item.VatCodeId | |
ItemResponse.item_group_id** | Item.GLAccountRevenue | |
* Wanneer unit_packaging "uur" is, dan is het ItemType Hours. In andere gevallen is het Expenses |
||
** De itemgroup wordt gezocht op basis van item_group.id. GLAccountRevenue wordt opgehaald uit deze groep uit de categorie "ledger_account.sales_revenue_nl" | ||
Klanten | ||
Minox | ➡️ | QicsMilestones |
Customer.blocked | Customer.IsActive | |
Customer.id | Customer.CustomerCode | |
Customer.chamber_of_commerce | Customer.Identification | |
Customer.payment_term.id | Customer.PaymentConditionId | |
PostalAddress.name | Customer.Name | |
PostalAddress.contact_name | Customer.ContactPersonName | |
PostalAddress.email_addresses.First().email_address | Customer.SendInvoiceTo | |
PostalAddress.contact_name | Customer.SendInvoiceRecipientName | |
addressToUseForBezoek.contact_name | Customer.VisitAddressContactPerson | |
addressToUseForBezoek.streetname_and_number | Customer.VisitAddressAddress1 | |
addressToUseForBezoek.country_code | Customer.VisitAddressCountryCode | |
addressToUseForBezoek.country_code | Customer.VisitAddressCountry | |
addressToUseForBezoek.email_addresses.First().email_address | Customer.VisitAddressEmailAddress | |
addressToUseForBezoek.postal_code | Customer.VisitAddressZipCode | |
addressToUseForBezoek.phone_number.First().phone_number | Customer.VisitAddressPhoneNumber | |
foundStreetAddress.streetname_and_number != null | Customer.InvoiceAddressSameAsVisitAddress | |
foundPostalAddress.contact_name | Customer.InvoiceAddressContactPerson | |
foundPostalAddress.streetname_and_number | Customer.InvoiceAddressAddress1 | |
foundPostalAddress.country_code | Customer.InvoiceAddressCountryCode | |
foundPostalAddress.country_code | Customer.InvoiceAddressCountry | |
foundPostalAddress.email_addresses.First().email_address | Customer.InvoiceAddressEmailAddress | |
foundPostalAddress.postal_code | Customer.InvoiceAddressZipCode | |
foundPostalAddress.phone_number.First().phone_number | Customer.InvoiceAddressPhoneNumber | |
* PostalAddress is Customer.address waar address_type is "postal" |
||
** addressToUseForBezoek wordt bepaald door te kijken of er zowel een postal als een street adres is ingevuld in Minox | ||
*** Debiteuren zonder naam in Minox worden niet geïmporteerd |
Gegevens van QicsMilestones naar Minox
De verkoopboeking van de factuur wordt doorgezet naar Minox.
Facturen - Kop | ||
QicsMilestones | ➡️ | Minox |
Journalcode SyncService setting | line.journal.id | |
overviewInvoice.InvoiceCustomerCompanyCustomerCode | line.account.id | |
overviewInvoice.WorkInProgressDate || overviewInvoice.InvoiceDate | line.document_date | |
invoiceHeaders.vatAmount + invoiceHeaders.AmountWithoutVat | line.debit | |
overviewInvoice.InvoiceText (max 255) | line.description | |
0.00 | line.vat.amount | |
overviewInvoice.InvoiceNumber | line.invoice_number | |
Facturen - Regels | ||
QicsMilestones | ➡️ | Minox |
Journalcode SyncService setting | line.journal.id | |
invoiceLine.ItemCompanyGLAccountRevenue | line.account.id | |
overviewInvoice.WorkInProgressDate || overviewInvoice.InvoiceDate | line.document_date | |
(invoiceLine.Quantity * invoiceLine.Price) + invoiceLine.IrregularityAmount | line.credit | |
invoiceLine.Description(max 255) | line.description | |
invoiceLine.VatPercentage * line.credit | line.vat.amount | |
overviewInvoice.InvoiceNumber | line.invoice_number | |
invoiceline.CostCenterCode * | line.cost_center.id | |
* Alleen wanneer dit is ingesteld in de sync service configuratie |
||
Facturen - Gegroepeerde regels | ||
QicsMilestones | ➡️ | Minox |
Journalcode SyncService setting | line.journal.id | |
group.ItemCompanyGLAccountRevenue | line.account.id | |
overviewInvoice.WorkInProgressDate || overviewInvoice.InvoiceDate | line.document_date | |
(lines.Quantity * lines.Price) + lines.IrregularityAmount | line.credit | |
** | line.description | |
lines.VatPercentage * line.credit | line.vat.amount | |
overviewInvoice.InvoiceNumber | line.invoice_number | |
group.CostCenterCode * | line.cost_center.id | |
* Alleen wanneer dit is ingesteld in de sync service configuratie | ||
** Description is afhankelijk van welke velden ingesteld zijn in de syn service configuratie | ||
Facturen - Toeslag regels | ||
QicsMilestones | ➡️ | Minox |
Journalcode SyncService setting | line.journal.id | |
group.SurchargeItemCompanyGLAccountRevenue | line.account.id | |
overviewInvoice.WorkInProgressDate || overviewInvoice.InvoiceDate | line.document_date | |
lines.SurchargePercentage * ((lines.Quantity * lines.Price) + lines.IrregularityAmount) | line.credit | |
** | line.description | |
group.VatPercentage * line.credit | line.vat.amount | |
overviewInvoice.InvoiceNumber | line.invoice_number | |
** Description is afhankelijk van welke velden ingesteld zijn in de syn service configuratie |
Wat is er nodig voor de koppeling?
Wanneer de koppeling in gebruik genomen wordt, dan hebben wij gegevens nodig om de koppeling technisch te leggen en goed in te richten.
Benodigde gegevens
- De oauth gebruiker waarmee gekoppeld wordt*
- Het administratienummer van de administratie in Minox
- Het klantnummer waarmee in Minox wordt ingelogd
- De debiteuren grootboekrekening
* Bij het authentiseren van de oAuth user, kies bij 'Application' voor 'Minox'. En vervolgens, in het nieuwe tabblad, het e-mailadres en wachtwoord.
Nuttige artikelen
Hoe maak ik een nieuwe oAuth gebruiker aan?
Welke synchronisatiefouten kunnen zich voordoen?
Facturen komen niet meer aan in mijn boekhouding. Wat moet ik doen?
Opmerkingen