# Real Profit Dashboard: volledige handleiding

> Real Profit Dashboard berekent de werkelijke winstgevendheid van uw WooCommerce-winkel, bestelling per bestelling. Deze handleiding behandelt de installatie, het instellen van de kosten (COGS, betaalkosten, verzending), het aansluiten van de…

- Pagina: <https://www.datafirefly.com/nl/documentation/real-profit-dashboard/>
- Taal: nl
- Bijgewerkt op: 2026-08-19
- Andere talen: [fr](https://www.datafirefly.com/documentation/real-profit-dashboard/index.md), [en](https://www.datafirefly.com/en/documentation/real-profit-dashboard/index.md), [es](https://www.datafirefly.com/es/documentation/real-profit-dashboard/index.md), [de](https://www.datafirefly.com/de/documentation/real-profit-dashboard/index.md), [it](https://www.datafirefly.com/it/documentation/real-profit-dashboard/index.md), [pl](https://www.datafirefly.com/pl/documentation/real-profit-dashboard/index.md), [pt](https://www.datafirefly.com/pt/documentation/real-profit-dashboard/index.md)
- Index: <https://www.datafirefly.com/nl/documentation/llms.txt>

Real Profit Dashboard berekent de werkelijke winstgevendheid van uw WooCommerce-winkel, bestelling per bestelling. Deze handleiding behandelt de installatie, het instellen van de kosten (COGS, betaalkosten, verzending), het aansluiten van de drie advertentie-integraties (Meta, Google, TikTok), het gebruik van het dashboard en het dagelijks onderhoud.

## Vereisten

- WordPress 6.2 of nieuwer
- WooCommerce 8.0 of nieuwer (compatibel met HPOS en de Cart- en Checkout-blokken)
- PHP 8.0 of nieuwer
- Beheerderstoegang tot het WordPress-beheer
- API-gegevens voor Meta Ads, Google Ads en/of TikTok Ads als u de advertentie-uitgaven automatisch wilt importeren (optioneel)

## Installatie

1. Ga naar **Plugins → Nieuwe plugin → Plugin uploaden**.
2. Selecteer het bestand `dfrealprofit.zip` en klik op **Installeren**.
3. Activeer de plugin.
4. Er verschijnt een nieuw hoofdmenu **Profit Dashboard** in de zijbalk, onder WooCommerce.

Bij activering maakt de plugin drie tabellen aan (`wp_dfrp_ad_spend`, `wp_dfrp_order_metrics`, `wp_dfrp_sync_log`) en plant ze twee uurlijkse CRON-taken in: het synchroniseren van de advertentie-uitgaven en het voortschrijdend herberekenen van de laatste 14 dagen.

## Eerste stappen

### De inkoopprijs (COGS) op uw producten invullen

De COGS (Cost of Goods Sold, de kostprijs van de verkochte goederen) is de basis van de margeberekening. Zonder die waarde wordt de getoonde winst te hoog ingeschat.

- **Eenvoudig product:** open de productpagina, tabblad **Algemeen**, en vul het veld _Inkoopprijs_ in met het bedrag exclusief btw dat u aan de leverancier betaalt.
- **Variabel product:** elke variatie heeft een eigen veld _Inkoopprijs_. Vul dat per variatie in als de kosten verschillen (maten, kleuren, materialen).
- **In bulk:** het veld is ook beschrijfbaar via de WooCommerce REST API (`PUT /wp-json/wc/v3/products/{id}`, meta `_dfrp_cogs`), wat een bulkimport vanuit een ERP mogelijk maakt.

In het productoverzicht verschijnt een kolom _COGS_, zodat u meteen ziet welke producten nog geen waarde hebben.

### De betaalkosten instellen

Ga naar **Profit Dashboard → Instellingen → Betaalkosten**.

- **Stripe, WooCommerce PayPal Payments, Mollie:** hier hoeft u niets in te stellen. De plugin leest de werkelijk aangerekende kosten rechtstreeks uit de bestelmeta (`_stripe_fee`, `_ppcp_paypal_fees`, `_mollie_fee`).
- **Andere betaaldiensten:** vul het toepasselijke tarief in als percentage plus vast bedrag. Bijvoorbeeld bij een gratis overschrijving: 0 procent en 0 euro. Bij een cheque met bankkosten: 0 procent en 0,15 euro. Die standaardwaarden worden gebruikt als er op de bestelling geen meta met werkelijke kosten wordt gevonden.

### De verzendkosten instellen

Ga naar **Profit Dashboard → Instellingen → Standaard verzendkosten**. De tabel toont automatisch alle verzendmethoden uit uw WooCommerce-zones.

Vul per methode de gemiddelde werkelijke kostprijs in die u aan de vervoerder betaalt (zonder de marge die u aan de klant doorrekent). Rekent u bijvoorbeeld 6,90 euro voor een levering die u 4,50 euro kost, vul dan **4,50** in.

Dit zijn standaardwaarden. U kunt de werkelijke kostprijs altijd per bestelling overschrijven (in het zijpaneel van de bestelpagina) als een bepaalde zending u meer of minder heeft gekost.

## Advertentie-integraties

Elke integratie staat op zichzelf. U kunt er één, twee of alle drie inschakelen. Alle drie zijn in te stellen via **Profit Dashboard → Instellingen**.

### Meta Ads (Facebook en Instagram)

1. Maak een applicatie aan in [Meta for Developers](https://developers.facebook.com/), of gebruik een bestaande.
2. Genereer een **long-lived access token** met de scope `ads_read`. De officiële documentatie vindt u onder _Marketing API → Get Started_.
3. Haal uw **Ad Account ID** op via _Meta Business Manager → Instellingen → Advertentieaccounts_ (numeriek, zonder het voorvoegsel `act_`).
4. Vink in de instellingen van de plugin **Meta Ads inschakelen** aan en plak het access token en het Ad Account ID.
5. Sla op en klik daarna op het dashboard op **Ads nu synchroniseren** om de verbinding te controleren.

### Google Ads

Google Ads werkt met OAuth 2. U hebt vijf gegevens nodig.

1. **Developer token:** vraag die aan vanuit uw Google Ads Manager-account (MCC), onder _Tools en instellingen → Instellingen → API-centrum_.
2. **Customer ID:** het tiencijferige ID van het advertentieaccount waarvan u de uitgaven wilt volgen (zonder streepjes).
3. **OAuth client ID** en **client secret:** maak een project aan in de [Google Cloud Console](https://console.cloud.google.com/), schakel de Google Ads API in en maak een OAuth 2-client van het type _Desktoptoepassing_ aan.
4. **Refresh token:** haal die één keer op via de OAuth-stroom (zie de documentatie van de Google Ads API v18). Hij verandert daarna nooit meer.

De plugin wisselt het refresh token bij elke synchronisatie automatisch in voor een access token en houdt dat in cache zolang het geldig is (een uur). Zodra de gegevens zijn ingevuld, hoeft u niets meer te doen.

### TikTok Ads

1. Maak een applicatie aan in [TikTok Business Developers](https://business-api.tiktok.com/portal/).
2. Geef die toestemming op uw advertentieaccount om een **access token** te krijgen.
3. Haal het **Advertiser ID** op in TikTok Ads Manager (accountmenu, rechtsboven).
4. Vink in de instellingen van de plugin **TikTok Ads inschakelen** aan en plak het access token en het Advertiser ID.

## Multi-touch attributie

Zodra de plugin actief is, worden er bij elke bezoeker twee cookies geplaatst: `dfrp_ft` (first touch, het eerst bekende kanaal) en `dfrp_lt` (last touch, het meest recente kanaal). Ze blijven 90 dagen geldig.

Bij elk bezoek legt de plugin de volgende parameters uit de URL vast:

- standaard UTM's: `utm_source`, `utm_medium`, `utm_campaign`, `utm_content`, `utm_term`;
- klikidentificaties: `fbclid` (Facebook), `gclid` (Google), `ttclid` (TikTok).

Bij het aanmaken van de bestelling worden beide cookies vastgelegd in de bestelmeta (`_dfrp_utm_ft`, `_dfrp_utm_lt`). Het genormaliseerde kanaal wordt daarna afgeleid uit de last touch (met terugval op de first touch) en ondergebracht in een van deze negen categorieën: _Facebook, Instagram, Google, TikTok, Email, Organic, Direct, Referral, Other_.

### Toewijzing van de advertentie-uitgaven

Er zijn twee modi beschikbaar in de instellingen:

- **Per bestelling** (standaard): de totale uitgave van een kanaal op een dag wordt gedeeld door het aantal bestellingen dat die dag aan dat kanaal is toegewezen. Elke bestelling krijgt een gelijk deel.
- **Naar rato van de omzet**: de uitgave wordt verdeeld in verhouding tot de omzet van elke bestelling in het dagtotaal van dat kanaal. Een bestelling van 300 euro krijgt drie keer zoveel advertentiekosten toegewezen als een bestelling van 100 euro.

## Het dashboard gebruiken

Het hoofddashboard bereikt u via **Profit Dashboard → Dashboard**.

### Belangrijkste KPI's

Boven aan de pagina staan zeven indicatoren voor de gekozen periode:

- **Omzet**: de netto-inkomsten (exclusief btw naargelang de instelling, zonder terugbetalingen)
- **COGS**: de som van de inkoopprijzen van de verkochte regels
- **Betaalkosten**: het totaal van de kosten van de betaaldiensten
- **Verzending**: het totaal van de werkelijke verzendkosten
- **Advertenties**: het totaal van de toegewezen advertentie-uitgaven
- **Nettowinst**: omzet min COGS, betaalkosten, verzending, advertenties en overige kosten
- **Marge**: nettowinst gedeeld door de omzet, in procenten

### Grafiek en kanalen

Onder de KPI's toont een staafgrafiek de dagelijkse winst over de periode (groene staven bij winst, rode bij verlies).

Het blok **Prestaties per kanaal** groepeert de bestellingen per genormaliseerd kanaal, met per kanaal: het aantal bestellingen, de omzet, de advertentie-uitgave, de ROAS (rendement op advertentie-uitgaven, dus omzet gedeeld door advertentie-uitgave), de nettowinst en de marge.

### Filters en datumbereiken

Er zijn zeven vaste bereiken: Vandaag, 7 dagen, 30 dagen, 90 dagen, Lopende maand, Lopend jaar en Aangepast bereik. De bereiken zijn relatief ten opzichte van vandaag en worden bij elke paginalading automatisch bijgewerkt.

## Paneel op de bestelpagina

Elke bestelling heeft een paneel **Real Profit Dashboard** in de rechterkolom van het bewerkscherm. Het toont het herkende acquisitiekanaal en biedt drie invoervelden die de berekende waarden overschrijven:

- **Betaalkosten (euro)**: om een waarde af te dwingen (bijvoorbeeld bij een gedeeltelijke terugbetaling van kosten)
- **Werkelijke verzendkosten (euro)**: wat u voor deze specifieke bestelling aan de vervoerder hebt betaald
- **Overige kosten (euro)**: een vrij veld voor bijzondere kosten (douanekosten, speciale verpakking, klantretour en dergelijke)

Een samenvatting onder de velden toont in realtime: netto-inkomsten, de kosten in detail, de winst en de marge. Elke keer dat u de bestelling opslaat, volgt automatisch een herberekening.

## CRON en synchronisatie

Er staan twee automatische taken ingepland:

- **dfrp_cron_sync_ads** (elk uur): roept elke actieve integratie aan om de uitgaven van de laatste 7 dagen op te halen, campagne per campagne, en werkt de tabel `wp_dfrp_ad_spend` bij.
- **dfrp_cron_recalculate_orders** (elk uur, aansluitend): herberekent de cijfers van de bestellingen van de laatste 14 dagen om de nieuw geïmporteerde advertentie-uitgaven mee te nemen.

Het volledige logboek van elke uitvoering vindt u via **Profit Dashboard → Synchronisatielogs**: status, duur, aantal ingevoegde en bijgewerkte records en een eventuele foutmelding.

Draait uw WordPress op gedeelde hosting met een onbetrouwbare WP-Cron, dan is het aan te raden `DISABLE_WP_CRON` te gebruiken en een echte systeemcron per uur in te plannen: `curl -s https://uw-domein.com/wp-cron.php > /dev/null`.

## Handmatig herberekenen

De knop **60 dagen herberekenen** op het dashboard bouwt de cijfers van alle bestellingen van de laatste 60 dagen opnieuw op. Gebruik die na:

- de eerste installatie van de plugin (om de historiek op gang te brengen);
- een grootschalige wijziging van de COGS van producten;
- een wijziging van de tarieven voor betaal- of verzendkosten;
- een wijziging van de toewijzingsmodus voor advertentie-uitgaven.

De bewerking is idempotent: meerdere keren uitvoeren geeft hetzelfde resultaat.

## REST API

Er zijn drie endpoints beschikbaar onder `/wp-json/dfrealprofit/v1/`. Ze vereisen de capability `manage_woocommerce` en accepteren authenticatie via een WordPress-cookie of een Application Password.

- `GET /summary?from=YYYY-MM-DD&to=YYYY-MM-DD`: geaggregeerde KPI's (omzet, COGS, kosten, advertenties, winst, marge)
- `GET /series?from=YYYY-MM-DD&to=YYYY-MM-DD`: dagreeks (omzet, kosten en winst per dag)
- `GET /channels?from=YYYY-MM-DD&to=YYYY-MM-DD`: prestaties per kanaal (bestellingen, omzet, advertenties, ROAS, winst, marge)

Met deze endpoints koppelt u een extern dashboard (Looker Studio, Metabase, Grafana, een spreadsheet) aan de cijfers van de plugin.

## Verwijderen

Alleen deactiveren verwijdert geen enkele gegevens. Het volledig verwijderen via **Plugins** start `uninstall.php`, dat:

- de drie eigen tabellen verwijdert (`ad_spend`, `order_metrics`, `sync_log`);
- de opties van de plugin verwijdert;
- de CRON-taken uit de planning haalt;
- de COGS van de producten en de bestelmeta **behoudt** (waardevolle bedrijfsgegevens).

Voor een volledige opruiming, inclusief de meta, moet u vóór het verwijderen twee SQL-regels in `uninstall.php` uit commentaar halen.

## Korte vraagbaak

### Is de plugin compatibel met WooCommerce Subscriptions?

Ja. Elke verlenging levert een gewone bestelling op, die net als elke andere wordt verwerkt.

### Wat gebeurt er als ik de prijs van een product wijzig?

Niets voor bestaande bestellingen: de COGS en de prijs uit het verleden blijven vastgelegd zoals op het moment van de verkoop. Alleen nieuwe bestellingen gebruiken de nieuwe prijs.

### Hoe ga ik om met een terugbetaling?

Maak een gewone terugbetaling aan vanuit WooCommerce. De netto-inkomsten worden automatisch herberekend (het terugbetaalde totaal wordt afgetrokken). De al gemaakte kosten (COGS, verzending, betaalkosten, advertenties) blijven staan, wat het werkelijke verlies zichtbaar maakt.

### Kan ik de plugin zonder advertentie-integratie gebruiken?

Ja. Zonder advertentie-integratie staan de advertentiekosten op nul en beperkt de berekening zich tot netto-inkomsten min COGS, betaalkosten, verzending en overige kosten. Dat is al ruim beter dan wat WooCommerce standaard toont.

### Worden de gegevens naar een externe server gestuurd?

Nee. De enige externe aanroepen zijn die welke u zelf instelt richting de API's van Meta, Google en TikTok, om uw uitgaven **op te halen**. Er gaan geen gegevens van uw winkel naar DataFirefly of naar een derde partij.
