PHPackages                             darvis/mkg-api - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [API Development](/categories/api)
4. /
5. darvis/mkg-api

Abandoned → [darvis/mkg-client](/?search=darvis%2Fmkg-client)Library[API Development](/categories/api)

darvis/mkg-api
==============

Laravel package voor communicatie met het MKG ERP systeem

1.1.0(10mo ago)02MITPHPPHP ^8.2

Since Jul 15Pushed 10mo agoCompare

[ Source](https://github.com/ArvidDeJong/mkg-api)[ Packagist](https://packagist.org/packages/darvis/mkg-api)[ RSS](/packages/darvis-mkg-api/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (1)DependenciesVersions (2)Used By (0)

MKG CRM API Integratie voor Laravel
===================================

[](#mkg-crm-api-integratie-voor-laravel)

Deze Laravel package maakt het mogelijk om eenvoudig te communiceren met het MKG CRM systeem vanuit je Laravel applicatie.

[![Versie](https://camo.githubusercontent.com/ca4a6d200baffd36320bed73bcae0bb5ad75a451debdaf5d08d5908e2051de86/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f7665727369652d312e312e302d626c7565)](https://camo.githubusercontent.com/ca4a6d200baffd36320bed73bcae0bb5ad75a451debdaf5d08d5908e2051de86/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f7665727369652d312e312e302d626c7565) [![Laravel](https://camo.githubusercontent.com/ad503af3966d579883d35f912b7a5e9882d1918e12165b6fd434a64eeaf322b0/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6c61726176656c2d31322d726564)](https://camo.githubusercontent.com/ad503af3966d579883d35f912b7a5e9882d1918e12165b6fd434a64eeaf322b0/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6c61726176656c2d31322d726564)

Nieuwe Features in v1.1.0
-------------------------

[](#nieuwe-features-in-v110)

- Verbeterde foutafhandeling en logging
- Automatische sessie hernieuwing
- Nieuwe handige methodes voor POST en PUT requests
- Configureerbare timeouts

Contact
-------

[](#contact)

Voor vragen of ondersteuning bij het gebruik van deze package kunt u contact opnemen met:

Arvid de Jong
E-mail:

Documentatie MKG API
--------------------

[](#documentatie-mkg-api)

Voor meer informatie over de beschikbare endpoints en mogelijkheden van de MKG API, raadpleeg de officiële documentatie:

[MKG Kenniscentrum](https://www.mkg.eu/mijn-mkg/support/kenniscentrum?cat=845)

Changelog
---------

[](#changelog)

Voor een compleet overzicht van alle wijzigingen, bekijk de [CHANGELOG.md](CHANGELOG.md).

Installatie
-----------

[](#installatie)

Je kunt de package installeren via Composer:

```
composer require darvis/mkg
```

Publiceer daarna de configuratie:

```
php artisan vendor:publish --tag=mkg-config
```

Configuratie
------------

[](#configuratie)

Na het publiceren van de configuratie, kun je de instellingen vinden in `config/mkg.php`. Je kunt ook de volgende omgevingsvariabelen instellen in je `.env` bestand:

```
# LET OP: Dit zijn allemaal voorbeeldwaardes! Vervang deze door je eigen gegevens
MKG_URL_AUTH=https://arvid.nl/mkg/static/auth/j_spring_security_check
MKG_URL_PROD=https://arvid.nl/mkg/rest/v1/MKG/Documents
MKG_CUSTOMER=45432326-e397-4da6-a27e-d9e332ff2a00
MKG_USERNAME=mkguser
MKG_PASSWORD=mkgpassword

# Optionele configuratie
MKG_TIMEOUT=30        # Request timeout in seconden (standaard: 30)
MKG_CONNECT_TIMEOUT=10 # Connection timeout in seconden (standaard: 10)
MKG_COOKIE_PATH=mkg/cookie.txt # Pad voor sessie cookie opslag

```

**Belangrijk**: Bovenstaande waarden zijn slechts voorbeelden. Gebruik je eigen inloggegevens en URLs verstrekt door MKG.

Gebruik
-------

[](#gebruik)

### Via Dependency Injection

[](#via-dependency-injection)

```
use Darvis\Mkg\Mkg;

class MijnController extends Controller
{
    public function index(Mkg $mkg)
    {
        $resultaat = $mkg->get('pad/naar/resource');
        return response()->json($resultaat);
    }
}
```

### Via Facade

[](#via-facade)

```
use Darvis\Mkg\Facades\Mkg;

class MijnController extends Controller
{
    public function index()
    {
        $resultaat = Mkg::get('pad/naar/resource');
        return response()->json($resultaat);
    }
}
```

### Data ophalen

[](#data-ophalen)

```
// Gegevens ophalen
$data = $mkg->get('endpoint/path');

// Controleren op fouten
if ($data === null) {
    $errors = $mkg->errors;
    // Toegang tot alle foutmeldingen
    foreach ($errors as $error) {
        Log::error("MKG Error: {$error}");
    }
}
```

### Data wijzigen

[](#data-wijzigen)

```
// Data wijzigen met PUT (nieuwe methode)
$resultaat = $mkg->put('endpoint/path', [
    'veld1' => 'waarde1',
    'veld2' => 'waarde2'
]);

// Data toevoegen met POST (nieuwe methode)
$resultaat = $mkg->post('endpoint/path', [
    'veld1' => 'waarde1',
    'veld2' => 'waarde2'
]);

// Of gebruik de generieke mutate methode voor meer controle
$resultaat = $mkg->mutate('endpoint/path', [
    'veld1' => 'waarde1',
    'veld2' => 'waarde2'
], 'PUT');
```

Gespecialiseerde Modules
------------------------

[](#gespecialiseerde-modules)

De MKG package bevat gespecialiseerde modules voor specifieke onderdelen van het MKG CRM systeem.

### MkgInvoice

[](#mkginvoice)

De `MkgInvoice` klasse biedt specifieke functionaliteit voor het werken met facturen in het MKG systeem.

```
use Darvis\Mkg\MkgInvoice;

// Via Dependency Injection in een controller
public function getInvoice(MkgInvoice $invoice, string $invoice_nr)
{
    $factuur = $invoice->get($invoice_nr);

    if ($factuur) {
        // Toegang tot factuurgegevens
        $factuurnummer = $factuur['opde_boekstuk'] ?? null;
        $openstaandBedrag = $factuur['opde_bdr_open_ov'] ?? 0;
        $factuurDatum = $factuur['opde_dat_factuur'] ?? null;
        $vervaldatum = $factuur['opde_dat_verval'] ?? null;
        $isBetaald = $factuur['opde_afgewerkt'] === 'Ja';

        return response()->json([
            'factuurnummer' => $factuurnummer,
            'openstaand_bedrag' => $openstaandBedrag,
            'datum' => $factuurDatum,
            'vervaldatum' => $vervaldatum,
            'is_betaald' => $isBetaald
        ]);
    }

    return response()->json(['error' => 'Factuur niet gevonden'], 404);
}
```

#### Beschikbare Velden

[](#beschikbare-velden)

De `MkgInvoice` klasse bevat een gestructureerde `fieldDescriptions` array met uitleg over alle factuurvelden en hun formaten:

VeldnaamOmschrijvingFormaatopde\_boekstukBoekstuk/factuurnummervarcharopde\_afgewerktOf de factuur is afgewerkt/betaaldja/neeopde\_bdr\_open\_ovOpenstaand bedrag&gt;&gt;&gt;,&gt;&gt;&gt;,&gt;&gt;9.99-opde\_bet\_wijzeBetaalwijzeintopde\_dat\_factuurFactuurdatum99-99-9999opde\_dat\_vervalVervaldatum99-99-9999opde\_dat\_ingaveDatum van ingave99-99-9999opde\_dat\_historischDatum historie afgehandeld/betaald99-99-9999##### Helper Methodes

[](#helper-methodes)

De `MkgInvoice` klasse biedt handige methodes om met de veldstructuur te werken:

```
// Alleen veldnamen en omschrijvingen ophalen
$descriptions = $invoice->getSimpleFieldDescriptions();

// Alleen veldnamen en hun formaten ophalen
$formats = $invoice->getFieldFormats();

// Direct toegang tot individuele velden
$format = $invoice->fieldDescriptions['opde_boekstuk']['format']; // 'varchar'
$description = $invoice->fieldDescriptions['opde_boekstuk']['description']; // 'Boekstuk/factuurnummer'
```

###  Health Score

30

—

LowBetter than 64% of packages

Maintenance54

Moderate activity, may be stable

Popularity3

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity49

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Unknown

Total

1

Last Release

308d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/24c445b7580e09ff72b8340d1423886148c4c8a249d0a828c98285109e7e5663?d=identicon)[darvis](/maintainers/darvis)

---

Top Contributors

[![ArvidDeJong](https://avatars.githubusercontent.com/u/7394837?v=4)](https://github.com/ArvidDeJong "ArvidDeJong (2 commits)")

### Embed Badge

![Health badge](/badges/darvis-mkg-api/health.svg)

```
[![Health](https://phpackages.com/badges/darvis-mkg-api/health.svg)](https://phpackages.com/packages/darvis-mkg-api)
```

###  Alternatives

[stripe/stripe-php

Stripe PHP Library

4.0k143.3M480](/packages/stripe-stripe-php)[twilio/sdk

A PHP wrapper for Twilio's API

1.6k92.9M272](/packages/twilio-sdk)[facebook/php-business-sdk

PHP SDK for Facebook Business

90821.9M34](/packages/facebook-php-business-sdk)[meilisearch/meilisearch-php

PHP wrapper for the Meilisearch API

74513.7M114](/packages/meilisearch-meilisearch-php)[google/gax

Google API Core for PHP

265103.1M454](/packages/google-gax)[google/common-protos

Google API Common Protos for PHP

173103.7M50](/packages/google-common-protos)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
