Alle releasenotes Alle releasenotes MplusKASSA API Service

Sorteer op invoertijdstip Filter op 'Vereist aandacht bij installatie' Filter op 'Uitgelicht' Start presentatie


  • placeTableOrder ondersteunt nu het automatisch proberen te maken van menu's voor het nieuwe menu systeem. Wel moet daarvoor automaticNewMenus aangezet worden, wat standaard uit staat. Aangeraden is om dit niet te gebruiken, maar menuId en menuLinesId te zetten op de regels.

    Dealers

    Voor Android Handheld

    58.0.0
  • Ondersteuning toegevoegd voor externalDiscount die vanuit een webhook kan worden meegegeven.

    58.0.0
  • Nieuwe instelling toegevoegd waarmee aangegeven kan worden of de filiaalspecifieke artikel omschrijving aangepast mag worden met de saveArticleBranchDeviations call. Als dit niet mag, zal de oude filiaalspecifieke omschrijving gebruikt worden, of zal er geen omschrijving gezet worden indien die er nog niet was.

    Artikelen > Filiaalspecifieke omschrijving kunnen instellen
    57.0.3
  • API Service: getOrderHistory : medewerker die betaling heeft gedaan toegevoegd

    57.0.3
  • Ondersteuning voor voedingswaarden toegevoegd in de API.

    getNutrientTypes: geeft de voedingswaarde types terug
    updateArticleNutrients: update de voedingswaarden voor een bepaald artikel

    Daarnaast is er een nieuw veld voor getOverview, nutrients. Dit geeft in een JSON-structuur de ingestelde voedingswaarden voor een artikel terug.

    56.1.0
  • Nieuwe functie createOrderV3.

    Deze is functioneel gelijk aan createOrderV2, maar is idempotent waardoor je kunt garanderen dat de order maar één keer wordt aangemaakt, ook als je de request meerdere keren herhaalt.

    58.0.0
  • Het is nu mogelijk om met getEmployeeAuthorizationGroups de filiaal en filiaalgroep gekoppelde autorisatiegroepen los op te vragen. Doe dit door de optionele request parameter separateBranchesAndBranchGroups op true te zetten.

    58.0.0
  • Uitbreiding van getArticleVariants. ArticleVariant bevat nu een lijst van leveranciers (suppliers) welke relationNumber, isPreferredSupplier en isPurchasable bevatten.

    57.3.4
  • Fix voor API request PayTableOrderV2: error: You're trying to move more articles than were in the original order.' als sales-en-acties actief is op artikelen

    57.3.2
  • Ondersteuning toegevoegd om via de sendWebhook call ook de startPayment en cancelPayment webhooks te triggeren.

    57.3.2
  • Elke API-call retourneert nu het versienummer van de API in een aparte Mplus-Service-Version response header.

    Bijvoorbeeld:

    Mplus-Service-Version: 57.2.0.0

    57.2.0
  • Elke API-call retourneert nu het versienummer van de API in een aparte Mplus-Service-Version response header.

    Bijvoorbeeld:

    Mplus-Service-Version: 56.3.0.0

    56.3.0
  • De volgende API calls hebben nu ondersteuning om op basis van een of meerdere ids of numbers te filteren:

    • getPackingSlips.packingSlipIds & packingSlipNumbers
    • getInvoices.invoiceIds & invoiceNumbers
    • getOrders.orderIds & orderNumbers
    57.3.2
  • De functie createOrderV2 retourneert nu ook het ingevulde order-object bij een filiaalorder (Slave-filiaal) die binnen de "Wachttijd synchronisatie Master naar Slave" verwerkt is, en bij het resultaat CREATE_ORDER_RESULT_EXT_ORDER_ID_ALREADY_EXISTS.

    Dit maakt het gedrag van de call weer consistent ongeacht of het filiaal toevallig een Slave is.

    56.1.6
  • Optionele workplaceNumber toegevoegd aan getButtonLayoutGroupDetails, daarnaast is de al bestaande buttonLayoutGroupId ook optioneel gemaakt. Wanneer er een workplaceNumber en een branchNumber wordt meegegeven, zal de snelknoppen indeling details van de huidig actieve snelknoppen lay-out voor de meegegeven werkplek teruggegeven worden.

    57.0.3
  • getOverview bevat nu twee nieuwe velden: owners en owners_uuid. owners geeft per medewerker het nummer van elk gekoppelde eigenaarslabel terug, owners_uuid geeft gelijk de uuids terug van elk gekoppelde eigenaarslabel.

    57.0.3
  • Er wordt nu rekening gehouden met filiaalgroepen en eigenaarslabels in:

    - GetCardCategories
    - GetButtonLayoutGrupsWithAssignedWorkplaces
    - UpdateEmployeeAuthorizationGroups
    - GetEmployeeAuthorizations
    - GetEmployeeBranchAuthorizations
    - GetEmployeeAuthorizationGroups
    57.0.3
  • ownerFilter en branchGroupFilter toegevoegd aan:

    - ReportArticlePerformance
    - ReportAverageSpending
    - ReportBPE
    - ReportBranchPerformance
    - ReportPaymentMethods
    - ReportPrintableFinancialTotals
    - ReportTables
    - ReportTurnoverByActivity
    - ReportTurnoverByArticle
    - ReportTurnoverByBranch
    - ReportTurnoverByEmployee
    - ReportTurnoverByTurnoverGroup
    - ReportTurnover
    - ReportCancellations
    - GetReceipts
    57.0.3
  • API: Gefixed dat de wijziging voor het alternatieve btwcode veld ook wordt opgeslagen in de database

    57.0.3
  • getBranches geeft nu ook voor elke werkplek de externe referentie terug onder de naam extWorkplaceId indien de externe referentie niet leeg is.

    57.0.3
  • DeterminePricing gaat nu correct om met arrangementen. Je kan nu een orderId of table meegeven, waarmee de bestaande order wordt bepaald, om die regels mee te nemen in de prijsberekening. Daarnaast kan je nu aan elke regel een tempId meegeven, die ook weer teruggegeven wordt, om gemakkelijker de regels te identificeren. Tenslotte wordt er nog een priceType teruggegeven. Wanneer die op PRICE-TYPE-FIXED staat, gaat het om een arrangement.

    57.0.3
  • De API is nu zelf in staat om bij idempotente requests (zoals placeTableOrder) zelf een aantal retries te proberen als er een concurrency issue voorkomt. Dit vermindert de kans dat de call mislukt door bijv. een detected deadlock.

    57.0.3
  • De functie getPaymentMethodsV2 retourneert nu optioneel ook de bpeConfiguration. Stel hiervoor in de request de parameter includeBpeConfiguration in.

    Ook is het nu mogelijk om in de request te filteren op paymentMethodTypes.

    55.1.1
  • De functie getPaymentMethodsV2 retourneert nu optioneel ook de bpeConfiguration. Stel hiervoor in de request de parameter includeBpeConfiguration in.

    Ook is het nu mogelijk om in de request te filteren op paymentMethodTypes.

    57.0.3
  • Dealers

    De installer update nu automatisch de reeds geinstalleerde versie ook als deze in een afwijkende locatie is geinstalleerd.

    58.0.0
  • Dealers

    Elke API is nu out-of-the-box in staat om tot drie parallele requests af te handelen.

    (Voorheen was de standaard één)

    56.2.0
  • Dealers

    Elke API is nu out-of-the-box in staat om tot drie parallele requests af te handelen.

    (Voorheen was de standaard één)

    57.0.9
  • Dealers

    De API heeft nu ondersteuning voor opstarten met een --connection, welke verwijst naar een databaseconnectie in %PROGRAMDATA\MplusQ\database.dat. Hierdoor hoeft de API niet meer een apart database.inibestand te hebben.

    57.0.9
  • saveInvoice geeft nu ook invoiceNumber en invoiceBarcode terug wanneer je een factuur aanmaakt, niet alleen wanneer je een factuur wijzigt.

    58.0.0
  • getCardCategories houdt nu rekening met eigenaarslabels als het eigenaarslabelssysteem en het filiaalgroepensysteem aan staan.

    57.3.2
  • createImage en createImageFromUrl retourneren nu een aparte resultaatcode CREATE_IMAGE_NOT_SUPPORTED als het uploaden van afbeeldingen via de API überhaupt niet ondersteund wordt, omdat MIS niet aan staat. Zo zien we het sneller in onze online apps.

    57.3.2
  • De call getPackingSlips retourneert nu ook:

    • packingSlipType
    • orderCategoryNr
    • vatMethod
    • sessionId
    57.3.2
  • De functie placeTableOrder ondersteunt nu ook het doorgeven van een levertijdstip (via deliveryPeriodBegin).

    57.3.2
  • GetBranchGroups API call geeft nu ook per filiaalgroep ownerLabelId terug, als het filiaalgroep een gekoppelde eigenaarslabel heeft.

    57.0.9
  • De functie getAuthorizationTree retourneert nu onlineAuthorizationsVersion en de functie updateOnlineAuthorizationTree accepteert nu onlineAuthorizationsVersion. Op die wijze is snel te controleren of de autorisatieboom up-to-date is.

    57.0.9
  • getButtonLayoutGroupForBranch retourneert nu de knoptekst van de artikelkaart in articlesInLayouts.buttonText.

    Dit is tbv. de android handheld.

    57.0.3
  • getInvoices, getReceipts en getOrders vullen nu net zoals getInvoice ook de onderstaande Payment velden in, indien van toepassing.

    branchNumber
    extBranchId
    workplaceNumber
    employeeNumber
    employeeName
    57.0.3
  • API-calls getPrintLayouts en getRenderedPrintLayout zijn nu zichtbaar in de ?wsdl en ?docs.

    Deze calls kunnen gebruikt worden om via de API een print van een layout van het nieuwe printlayoutsysteem te maken.

    56.1.0
  • Performance verbeteringen in alle ordergerelateerde calls, zoals placeTableOrder.

    55.0.6
  • getOrderHistory stuurt nu ook de aanbetalingen op.

    54.0.1
  • getOrderHistory call geeft nu de hele order terug(meerdere dagen) als het datum of syncmarker filter de order selecteert.

    53.1.0
  • Voor de api calls getPackingSlips, getInvoice en getInvoices hebben een nieuwe reponse parameter costCenter erbij gekregen.

    Deze bevat de waarde die in POS doormiddel van de vraag om kostenplaats toegevoegd is aan de pakbon van de factuur.

    53.1.0
  • Een geannuleerde externe webhookbetaling wordt nu niet meer apart aan de gekoppelde webhook endpoint gemeld, aangezien de externe endpoint in principe degene is die de annulering heeft geïnitieerd. Dit brengt het gedrag van de API ook in lijn met dat van de Q-line.

    53.0.2
  • Via de setRelationPresence kan een tafel met alleen een relatie erop, nu ook naar een tafel met bestelling zonder relatie erop verplaatst worden.

    53.0.1
  • De getInvoices, getReceipts en getOrders geven nu ook het tijdstip van de betaling terug in de paymentList.

    53.0.1
  • Opgelost dat splitsen d.m.v. moveTableOrderV3 een SOAP exception gaf als de te splitsen tafel wijzigingen heeft gehad, door bijvoorbeeld meerdere keren artikelen op de tafel te boeken.

    Dealers

    Gaf uiteindelijk deze foutmelding:

    Het is niet mogelijk om af te splitsen vanwege een verschil.
    Split NOT possible, divergent properties: (WijzigingsTeller: 0 <> 1)
    57.3.3
  • Probleem opgelost in placeTableOrder als je wel numberOfGuests meegeeft, maar geen lineList.

    Dealers

    Veroorzaakt de Foutmelding in api log: SEVERE req: placeTableOrder, exception: EAccessViolationmsg: Access violation at address 00F4D9DA in module 'MplusQservice.exe'. Read of address 00000010 in het api logboek.

    Op de handheld krijg je dan te zien: PIN betaling is GELUKT Bijwerken van tafel is mislukt.

    56.1.3.1
  • Probleem opgelost in placeTableOrder als je wel numberOfGuests meegeeft, maar geen lineList.

    Dealers

    Veroorzaakt de Foutmelding in api log: SEVERE req: placeTableOrder, exception: EAccessViolationmsg: Access violation at address 00F4D9DA in module 'MplusQservice.exe'. Read of address 00000010 in het api logboek.

    Op de handheld krijg je dan te zien: PIN betaling is GELUKT Bijwerken van tafel is mislukt.

    Tijdelijk downgraden naar versie 1.41.2 werkt

    57.0.3
  • Fix uit V53 toegepast op V52

    • Fix voor savePurchaseOrderV2, je kon de regels niet meer wijzigen nadat de opdracht de state PURCHASE-ORDER-STATE-SUPPLIER-RECEIVED heeft bereikt.
    Dealers

    Foutmelding: Voorwaarde niet voldaan: rgl C:\Builder\Projects\MplusQservice\MplusqApi\Util\PurchaseUtil.cpp: 204 PopulateInkRegelFromPurchaseLine<PurchaseLineT,InkRegelT>

    52.1.1
  • Lost probleem op waardoor de API vooral voor online extra traag kon zijn als de optie "Mag een medewerker op meerdere werkplekken tegelijk ingelogd zijn?" aan stond.

    57.0.9
  • Probleem opgelost waardoor je geen categorieën meer kon bijwerken via createProduct, updateProduct, createRelation, updateRelation, createEmployee en updateEmployee.

    57.0.4
  • Subtiele bug opgelost waardoor in uitzonderlijke gevallen verkeerde BTW-tarieven konden worden berekend.

    55.0.6
  • Opgelost dat companyName niet werd opgeslagen met UpdateRelation.

    58.0.0
  • Opgelost dat het verplaatsen van een volledige tafel order d.m.v. moveTableOrderV2 en moveTableOrderV3 de volgende foutmelding gaf als er gebruikt werd gemaakt van TSE:

    Error on the server. Please contact API support at dev@mpluskassa.nl.
    Voorwaarde niet voldaan: Order.VersieNr &gt; 1
    57.3.5
    1 bijlage
  • Opgelost dat placeTableOrder niet meer TSE-data opstuurde. Dit lost onder andere het probleem op dat een tafelorder doen en/of betalen met de Android handheld geen TSE-data opstuurt.

    57.3.5
  • Opgelost dat priceType van een determinePricing regel een niet valide waarde bevatte als het om een tekstregel ging.

    57.3.4
  • Bugfix updateProducts ging mis wanneer er alleen een update of een insert gedaan moest worden.

    Gaf dan een UPDATE-PRODUCT-RESULT-FAILED in de response.

    57.3.3
  • getOrders error opgelost:

    Database error on the server. Please contact API support at dev@mpluskassa.nl.
    57.3.3
  • getOrders, getInvoices en getPackingSlips input validatie minder restrictief gemaakt. Het is daardoor nu weer mogelijk om een sync marker en datum filter toe te passen.

    57.3.2
  • Opgelost dat kassabonnen/bestelbonnen niet uitgeprint werden wanneer er gebruik werd gemaakt van het nieuwe print lay-out systeem.

    57.3.2
  • Probleem opgelost als je een order ging opslaan mét deliveryPeriodBegin maar zónder deliveryPeriodEnd.

    57.3.2
  • CreateRelation nieuwe kaartnummer bepaling ging mis

    58.0.0
  • Database connectie herstel werkt weer.

    57.2.1
  • Opgelost dat wanneer met updateArticleGroup d.m.v. sortOrder een artikelgroep naar de één na laatste plek werd gesorteerd, de artikelgroep op de laatste plek terechtkwam.

    57.3.2
  • Opgelost dat het uitvoeren van de getJournals of getFinancialJournal API call een foutmelding gaf.

    Database error on the server. Please contact API support at dev@mpluskassa.nl.
    57.1.1
  • Foutmelding opgelost als je in een GKS-administratie een tafel volledig wilde verplaatsen.

    57.3.2
  • Het kassaldo en kasverschil dat geretourneerd wordt door reportPrintableFinancialTotals() wordt nu niet meer verborgen, mits de medewerker daarvoor geautoriseerd is.

    57.3.2
  • Als het nieuwe filiaalgroepen systeem aan staat, zal de getCardCategories API call nu op basis van de Mplus-Employee header de kaart categorieën ophalen, i.p.v. op basis van de Mplus-Workplace header.

    57.0.9
  • De functie updateProduct geeft nu ook apart een foutmelding als een opgegeven artikelnummer al bestaat: UPDATE_PRODUCT_RESULT_FAILED_ARTICLE_NUMBER_ALREADY_TAKEN

    57.3.2
  • Lost probleem op waardoor de API vooral voor online extra traag kon zijn als de optie "Mag een medewerker op meerdere werkplekken tegelijk ingelogd zijn?" aan stond.

    56.2.1
  • getOverview geeft nu de juiste minimumprijs terug.

    56.1.4
  • Probleem verholpen met de webhooks (HTTP_PARSING_ERROR).

    Sinds een recente update ging de API waar mogelijk ineens onbedoeld proberen te communiceren via HTTP/2. Dit werd echter nog niet goed ondersteund door de rest van onze software. Daarom wordt nu geforceerd dat we altijd HTTP/1.1 gebruiken.

    56.1.4
  • Probleem verholpen met de webhooks (HTTP_PARSING_ERROR).

    Sinds een recente update ging de API waar mogelijk ineens onbedoeld proberen te communiceren via HTTP/2. Dit werd echter nog niet goed ondersteund door de rest van onze software. Daarom wordt nu geforceerd dat we altijd HTTP/1.1 gebruiken.

    57.0.3
  • Probleem verholpen met de webhooks (HTTP_PARSING_ERROR).

    Sinds een recente update ging de API waar mogelijk ineens onbedoeld proberen te communiceren via HTTP/2. Dit werd echter nog niet goed ondersteund door de rest van onze software. Daarom wordt nu geforceerd dat we altijd HTTP/1.1 gebruiken.

    55.1.4
  • Gefixed dat de wijziging voor het alternatieve btwcode veld ook wordt opgeslagen in de database

    56.1.3
  • Opgelost dat o.a. getOrders, getInvoices en getPackingSlips de volgende foutmelding teruggaven:

    Kolom niet gevonden: afl_adres_bedrijfsnaam
    56.1.2
  • Eerdere fix uit 55.0.7 miste nog op 55.1.x

    Opgelost dat o.a. getOrders, getInvoices en getPackingSlips de volgende foutmelding teruggaven:

    Kolom niet gevonden: afl_adres_bedrijfsnaam
    55.1.2
  • Opgelost dat savePurchaseOrderV2 geen besteleenheden opsloeg, indien die op de artikelen ingesteld stonden. Daarnaast geeft getPurchaseOrdersV2 nu ook de besteleenheid terug onder de naam orderUnit.

    57.0.3
  • API call getArticlesInLayout retourneert nu weer alleen daadwerkelijke bereidingswijzegroepen, en niet bijverkoop of vervangend artikelen.

    55.1.1
  • API call getArticlesInLayout retourneert nu weer alleen daadwerkelijke bereidingswijzegroepen, en niet bijverkoop of vervangend artikelen.

    57.0.3
  • Opgelost dat reportTurnoverByEmployee de volgende foutmelding gaf wanneer een omzet gemaakt was met een medewerker nummer hoger dan 2.147.483.647.

    Database error on the server. Please contact API support at dev@mpluskassa.nl.
    57.0.3
  • Elke tien minuten voert de API een statuscontrole van de databaseverbinding uit. Als er tijdens deze controle iets mis ging, dan werd de volgende controle direct uitgevoerd ipv. tien minuten later. Dat is nu opgelost.

    57.0.3
  • Opgelost dat o.a. getOrders, getInvoices en getPackingSlips de volgende foutmelding teruggaven:

    Kolom niet gevonden: afl_adres_bedrijfsnaam
    55.0.7
  • Het is nu mogelijk om expliciet de order types mee te geven aan getCurrentSyncMarkersV2. Standaard zijn dit SALES_ORDER, REPEAT_SALES_ORDER, en EXTERNAL_SALES_ORDER.

    57.0.3
  • Wanneer je via de saveArticleBranchDeviations wijzigingen inschoot werd de artikel syncmarker niet geüpdatet.

    56.1.0
  • Crash opgelost die kon voorkomen als je moveTableOrder gebruikte terwijl de instelling "automatisch korting toepassen" uitgeschakeld was.

    56.1.0
  • Opgelost dat o.a. getOrders, getInvoices en getPackingSlips de volgende foutmelding teruggaven:

    Kolom niet gevonden: afl_adres_bedrijfsnaam
    56.1.0
  • Verhelpt probleem waardoor het aanmaken en wijzigen van artikel-, medewerker- of relatiekaarten kan blijven hangen.

    Probleem kan optreden bij oa letters met accenten.

    56.1.0
  • Backport: Bugfix aan de placeTableOrder call wanneer je alleen een relatie opgeeft wordt deze nu wel aan de tafel gekoppeld.

    53.1.2
  • Bugfix voor foutmelding database error on server met de getOrders call.

    54.1.3
  • Bugfix aan de placeTableOrder call, wanneer je alleen een relatie opgeeft wordt deze nu wel aan de tafel gekoppeld.

    54.1.3
  • De waarde voor de eigenschap vatCodeAlternative die je kon meegeven aan createProduct en updateProduct werd niet overgenomen.

    55.0.6
  • Fix aan de API call getNutritionalCharacteristics en getPreparationMethodGroups wanneer je deze op basis van het hoogste syncmarker + 1 opvroeg kon je één resultaat missen.

    55.0.6
  • Opgelost dat getProducts alleen actieve artikelen teruggeeft als onlyWebshop op true staat, ondanks dat onlyActive op false staat.

    53.1.0