Snelstart Integration
Book Alpha invoices into a Snelstart administration, pull payments and their invoice links back, and let Snelstart recognise supplier invoices
Snelstart integration
The Snelstart integration keeps Alpha as your daily driver while your bookkeeper keeps working in Snelstart. Alpha books its invoices into the administration, reads back which ones have been paid, and can hand supplier-invoice PDFs to Snelstart's recognition service.
It is configured per tenant under Settings → Integrations → Snelstart and requires the MANAGE_INTEGRATIONS permission.
What flows where
Alpha on the left of each arrow, Snelstart on the right, except the two pull arrows, which run the other way.
Two directions, four moving parts:
| Direction | Alpha | Snelstart |
|---|---|---|
| Push | Invoice sent | verkoopboekingen |
| Push | Client without a relatie | relaties |
| Push | Supplier invoice PDF | inkoopboekingen/CreateFromAttachment |
| Pull | Payment state | verkoopfacturen.openstaandSaldo |
| Pull | Payments + their invoice links | bankboekingen |
Connecting
Snelstart does not use OAuth. The connection is a clientkey that your bookkeeper generates inside the administration, which means there is no consent screen and no token that can expire out from under you.
- Your bookkeeper opens
web.snelstart.nland the relevant administration. - Left sidebar → Koppelingen → the maatwerk tile.
- Copy the koppelsleutel.
- Paste it into Settings → Integrations → Snelstart in Alpha and press Test connection.
The connection test reports which administration the key points at, which Snelstart package it is on, and, importantly, whether any required scopes are missing.
A Snelstart maatwerkkoppeling requires at least the inZicht or inControle package. inZicht grants every scope this integration needs, including bankieren:read for the payment feed.
Invoice write-back
When an invoice is sent, Alpha books it as a verkoopboeking. Snelstart has no "create an invoice" endpoint; verkoopfacturen is a read-only projection over the bookings, and that projection is where the payment state lives.
The booking carries:
- the customer as a relatie reference,
- one line per invoice row, excluding VAT,
- the VAT total per rate in a separate collection,
factuurbedragincluding VAT,- the payment term derived from the invoice due date.
Chapter rows are skipped and discount rows are booked negative.
If a booking with the same factuurnummer already exists, Alpha adopts it instead of booking again. That matters because Snelstart has no unique constraint on invoice numbers; a retry after a crash would otherwise duplicate the booking.
Failures do not block sending
A failed booking never stops an invoice from going out. The error is recorded on the invoice and retried on the next scheduled sync, so a Snelstart outage delays your bookkeeping, not your billing.
Payment status
Every 30 minutes Alpha reads verkoopfacturen and compares openstaandSaldo against the invoice total:
When the balance reaches zero the invoice is marked PAID, the outstanding amount is registered as a payment, and the same automation event and notification fire as for a manually registered payment.
Bank feed
Hourly, Alpha pulls bankboekingen (the accounting lines your bookkeeper made against the bank statement) into Alpha bank transactions.
The valuable part is not the amount, it is the links. Each bankboeking carries settlement lines saying which booking a payment settled and for how much, so Alpha does not have to guess. Partial payments arrive as separate lines and become separate matches.
A booking Alpha has never seen (an invoice entered directly in Snelstart) produces an unmatched transaction rather than an invented link.
A bankboeking is the accounting line, not the raw bank statement line. It carries no counterparty name, no counterparty IBAN and no end-to-end id. If you need those fields, keep importing MT940 and let Snelstart supply only the reconciliation links.
Matches made by a human in Alpha are never overwritten by the feed.
Supplier invoice recognition
Alpha can hand a supplier invoice PDF to Snelstart's recognition service, which reads the document and creates the inkoopboeking itself.
When it cannot identify the supplier it degrades gracefully rather than guessing: the booking lands on the vraagposten suspense ledger, gets flagged for attention, and the PDF is attached automatically. That is the same contract the Alpha document inbox already follows: suggestions are advice, linking is a human decision.
The recogniser does not split VAT. Expect an empty VAT collection and treat the amount as gross until someone confirms the booking.
Sync schedule
| Job | Interval |
|---|---|
| Invoice push + payment status | every 30 minutes |
| Bank feed | hourly |
Both can be triggered immediately with Sync now on the integration settings page, which runs the invoice sync and the bank feed in one go.
Connecting Snelstart never backfills history: only invoices created after the connection was established are considered, so switching the integration on does not dump years of invoices into the administration.
Settings reference
| Setting | Purpose |
|---|---|
| Clientkey | The per-administration key from the koppeling |
| Revenue grootboek | Ledger account invoice lines are booked to |
| Bank account | Which Alpha bank account the feed imports into |
| Subsidiary | Subsidiary new bank transactions belong to |
Limitations
- One customer per maatwerksleutel. A Snelstart maatwerkkoppeling key may only be used by a single end customer. Rolling the integration out across multiple tenants needs a productiesleutel from Snelstart.
- No VAT-number lookup. Snelstart does not allow filtering relaties by
btwNummer, so Alpha stores the resolved relatie id on the client. Clearing that field causes the next push to create a duplicate relatie. - VAT numbers are validated server-side. Snelstart applies the 11-proef and rejects the whole relatie if it fails. Alpha pre-checks the number and simply omits it when it does not check out, so a bad VAT number never blocks creating the customer.
- UBL is not available for bookings created through the API.
See also
- Invoices: the invoices being pushed
- Bank Transactions: where the payment feed lands
- AP Invoices: supplier invoices