Realtime dossiers. Slimmere workflows. Betere adviezen.

Met Peppol én AI heeft uw kantoor eindelijk live zicht op klantendossiers. Minder opvolging, meer automatisatie en een platform dat volledig meegroeit met uw kantoor.

Alle facturen, één omgeving. Volledig in uw beheer

U werkt niet langer met versnipperde Peppol-tools of aparte logins per klant. Alles verloopt via één uniforme pre-accountingomgeving die u zelf beheert.

Peppol registratie van klanten

Wij zorgen voor de volledige registratie op een erkend Peppol Acces Point.

Monitoring & aflevering van facturen via Peppol

Inkomende Peppol-facturen worden automatisch aangeleverd in het dossier, uitgaande facturen worden bevestigd afgeleverd bij de klant. Zo beschikt u steeds over realtime traceability en controle van de volledige factuurstroom.

Peppol

Van Accountants, voor Accountants

White label software

Het platform draait volledig onder uw eigen merk en uitstraling. Uw klanten ervaren dit als uw eigen interne software, niet als een externe tool.

Democratiserend verdienmodel

U bouwt zelf waarde op. Niet de softwareleverancier. Het eigenaarschap over e-facturatie verschuift terug naar het boekhoudkantoor waar het eigenlijk hoort

120% aftrekbaar

Deze digitale investering valt onder de verhoogde Belgische investeringsaftrek. Strategisch interessant én fiscaal optimaal inzetbaar voor uw kantoor.

Erkend Peppol Access Point

Facturatie loopt via een officieel erkend Peppol Access Point. Inkomende facturen worden correct afgeleverd, uitgaande facturen correct bezorgd.

invoices.ts

models.ts

schemas.ts

import { procedure, router } from "../trpc";
import * as invoiceService from "../services/invoices";
import { CreateInvoiceRequestSchema } from "../schemas";

// Create invoice procedure
const createInvoice = procedure
  .input(CreateInvoiceRequestSchema)
  .mutation(async ({ input }) => {
    return invoiceService.createInvoice(input);
  });

// List invoices procedure
const listInvoices = procedure
  .query(async ({ input }) => {
    return invoiceService.listInvoices(input);
  });

// Export router
export const invoicesRouter = router({
  create: createInvoice,
  list: listInvoices,
  getById: getInvoiceById,
  update: updateInvoice,
  delete: deleteInvoice
});
import { z } from "zod";
import { InvoiceStatusEnum } from "@inflow/db";

// Base invoice model
export const InvoiceModel = z.object({
  id: z.string().uuid(),
  number: z.string(),
  issueDate: z.date(),
  dueDate: z.date().optional(),
  status: z.nativeEnum(InvoiceStatusEnum),
  totalAmount: z.number().positive(),
  taxAmount: z.number().min(0),
  peppolId: z.string().optional(),
  clientId: z.string().uuid(),
  createdAt: z.date(),
  updatedAt: z.date()
});

// Invoice line model
export const InvoiceLineModel = z.object({
  id: z.string().uuid(),
  description: z.string().min(1),
  quantity: z.number().positive(),
  unitPrice: z.number().positive(),
  invoiceId: z.string().uuid()
});

export type Invoice = z.infer<typeof InvoiceModel>;
export type InvoiceLine = z.infer<typeof InvoiceLineModel>;
import { z } from "zod";
import { InvoiceModel } from "./models";

// Create invoice request
export const CreateInvoiceRequestSchema = z.object({
  number: z.string().min(1),
  issueDate: z.string().datetime(),
  totalAmount: z.number().positive(),
  taxAmount: z.number().min(0),
  clientId: z.string().uuid()
});

// List invoices request
export const ListInvoicesRequestSchema = z.object({
  limit: z.number().min(1).max(100),
  offset: z.number().min(0),
  status: z.enum(["draft", "sent", "paid"]).optional()
});

Integraties

Octopus AccountancyOctopus.be
Exact Online
Admisol
YukiYuki
Wolters KluwerWolters Kluwer
CodaboxCodabox
Horus SoftwareHorus
Octopus AccountancyOctopus.be
Exact Online
Admisol
YukiYuki
Wolters KluwerWolters Kluwer
CodaboxCodabox
Horus SoftwareHorus
Octopus AccountancyOctopus.be
Exact Online
Admisol
YukiYuki
Wolters KluwerWolters Kluwer
CodaboxCodabox
Horus SoftwareHorus
Octopus AccountancyOctopus.be
Exact Online
Admisol
YukiYuki
Wolters KluwerWolters Kluwer
CodaboxCodabox
Horus SoftwareHorus

Waarom Accountantskantoren Kiezen voor InFlow

InFlow maakt factuurverwerking eenvoudig met krachtige tools die u tijd en moeite besparen.

Democratiserend verdienmodel

Meer waarde voor uw kantoor, zonder meerkost voor uw klant

De waardecreatie blijft binnen het kantoor. In plaats van dat elke klant afzonderlijk betaalt aan verschillende externe tools, werken zij binnen één uniforme omgeving van het kantoor aan een vergelijkbare kost zoals vandaag. Er wordt dus niet méér betaald door de klant, de economische waarde verschuift simpelweg van externe leveranciers naar het kantoor zelf. Dit zorgt voor stabiliteit, voorspelbaarheid en duurzame retentie, zonder extra belasting voor uw klanten.

White-label platform

Klanten interageren met uw kantooromgeving, geen verwijzingen naar externe partijen.

Facturen komen automatisch binnen via Peppol of upload van PDF/foto. Alles op één plek georganiseerd voor eenvoudige verwerking.

Klantregistratie

Wij zorgen voor de volledige Peppol registratie van uw klanten op een erkend Access Point.

Verstuur facturen direct via Peppol met onze gebruiksvriendelijke interface. Professioneel en efficiënt.

Klaar om te Starten?