Alle releasenotes Alle releasenotes MplusKASSA API Service

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


  • Deze versie verwacht ten onrechte database schema versie 45. Gebruik 46.0.1

    46.0.0
  • getTableOrderV3 heeft nu een extra eigenschap uncondensedLines waarmee je kunt aangeven of de regels altijd onverdicht geretourneerd moeten worden.

    50.0.0
  • Diverse functies toegevoegd en aangepast voor het werken met afbeeldingen van artikelen, relaties en medewerkers.

    • createImage en createImageFromUrl kunnen nu als de image direct gelinkt wordt ook meteen de gewenste labels instellen.
    • getCardImageLabels toegevoegd om de beschikbaar labels en de restricties daarvan op te vragen.
    • getCardImages kan voor meerdere kaarten de images opvragen.
    • saveCardImages werkt van meerdere kaarten de bijbehorende lijst van afbeeldingen bij, afbeeldingen die niet in de aanroep staan worden verwijderd.
    49.1.0
  • moveTableOrderv3 idempotente call toegevoegd

    Deze call is ook makkelijker te gebruiken doordat niet alle details van de order meegegeven hoeven te worden. Alleen orderId is voldoende. Wanneer een deel verplaatst moet worden is meegeven van alleen de lineId's en eventueel quantity voldoende.

    49.1.0
  • Het is nu mogelijk om via de Server-Timing response header gedetailleerde informatie te krijgen over hoe lang verschillende processen binnen de API duren.

    Als er bijv. door de API een webhook wordt aangeroepen, krijg je een aparte benchmark met de duur van de webhook. En als de webhook endpoint zelf ook Server-Timing informatie teruggeeft, dan wordt dat ook toegevoegd aan de Server-Timing header van de API.

    49.1.0
  • cancelOrderV2 welke meer soorten orders kan cancellen waaronder ook tafelorders en ook beter rekening houdt met of hij op een slave draait of niet.

    49.1.0
  • De calls savePurchaseOrderV2 en savePurchaseDeliveryV2 hebben nu ondersteuning voor toevoegen van regels via supplierArticleNumber of barcode, naast articleNumber of pluNumber. Het is dan niet nodig om articleVariantId mee tegeven, die wordt automatisch geselecteerd op basis van supplierArticleNumber of barcode.

    Ook is het mogelijk om de aantallen door te via quantityOfPackagesOrdered of quantityOfPackagesDelivered, intern wordt dit automatisch omgerekend naar de basisaantallen voor de desbetreffende uitvoering.

    49.0.0
  • Nieuwe API call printTableReceiptV3, met de volgende verbeteringen tov. printTableReceiptV2:

    • Geen geregistreerde terminal meer nodig.
    • Idempotent, dus veilig om (per ongeluk) vaker aan te roepen.
    49.0.0
  • Nieuwe API call printReceiptV2, met de volgende verbeteringen tov. printReceipt:

    • Geen geregistreerde terminal meer nodig.
    • Idempotent, dus veilig om (per ongeluk) vaker aan te roepen.
    • Mogelijkheid om voor een bepaalde tafel de laatste kassabon af te drukken.
    • Mogelijkheid om een specifieke kassabon af te drukken.
    49.0.0
  • Nieuwe API call getGksInformation waarmee je voor een bepaalde werkplek het GKS productienummer kan opvragen.

    48.2.1
  • De tafellijst api calls kunnen nu een extra state teruggeven TABLE-STATUS-RECENTLY-PAID deze wordt gebruikt om aan te geven dat de tafel recentelijk betaald is.

    49.0.0
  • Nieuwe functie performBpeBudgetChecks

    Hiermee kan in een enkele aanroep voor een enkele medewerker meerdere BPE limiet checks gedaan worden. Hij retourneert per BPE:

    • of deze onder limiet is of dat er gewaarschuwd of geblokkeerd moet worden
    • hoeveel over of onder de limiet deze is
    • wat de limiet is, als er een limiet is
    48.1.3
  • Bestellingen die geannuleerd worden via de API (via cancelOrder of cancelTableOrder) worden nu ook geregistreerd in het annuleringslogboek.

    48.0.0
  • Het is nu mogelijk om een externalPaymentId mee te geven aan een Payment. Als het desbetreffende ID daadwerkelijk overeenkomt met een bestaande ExternalPayment, wordt de betaling gekoppeld aan deze ExternalPayment.

    48.0.0
  • Het is nu mogelijk om via de browser property van een Webhook request (zoals startExternalPaymentV2) door te geven welke browser gebruikt wordt om de webhooks te triggeren.

    Een webhook endpoint kan op basis hiervan zijn antwoorden aanpassen.

    https://developers.mpluskassa.nl/webhooks/json-definitions/#sender

    48.0.0
  • Nieuwe api call getScheduledMealPlans kan gebruikt worden om de ingeplande menuplanning van een bepaald filiaal in de meegegeven periode op te vragen.

    48.0.0
  • Nieuwe api call getMealplanMomentsConfiguration deze call kan gebruikt worden om de configuratie van de maaltijd labels op te vragen.

    48.0.0
  • Waar mogelijk wordt deliveryAddress en invoiceAddress nu ook gevuld met de desbetreffende gegevens van de gekoppelde relatiekaart.

    48.0.0
  • Nieuwe API-functie saveGiftcards waarmee je de reference (Referentie) van een cadeaukaart kunt bijwerken.

    48.0.0
  • De functies getGiftcards en getGiftcard retourneren nu ook de reference (Referentie) van de cadeaukaart.

    48.0.0
  • Twee nieuwe properties IsPosGroup en IsOnlineGroup toegevoegd aan de api calls getPreparationMethodGroups en savePreparationMethodGroup

    47.1.0
  • Probleem opgelost in createOrderV2 waardoor applySalesAndActions altijd FALSE werd als je hem niet meegaf, in plaats van dat hij naar de instelling keek.

    47.1.0
  • getActiveEmployeeList call retourneert nu alleen nog medewerkers die de "Toegang tot android handheld" autorisatie hebben.

    47.1.0
  • Twee nieuwe API calls setRelationPresence en getRelationPresence Met de setRelationPresence call kun je een relatie aanmelden bij een filiaal en optioneel meegeven op welke tafel deze zit. Met de getRelationsPresence kun je de laatst bekende status van de relatie opvragen.

    47.0.2
  • getNutritionalCharacteristics kan nu ook op basis van syncMarker werken.

    Per kaart wordt altijd de complete lijst geretourneerd als kenmerken weggehaald worden komt de kaart dus terug met alle overgebleven kenmerken.

    46.1.0
  • getOverview heeft nu een extra veld bereidingswijze_groepen die de nummers van de gekoppelde bereidingswijzen als json array retourneerd.

    Dit nieuwe veld en multi selectie velden retourneren nu als ze leeg zijn een lege json array ipv een json null waarde.

    47.0.2
  • GKS ondertekening toegevoegd aan deliverOrder(V2) en saveInvoice.

    46.1.0
  • Verbeteringen aan saveButtonLayoutGroupDetails

    • Als de subgroepen rechts stonden werden de knoppen verkeerd opgeslagen of crashte de API.
    • Het is nu ook mogelijk de standaard hoofd- en subgroep op te slaan.
    46.1.0
  • Verhelpt probleem waardoor api kon crashen bij onvoldoende geheugen beschikbaar.

    46.1.0
  • createImageFromUrl functie toegevoegd. Deze voegt een afbeelding toe door hem te downloaden van de opgegeven URL.

    De afbeelding kan ook direct aan artikelen, relaties of medewerkers gekoppeld worden. createImage heeft ook de mogelijkheid gekregen ze direct te koppelen.

    Deze functies kunnen alleen gebruikt worden als het gebruik van de Mplus Image Service geactiveerd is.

    45.4.2
  • Bugfix voor getGiftcards, waardoor je de call nu ook weer kunt uitvoeren zonder cardTypeId.

    45.2.0
  • Bug opgelost in het toepassen van BPE via verscheidene API calls, zoals placeTableOrder.

    45.2.0
  • Via placeTableOrder kunnen nu ook externe EFT transactiedetails doorgegeven worden, via eftTransactionDetails.

    45.2.0
  • getTableOrderCourseListV3 heeft nu de eigenschappen:

    • requestedAt
    • isTableSet
    • tableSetAt
    • isWineServed
    • wineServedAt
    45.2.0
  • Dealers

    Bij het maken van een kassabon werd het EJ al beschreven voordat de betalingen gekoppeld waren, daardoor ontbraken de betalingen in het EJ. Ook werd een aanbetaling van een bestelling nog totaal niet naar het EJ geschreven.

    Alleen bij GKS van toepassing
    51.1.0
  • Extra veld quantityOfPackagesOrdered toegevoegd aan de getPurchaseOrder en getPurchaseOrderV2 api calls

    47.0.2
  • De api calls die een ns__Address object teruggeven kunnen nu ook een extra veld label bevatten

    47.0.2
  • De api call 'saveButtonLayoutGroupDetails' geeft nu de nieuwe of aangepaste 'buttonLayoutGroupId' terug.

    46.0.1
  • getOverview kan nu virtueel componentenveld ophalen welke gevuld met een array van json objecten met informatie over de componenten.

    49.1.0
  • changeTableProperty kan nu de subTableCount instellen

    49.1.0
  • Bij reconnect pogingen na het verliezen van een werkende database verbinding, worden deze pogingen niet gelogd. Dit voorkomt dat de logs vol geschreven worden met de zelfde meldingen. Er wordt wel gelogd op welk moment de verbinding verloren is en wanneer deze weer terug is.

    48.1.3
  • getTableListV3 geeft nu ook de relatie terug wanneer deze aan een tafel gekoppeld is zonder dat er nog artikelen op geboekt zijn.

    48.0.0
  • De getCurrentSyncMarkers en getCurrentSyncMarkersV2 geven nu ook de preparationMethodGroupSyncMarker, articleNutritionalCharacteristicsSyncMarker en relationNutritionalCharacteristicsSyncMarker terug.

    48.0.0
  • De api call getCardCategories geeft nu ook door of de ingestelde categorie een vip categorie is (isVipGroup).

    48.0.0
  • De api call getOverviewFields bevat nu 2 extra velden in de response containsPersonalData en showInInfoPopup

    48.0.0
  • De functie createOrder(V2) retourneert nu ook het orderId van een evt. reeds bestaande extOrderId. Die hoef je dan dus niet zelf apart op te zoeken met findOrder.

    48.0.0
  • getPreparationMethodGroups kan nu aangeroepen worden met een syncMarker in de request. Hij zal op volgorde van syncMarker de groepen vanaf de opgegeven syncMarker retourneren en niet meer groupen dan limit.

    Zonder syncMarker retourneerd hij alle niet verwijderde groepen. Met syncMarker worden ook verwijderde groepen geretourneerd te herkennen aan deletedOn. De call geeft nu ook buttonColour terug met de kleuren die ingesteld zijn in de qline.

    savePreparationMethodGroup kan nu ook kleuren opslaan. Als buttonColour of translation niet meegegeven worden dan blijft bij bestaande items die inhoud ongewijzigd en nieuwe items krijgen standaard grijze kleur.

    47.0.2
  • De API vereist dat als er een entryBranchNumber wordt meegegeven er ook een workplaceNumber wordt meegegeven.

    Vereist aandacht bij installatie
    45.4.2
  • getVatGroupList uitbreiding en documentatie.

    Gedocumenteerd dat hij de huidige tarieven voor alle filialen retourneerd en dat hij nooit de bedrag velden zal vullen.

    De landcode van het filiaal toegevoegd en het accountNumber wordt nu gevuld.

    46.1.0
  • createOrder doet nu ook GKS ondertekening als de GKS module aanstaat.

    Verder ook bij de diverse order varianten gecontroleerd dat er correct transacties gebruikt worden zodat een order niet zonder ondertekening opgeslagen kan worden. Wanneer de GKS ondertekening mislukt wordt dit gelogd.

    45.4.2
  • Dealers

    De placeTableOrder heeft nu een extra parameter bpeAccordationEmployeeNumber hier geef je het medewerker nummer op dat de BPE geaccordeerd heeft. Het BPE budget van deze medewerker wordt dan gebruikt.

    50.0.0
  • Dealers

    Mogelijkheid om naar A4 te printen.

    LETOP de printers moeten ingesteld worden met een qline die op de zelfde computer draait als de api.

    45.3.0
  • De api call 'SaveButtonLayoutGroupDetailsResponse' gaat nu goed om met de property 'isTableComment'

    Dealers

    Lost probleem op dat knop na wijziging in online opeens een Tafelopmerking werd.

    46.0.1
  • getOverview retourneerd nu de bereidingswijze_groep nummers in de juiste volgorde.

    47.1.3
  • getOverview retourneerd nu de bereidingswijze_groep nummers in de juiste volgorde.

    49.1.1
  • setStock heeft nu verbeterde validatie waardoor hij niet meer OK geeft bij ontbrekende input maar duidelijk meld wat er mis is.

    48.2.1
  • Verhelp probleem dat getOverview crasht als hij BTW tarief voor een artikel niet kan vinden.

    48.2.1
  • Verhelpt probleem dat getOverviewFields een numericPrecision van 14 retourneerde voor velden met het type DATA-TYPE-STRING

    48.2.1
  • De functie createRelation in combinatie met condenseCombinedInvoice werkt nu goed.

    48.2.1
  • Wanner getPreparationMethodGroups met een syncMarker werd aangeroepen miste voor sommige groepen de elementen.

    48.1.3
  • De functie getPackingSlips retourneert nu altijd alleen echte pakbonnen, en geen uitgiftes meer. Voorheen was het mogelijk om ook uitgiftes op te vragen als je niet filterde op syncMarker.

    48.0.0
  • payTableOrder mislukte als het om een splitsing ging, de Android bestel app had hier last van.

    47.1.2
  • De verschillendegetOrders, getReceipts, getInvoices calls (die meerdere orders/kassabonnen/facturen inlezen) gaven andere totalen in de bereidingswijzen terug dan de calls die enkele tegelijk inlezen.

    Het gedrag van de "meervoudige" calls is nu gelijkgetrokken aan het gedrag van de "enkelvoudige" calls.

    Omdat sommige koppelingen mogelijk wel uitgingen van de foute resultaten, kun je via een speciale header (MPLUS-RETURN-COMBINED-PREPARATION-LIST) het oude gedrag weer activeren.

    48.0.0
  • Foutmelding verholpen die kon voorkomen bij het queuen van een verkoop order voor een slave kassa.

    48.0.0
  • Als je via savePurchaseOrder(V2) of savePurchaseDelivery(V2) een bestaande inkoopopdracht of levering bijwerkt, dan blijven de niet-meegegeven eigenschappen, zoals besteleenheid of gekozen uitvoering, nu bewaard.

    48.0.0
  • getButtonLayoutGroupDetails retourneert nu correcte posities voor subgroepen met meerdere "rijen" die aan de rechterkant staan.

    Dit verhelpt ook problemen met het opslaan van snelknoppen in online omdat saveButtonLayoutGroupDetails deze foute data niet accepteerd.

    Voorheen werden de coördinaten uitgerekend alsof de subknoppen boven de layout stonden. Deze aanpassing heeft een minimale kans dat de subgroepen op de Android handheld nu iets anders staan. Dit zal alleen gebeuren als ze meerdere subgroep rijen hebben, deze rechts staan en het aantal artikelknop rijen niet gelijk is aan het aantal artikelknop kolommen.

    48.0.0
  • Strictere validatie van row en column in saveButtonLayoutGroupDetails zodat het duidelijk gemeld kan worden aan de aanroeper wanneer deze verkeerde coordinaten meegeeft.

    LETOP: de row en column van hoofd en subgroepen zijn altijd alsof deze bovenaan staan.

    48.0.0
  • Als je op de plek van een decimal string een verkeerd geformatteerde waarde meegeeft, dan krijg je dat nu netjes terug gemeld in de response. Voorheen kreeg je dan gewoon geen reactie meer.

    47.1.0
  • Als je getOrders aanroept met een syncMarker, dan wordt deze nu altijd gebruikt. Ook als de waarde 0 is. Dit voorkomt dat een eerste sync die je (per ongeluk) met 0 ipv. 1 aanroept, gelijk een resultaat van álle orders probeert te retourneren.

    47.1.0
  • Vrije voorraad is nu altijd gebaseerd op dezelfde formule, namelijk aantal minus verkooporder minus interfiliale opdracht. Dit zorgt voor correcte vrije voorraad bij de getStock functie.

    47.1.0
  • Tweede bestelling voor een keukenbon zal de bestelling niet meer naar de prullenbak sturen.

    46.1.1
  • Bug fix voor de melding database error on server bij de volgende API calls getCurrentTableOrders, getInvoices, getPackingSlips.

    47.0.4
  • In een aantal plaatsen werd alleen een eventuele originele prijs inclusief BTW overgenomen maar werd het genegeerd als de exclusieve was opgegeven.

    47.1.0
  • De getOverview gaf een foutmelding wanneer alleen de brutoprijs of alleen de verkoopprijs werd opgevraagd.

    47.0.3
  • Wanneer een medewerker geen gekoppelde autorisatie groepen heeft gaf de GetEmployeeAuthorizationGroups call een lijst van alle filialen terug, nu geeft die dan niks terug.

    47.1.0
  • Als je savePurchaseDeliveryV2 aanroept met een fromPurchaseOrder, dan heb je nu niet meer het probleem dat "In order" onterecht blijft ophogen.

    47.1.0
  • Sommige calls gaven geen foutmeldingen terug als je invoer niet klopte, in plaats daarvan bleef de call hangen.

    Voorbeeld hiervan was bijv. savePurchaseDeliveryV2 die geen foutmeldingen gaf als je bijv. een onbekend relationNumber opgaf.

    47.1.0
  • Het meegeven van een onbekend medewerkernummer in de Mplus-Employee header zorgt niet meer voor een foutmelding in de API.

    47.0.2
  • De functie sendMessage geeft geen foutmelding meer als je een onbekend werkpleknummer (terminalNumber) opgeeft.

    47.0.2
  • Fixes voor gevallen waar de sync_marker van de artikelen niet altijd ge-update werden.

    • multi selectie velden zoals de categorieën (ook bij medewerkers en relaties)
    • gekoppelde afbeeldingen (ook bij medewerkers en relaties)
    • uitvoeringen
    • gekoppelde bereidingswijze groepen

    Over het algemeen ging het wel goed als je deze dingen aanpaste via bewerken van een artikelkaart maar niet via andere routes.

    47.0.2
  • getArticleGroup en getArticleGroupChanges geven nu ook informatie over verwijderde groepen.

    Bij getArticleGroup is het hiervoor wel nodig om een syncMarker mee te geven. Bevat tevens diverse performance verbeteringen.

    47.0.2
  • Een tegelijkertijd uitgevoerde placeTableOrder op dezelfde tafel zal nu niet meer veroorzaken dat de laatste binnenkomende bestelling de eerdere weer laat verdwijnen.

    47.0.2
  • Problemen met het splitsen van tafels.

    Betreft zowel de " relation number does not exist" melding als de onterechte melding "U kunt alleen maar splitsen van een tafel naar een andere tafel".

    46.1.0
  • saveOrder probleem opgelost dat ervoor zorgde dat een meegegeven prijs niet toegepast werd.

    45.5.0
  • saveOrder probleem opgelost dat ervoor zorgde dat een meegegeven prijs niet toegepast werd.

    46.1.0
  • Fix dat versie 46.0.0. database schema 45 verwachte.

    46.0.1
  • Verhelp probleem met getProduct waardoor de course van een article voor een paar velden foutieve data bevatte.

    45.4.2
  • Verhelp probleem met getProduct waardoor de course van een article voor een paar velden foutieve data bevatte.

    44.1.2
  • Verhelp probleem met getProduct waardoor de course van een article voor een paar velden foutieve data bevatte.

    42.2.6
  • Verhelp probleem met getProduct waardoor de course van een article voor een paar velden foutieve data bevatte.

    43.4.2
  • Lost probleem op waardoor onder andere saveOrder de prijzen kon resetten naar de prijs van de artikelkaart.

    45.3.0
  • Bug opgelost in het filteren op articleNumber via getPurchaseOrders en getPurchaseDeliveries.

    45.2.0
  • updateBatch zal nu bij het wijzigen van het autorisatie profiel van een medewerker de autorisaties van de medewerker ook updaten voor zover de medewerker die opgegeven is met de Mplus-Employee header hiervoor rechten heeft.

    45.3.0
  • Wanneer er meer dan één custom field in de updateRelation meegegeven was werd alleen de eerste bijgewerkt. Nu zal die ze allemaal bijwerken Hetzelfde probleem was aanwezig in de createArticle, createRelation en createEmployee calls

    45.0.6
  • Wanneer je via een handheld een tweede menu toevoegde aan een tafel, dan werd de berekende toeslag/korting van het eerste menu vergeten. Dit zal nu goed onthouden worden.

    45.0.6