ECLI:NL:GHAMS:2017:200

Gerechtshof Amsterdam

Datum uitspraak
24 januari 2017
Publicatiedatum
27 januari 2017
Zaaknummer
200.188.850/01
Instantie
Gerechtshof Amsterdam
Type
Uitspraak
Rechtsgebied
Civiel recht
Procedures
  • Hoger beroep
Vindplaatsen
  • Rechtspraak.nl
AI samenvatting door LexboostAutomatisch gegenereerd

Tekortkoming in de nakoming van een overeenkomst tot ontwikkeling van software voor mobiele applicaties

In deze zaak gaat het om een geschil tussen App Your Service B.V. (AYS) en een opdrachtgever over de ontwikkeling van een Android- en een iOS-app. De opdrachtgever heeft AYS in gebreke gesteld wegens het niet tijdig leveren van de apps en heeft de overeenkomst ontbonden. De kantonrechter heeft de vordering van de opdrachtgever tot terugbetaling van de door hem betaalde bedragen toegewezen. AYS is in hoger beroep gegaan tegen deze beslissing. Het hof heeft vastgesteld dat AYS tekort is geschoten in de nakoming van de overeenkomst, omdat de apps niet tijdig en niet conform de afgesproken specificaties zijn geleverd. Het hof oordeelt dat de opdrachtgever de overeenkomst rechtsgeldig heeft ontbonden en dat AYS verplicht is tot terugbetaling van de ontvangen bedragen. Het hof bekrachtigt het vonnis van de kantonrechter en wijst AYS in de kosten van het geding in hoger beroep.

Uitspraak

GERECHTSHOF AMSTERDAM

afdeling civiel recht en belastingrecht, team I
zaaknummer : 200.188.850/01
zaak-/rolnummer rechtbank Amsterdam : 4238597\CV EXPL 15-15944
arrest van de meervoudige burgerlijke kamer van 24 januari 2017
inzake
APP YOUR SERVICE B.V.,
gevestigd te Amsterdam,
appellante,
advocaat: mr. W.F. Dammers te Tilburg,
tegen:
[geïntimeerde],
wonend te [woonplaats] ,
geïntimeerde,
advocaat: mr. A.P.M. van der Westerlaken te Amsterdam Zuidoost.

1.Het geding in hoger beroep

Partijen worden hierna AYS en [geïntimeerde] genoemd.
AYS is bij dagvaarding van 10 maart 2016 in hoger beroep gekomen van een vonnis van de rechtbank Amsterdam, sector kanton (hierna: de kantonrechter), van 29 januari 2016, gewezen tussen [geïntimeerde] als eiser en AYS als gedaagde.
Partijen hebben daarna de volgende stukken ingediend:
- memorie van grieven;
- memorie van antwoord, met producties;
- akte uitlating producties.
AYS heeft geconcludeerd dat het hof het bestreden vonnis zal vernietigen en de vorderingen van [geïntimeerde] alsnog zal afwijzen, met – uitvoerbaar bij voorraad – veroordeling van [geïntimeerde] in de kosten van het geding in beide instanties.
[geïntimeerde] heeft geconcludeerd dat het hof het bestreden vonnis zal bevestigen, met veroordeling, uitvoerbaar bij voorraad, van AYS in alle kosten van het hoger beroep.
Partijen hebben in hoger beroep bewijs van hun stellingen aangeboden.
Ten slotte is arrest gevraagd.

2.Feiten

De kantonrechter heeft in het bestreden vonnis onder 1.1. tot en met 1.10. de feiten vastgesteld die hij tot uitgangspunt heeft genomen. Deze feiten zijn in hoger beroep niet in geschil en dienen derhalve ook het hof als uitgangspunt. Samengevat en waar nodig aangevuld met andere feiten die als enerzijds gesteld en anderzijds niet of onvoldoende betwist zijn komen vast te staan, komen de feiten neer op het volgende.
2.1.
[geïntimeerde] en AYS hebben op 6 juni 2014 twee overeenkomsten gesloten
waarbij AYS de software voor een iOS-app en een Android-app zou ontwikkelen
voor [geïntimeerde] .
2.2.
In de overeenkomst betreffende de Android-app is opgenomen dat de app zal worden verstrekt binnen 7 tot 10 weken en dat na 4 weken wekelijks een testversie beschikbaar zal worden gesteld aan [geïntimeerde] . De overeengekomen kostprijs voor de Android-app is € 13.300,-.
2.3.
Op 10 juni 2014 zijn partijen een onderhoudscontract (ook wel aangeduid als ‘strippenkaart’) overeengekomen voor de apps. Blijkens de op die datum ondertekende offerte van 6 juni 2014 had dit onderhoudscontract betrekking op ‘onderhoud van de Energy app’, ‘Pocket Energy app (IOS)’, ‘Pocket Energy app (PHP)’ en ‘Pocket Energy app ANDROID’. De eerste 40 uren van benodigd onderhoud kosten in totaal € 3.200,-.
2.4.
Op deze overeenkomsten zijn de door AYS gehanteerde algemene voorwaarden van toepassing. Deze luiden, voor zover van belang, als volgt:
“(…)
Art. 14 Termijnen
14.1
Leverancier spant zich er redelijkerwijs voor in de door hem genoemde of tussen partijen overeengekomen al dan niet uiterste (leverings)termijnen en/of (oplever)data zoveel mogelijk in acht te nemen. Door leverancier genoemde of tussen partijen overeengekomen tussentijdse (oplever)data, gelden steeds als streefdata, binden de leverancier niet en hebben steeds een indicatief karakter.
14.2
Indien overschrijding van enige termijn dreigt, zullen leverancier en klant in overleg treden om de gevolgen van de overschrijding voor de verdere planning te bespreken.
14.3
In alle gevallen – derhalve ook indien partijen een uiterste (leverings)termijn of (oplever)datum zijn overeengekomen – komt leverancier wegens tijdsoverschrijding eerst in verzuim nadat klant hem schriftelijk in gebreke heeft gesteld waarbij klant leverancier een redelijke termijn stelt ter zuivering van de tekortkoming (op het overeengekomene) en deze redelijke termijn is verstreken. De ingebrekestelling dient een zo volledig en gedetailleerd mogelijke omschrijving van de tekortkoming te bevatten, opdat leverancier in de gelegenheid wordt gesteld adequaat te reageren.
(…)
14.5
Leverancier is niet gebonden aan een al dan niet uiterste (oplever)datum of (leverings)termijn als partijen een wijziging van de inhoud of omvang van de overeenkomst (meerwerk, wijziging van specificaties etc.) of een wijziging van de aanpak van de uitvoering van de overeenkomst zijn overeengekomen, of indien klant zijn verplichtingen die voortvloeien uit de overeenkomst niet, niet tijdig of niet volledig nakomt. (…)
Art. 15 Ontbinding en opzegging van de overeenkomst
15.1
Aan elk der partijen komt de bevoegdheid tot ontbinding van de overeenkomst wegens een toerekenbare tekortkoming in de nakoming van de overeenkomst slechts toe indien de andere partij, steeds in alle gevallen na een zo gedetailleerd mogelijke schriftelijke ingebrekestelling waarbij een redelijke termijn gesteld wordt voor zuivering van de tekortkoming, toerekenbaar tekortschiet in de nakoming van wezenlijke verplichtingen uit de overeenkomst. (…)
15.2
Indien klant op het moment van de ontbinding al prestaties ter uitvoering van de overeenkomst heeft ontvangen, zullen deze prestaties en de daarmee samenhangende betalingsverplichtingen geen voorwerp van ongedaanmaking zijn, tenzij klant bewijst dat leverancier ten aanzien van het wezenlijke deel van die prestaties in verzuim is. Bedragen die leverancier vóór de ontbinding heeft gefactureerd in verband met hetgeen hij ter uitvoering van de overeenkomst reeds naar behoren heeft verricht of geleverd, blijven met inachtneming van het in de vorige volzin bepaalde onverminderd verschuldigd en worden op het moment van de ontbinding direct opeisbaar.
(…)
Art. 21 Uitvoering
21.1
Leverancier zal zich naar beste kunnen inspannen zijn diensten met zorg uit te voeren, in voorkomend geval overeenkomstig de met klant schriftelijk vastgelegde afspraken en procedures. Alle diensten van leverancier worden uitgevoerd op basis van een inspanningsverbintenis, tenzij en voor zover in de schriftelijke overeenkomst leverancier uitdrukkelijk een resultaat heeft toegezegd en het desbetreffende resultaat tevens met voldoende bepaaldheid in de overeenkomst is omschreven.
(…)
Art. 30 Acceptatie
30.1
Indien partijen geen acceptatietest zijn overeengekomen, aanvaardt klant de programmatuur in de staat waarin deze zich op het moment van aflevering bevindt (‘as is, where is’), derhalve met alle zichtbare en onzichtbare fouten en gebreken, onverminderd de verplichtingen van leverancier op grond van de garantieregeling van artikel 34. In voornoemd geval zal de programmatuur bij de aflevering (…) gelden als zijnde geaccepteerd door klant.
(…)
Art. 36 Specificaties en ontwikkeling van programmatuur/website
(…)
36.3
Indien partijen een ontwikkelmethode gebruiken die zich kenmerkt door het uitgangspunt dat het ontwerpen en/of ontwikkelen van (onderdelen van) de programmatuur of website op iteratieve wijze geschiedt (…), aanvaarden partijen dat de werkzaamheden bij aanvang niet zullen worden verricht op basis van volledige of volledig uitgewerkte specificaties en tevens dat specificaties, welke al dan niet bij aanvang van de werkzaamheden zijn overeengekomen, tijdens de uitvoering van de overeenkomst in goed overleg kunnen worden aangepast met inachtneming van de projectaanpak die bij de desbetreffende ontwikkelmethode behoort. (…)
36.4
Indien partijen gebruik maken van een ontwikkelmethode zoals bedoeld in artikel 36.3, dan is het bepaalde in artikel 30.1, artikel 30.4 tot en met 30.8 en artikel 34.1 niet van toepassing. Klant aanvaardt de programmatuur en/of website in de staat waarin deze zich op het moment van het einde van de laatste ontwikkelfase bevindt (‘as is, where is’). Leverancier is na de laatste ontwikkelfase niet gehouden tot herstel van fouten, tenzij schriftelijk uitdrukkelijk anders overeengekomen. (…)”
2.5.
[geïntimeerde] heeft ten minste € 20.500,- inclusief btw aan AYS voldaan ter zake de twee apps, het onderhoud en aanvullend aangekocht onderhoud.
2.6.
Bij brieven van 21 augustus 2014 heeft [geïntimeerde] aan AYS gevraagd om testversies van de Android-app en de iOS-app. [geïntimeerde] heeft verder in die brieven geschreven:
“(…) Betreft: Ingebrekestelling wegens niet leveren van [versie van de app, hof]
‘(…) In de opdracht d.d. 6 juni 2014 is overeengekomen dat er na 4 weken en sindsdien elke week een oplevering van een tussentijdse versie zou plaatsvinden. Ondanks herhaaldelijk verzoek (…) is de oplevering hiervan uitgebleven. (…) Bij het verstrekken van de opdracht hebben wij gewezen op het grote belang van het leveren van de App op uiterlijk 1 augustus 2014. Nu u daartoe kennelijk niet in staat bent geweest, en ook niet op de later overeengekomen data 10 en daarna 18 augustus, stellen wij u hierbij in gebreke betreffende de levering van deze App.
Als reden voor niet tijdig leveren heeft u aangegeven te laat begonnen te zijn met de werkzaamheden. Daarnaast geeft u aan in de email van 8 augustus dat [ [geïntimeerde] – hof] php code voor de inlogcode niet heeft aangeleverd. Buiten dat hiervan tot dat moment nooit melding is gemaakt, was deze code ook reeds aanwezig (...).
Wij geven u de gelegenheid ter zuivering van deze tekortkoming om deze App, (…) uiterlijk 4 september 2014 aan ons op te leveren volgens overeengekomen condities (...).”
2.7.
Op 28 september 2014 zijn partijen een nieuwe overeenkomst aangegaan. Daarin zijn partijen voor zover thans relevant het volgende overeengekomen.
“App Your Service zal ervoor zorg dragen dat uiterlijk 10 oktober 2014 de applicatie in iOS versie (…) en 23 oktober in Android versie, volledig volgens specificatie zoals overgekomen designs, priolijst en opmerkingenlijst, aangeboden is ter review bij Apples Appstore en Googles Playstore. Daaraan voorafgaand zal App Your Service een volledige testversie (volgens specificatie zoals overeengekomen
designs,
priolijsten
opmerkingenlijst) voor de iOS versie op 1 Oktober en voor de Android versie op 15 Oktober bij [ [geïntimeerde] – hof] opleveren. Op basis van deze testversies wordt een overzicht gemaakt van nog te herstellen/aan te vullen werk welke uitgevoerd wordt voorafgaand aan het aanbieden ter review bij Apple en Google.
Ten minste, maar daartoe niet beperkt, dienen daarvoor de volgende werkzaamheden te worden verricht:
 Toevoegen stopwatchfunctie
 Toevoegen 20 standaardsjablonen
 Aanpassen herstelfunctie (php is geleverd door Pocket Coaches)
(…)
Vanaf indiening bij Google/Apple – mits de applicatie ten tijde van de indiening alle overeengekomen functionaliteit bevat – start een garantieperiode van 2 maanden met betrekking tot bugfixing. App Your Service garandeert dat alle geconstateerde bugs zullen worden verholpen binnen 4 weken na constatering. (…)
Voor iedere dag dat de applicatie na 1 oktober 2014 met betrekking tot de update van de iOS versie en 15 oktober met betrekking tot de Android versie niet beschikbaar is gesteld voor de Appstore en/of de Playstore, ontvangt [ [geïntimeerde] – hof] een korting van 80 euro per werkdag per platform, met een maximum van 3.000 euro per platform, direct te verrekenen met openstaande cq te ontvangen facturen.
Deze kortingen laten onverlet de overige rechten die [ [geïntimeerde] – hof] toekomen op basis van de overeenkomst en de wet, waaronder in ieder geval begrepen – maar niet beperkt tot – het recht op schadevergoeding.”
2.8.
De software van de iOS-app is in oktober 2014 door AYS aan [geïntimeerde] verstrekt. [geïntimeerde] heeft die software laten onderzoeken door twee andere softwareontwikkelaars. Beiden hebben gerapporteerd dat de software ontoereikend
is om de iOS-app op te laten nemen in de Apple’s Appstore. De rapporten bevatten
gedetailleerde suggesties voor verbeteringen.
2.9.
Onder meer bij e-mails van 28 oktober 2014, 21 november 2014, 23 november 2014, 1 december 2014, 12 december 2014, 22 december 2014 en 5 januari 2015 heeft [geïntimeerde] klachten geuit over het functioneren van de apps. De e-mail van 5 januari 2015 betreft de iOS app. [geïntimeerde] schrijft onder meer:
“(…) Er is een issue met de iOS app op iphone 6 plus. Daar kan niet verder dan de info slides op het begin gekomen worden. De schermen sluiten niet aan op het formaat van het scherm, zie de schermafbeeldingen.
- Wanneer je lange tijd evaluaties niet invult en de notificaties negeert, dan crashed de app, ook nadat je hem afgesloten hebt.
- Als je vergeet de stopwatch uit te zetten kun je hem op een gegeven moment niet meer gebruiken (…)
- Wanneer je een herhalende activiteit op een dag naar keuze wijzigt, dan wijzigt de hele reeks en niet alleen die specifieke activiteit. (…)”
2.10.
Bij e-mail van 9 februari 2015, met onderwerp ‘Nieuwe versie Android’, heeft [geïntimeerde] aan AYS geschreven:
“(…) Ik heb de app een paar dagen getest op twee toestellen. Er mankeert op beide toestellen een hoop aan, de app is zo niet bruikbaar en nog ver weg van de store. Ik heb de feedback in de bijlage toegevoegd, dit is niet alles, maar wat ik tegenkwam tot ik het opgaf. Ook heb ik wat screenschots toegevoegd. De grootste problemen zijn het niet goed functioneren van de notificaties, op het ene toestel wel, het ander niet. Ook het toevoegen van activiteiten loopt niet soepel. Op het ene toestel worden ze niet getoond in de dagweergave, het pinchen werkt niet en een hoop slordigheden die niet overeenkomen met de iOS versie. Daarnaast werken de FLOW, herstel en stabiliteit niet correct.
Met betrekking tot de iOS, hoe gaat het met het oplossen van de bugs? Aan welke precies werken jullie nu?”
2.11.
Bij e-mail van 15 april 2015 heeft [geïntimeerde] aan AYS bericht:
“(…) Inmiddels heb ik de laatste versie van Android die ik ontvangen heb uitgebreid getest. (…) Buiten dat de app om de haverklap crashed, voldoet deze ook op een hoop andere punten niet aan wat wij overeengekomen zijn. In de bijlage heb ik een lijst toegevoegd met zaken die niet werken zoals zou moeten. De bijgevoegde screenshots zeggen eigenlijk al genoeg. Volgens onze overeenkomst had de android versie reeds in Oktober opgeleverd moeten zijn. We zijn nu weer 5 maanden verder en van een bruikbare en verkoopbare app is geen sprake. Jullie hebben tot donderdag 23 april 15.00 uur om een kwalitatief goede en stabiele android versie op te leveren (…). Wanneer dit niet gebeurd voel ik mij niet langer betrokken bij onze overeenkomst (…).”
Aan deze email was een lijst gehecht met een specificatie van de verschillende klachten.
2.12.
[geïntimeerde] heeft op 1 mei 2015 aan AYS geschreven:
“(…) Ondanks mijn bericht van 15 april 2015 (…) heb ik nog steeds niets ontvangen wat werkt. (…) Ik heb er geen vertrouwen meer in dat jullie de overeenkomsten wel juist gaan nakomen. Zoals ik al schreef (…) acht ik mij dan ook niet langer gebonden aan de overeenkomst en wil in plaats daarvan een deel van het door mij betaalde geld terug. (…).
Het gaat dan om:
- 70% (...) voor de Android versie (…): Eur 11265,10;
- strippenkaart extra uren (…): Eur 1355,20;
- andere strippenkaart extra uren ter hoogte van Eur 1452;
- extra uren als afgesproken in vernieuwde overeenkomst (…) ter hoogte van
Eur 605 ex BTW
Dat is een totaalbedrag van Eur 14677,30. (…)”
2.13.
Op 11 september 2015 heeft AYS opnieuw een Android-versie aan [geïntimeerde] gestuurd. Bij email van 14 september 2015 heeft [geïntimeerde] deze versie geweigerd.

3.Beoordeling

3.1.
[geïntimeerde] vordert dat AYS – uitvoerbaar bij voorraad – wordt veroordeeld tot betaling van een bedrag van € 14.677,30 aan hoofdsom, te vermeerderen met wettelijke rente, de kosten van beslaglegging ten bedrage van € 673,99 en de na het vonnis ontstane kosten, eveneens te vermeerderen met wettelijke rente. [geïntimeerde] legt aan zijn vordering kort gezegd ten grondslag dat AYS is tekortgeschoten in de nakoming van de verplichtingen uit de overeenkomst betreffende het ontwikkelen van de Android- en de iOS-app en de serviceabonnementen. [geïntimeerde] betoogt dat hij de overeenkomsten heeft ontbonden en vordert terugbetaling van hetgeen hij op grond van deze overeenkomsten aan AYS heeft betaald.
De kantonrechter heeft de vorderingen van [geïntimeerde] toegewezen. Tegen deze beslissing en de daaraan ten grondslag gelegde motivering komt AYS op met 23 grieven. Daarmee wordt het geschil in volle omvang aan het hof voorgelegd. Het hof overweegt dienaangaande als volgt.
3.2.
Om te beoordelen of AYS in haar verplichtingen is tekortgeschoten dient eerst te worden vastgesteld of op AYS een inspannings-, dan wel een resultaatsverplichting rustte. De toepasselijke algemene voorwaarden nemen tot uitgangspunt dat alle diensten van AYS worden uitgevoerd op basis van een inspanningsverbintenis, tenzij en voor zover in de schriftelijke overeenkomst een uitdrukkelijk resultaat is toegezegd dat met voldoende bepaaldheid in de overeenkomst is omschreven (artikel 21.1 algemene voorwaarden).
Bij de beantwoording van de vraag of partijen zijn afgeweken van het uitgangspunt in de algemene voorwaarden dat op AYS een inspanningsverbintenis rust, is beslissend hetgeen partijen op 28 september 2014 zijn overeengekomen. Deze overeenkomst bouwt voort op de overeenkomsten van 6 juni 2014 waarin partijen nauwkeurig de specificaties waren overeengekomen waaraan de apps moesten voldoen. Met de zinsnede ‘volledig volgens specificatie zoals overeengekomen
designs, priolijsten
opmerkingenlijst’ is onmiskenbaar gedoeld op de reeds op 6 juni 2014 overeengekomen specificaties. Bovendien bevat de overeenkomst van 28 september 2014 met de vijf ‘bulletpoints’ voldoende nauwkeurige specificaties waaraan het resultaat diende te voldoen. Verder bepaalt de overeenkomst op welke data (testversies van) de apps moeten worden opgeleverd of ter ‘review’ moesten worden aangeboden aan Apple Appstore en Google Playstore. De overeenkomst verbindt financiële consequenties aan het niet halen van deze data. Aldus moeten partijen de prestaties waartoe AYS zich in de overeenkomst van 28 september 2014 heeft verbonden redelijkerwijs moeten begrijpen als resultaatsverbintenissen.
Dit brengt tevens mee dat partijen niet, zoals door AYS wordt betoogd, een zogenaamde ‘iteratieve ontwikkelmethode’ als bedoeld in artikel 36.3 algemene voorwaarden zijn overeengekomen. Reeds op deze grond faalt het betoog van AYS dat [geïntimeerde] conform artikel 36.4 de apps heeft aanvaard in de staat waarin deze zich op het moment van de laatste ontwikkelfase bevindt (‘as is, where is’). Deze bepaling is immers slechts van toepassing op gevallen waarin is gekozen voor een dergelijke iteratieve ontwikkelmethode.
3.3.
Hoewel de in de overeenkomst vermelde termijnen klaarblijkelijk als fatale termijn zijn beoogd, valt uit de gang van zaken na het verstrijken van deze termijnen af te leiden dat partijen aan deze fatale termijnen niet hebben vastgehouden. Dit brengt mee dat AYS de door haar toegezegde prestatie binnen redelijke termijn diende na te komen en dat verzuim aan haar zijde niet eerder kon intreden dan nadat zij in gebreke was gesteld.
3.4.
In aanmerking genomen dat het hier gaat om een relatief eenvoudig ICT-project is het hof van oordeel dat de overeengekomen prestaties op 15 april 2015 opeisbaar waren. Op deze datum heeft [geïntimeerde] per e-mail zijn klachten over de android-app geuit (zie 2.11). De klachten worden in de bijlage bij deze e-mail gespecificeerd. [geïntimeerde] heeft AYS de gelegenheid gegeven om de problemen uiterlijk op 23 april 2015 te verhelpen. Gelet op de voortdurende klachten over het gebrekkig functioneren van de apps kon deze termijn als redelijk worden aangemerkt. In deze e-mail kondigt [geïntimeerde] verder aan dat hij zich, indien niet alsnog binnen deze termijn wordt nagekomen, niet langer aan de overeenkomst gebonden acht. Aldus voldoet deze e-mail aan de eisen die aan een ingebrekestelling mogen worden gesteld.
3.5.
[geïntimeerde] heeft betoogd dat AYS niet binnen deze termijn alsnog de overeengekomen prestatie heeft verricht. AYS betwist dit betoog, onder meer met de stelling dat van een wezenlijke tekortkoming geen sprake is. AYS heeft echter niet gemotiveerd betwist dat zij voor het verstrijken van de in de ingebrekestelling vermelde termijn geen android-app heeft afgeleverd die, zoals overeengekomen, ter ‘review’ kon worden aangeboden bij Google Play Store. Aldus is zij niet alsnog haar verplichtingen nagekomen binnen de in de ingebrekestelling vermelde termijn. Daarmee heeft ook niet binnen deze termijn een aflevering als bedoeld in artikel 30.1 algemene voorwaarden plaatsgevonden. AYS komt derhalve ook geen beroep toe op deze bepaling op grond waarvan de klant (indien geen acceptatietest is overeengekomen) de programmatuur aanvaardt in de staat waarin deze zich op het moment van aflevering bevindt (‘as is, where is’).
3.6.
AYS betoogt dat [geïntimeerde] niet heeft voldaan aan zijn ‘klachtplicht’ als bedoeld in artikel 6:89 BW. Dit betoog wordt verworpen. Uit de onder 2.9-2.11 bedoelde e-mails blijkt namelijk dat [geïntimeerde] herhaaldelijk gedetailleerde klachten heeft geuit.
3.7.
AYS betoogt voorts dat geen verzuim is ingetreden, omdat sprake zou zijn van schuldeisersverzuim aan de zijde van Kuijlenberg.
3.7.1.
AYS stelt daartoe vooreerst dat [geïntimeerde] de facturen van 11 augustus 2014 en 11 november 2014 niet heeft betaald. [geïntimeerde] betwist niet dat zij deze facturen niet heeft betaald maar betoogt dat zij deze facturen nog niet verschuldigd was. [geïntimeerde] voert daartoe aan dat het bij de facturen van 11 augustus 2014 ging om betalingsverplichtingen die pas na oplevering opeisbaar waren. Deze stelling vindt steun in de offertes van 6 juni 2014, waarin AYS heeft aangeboden dat de overeengekomen som in gedeelten zou worden gefactureerd. Met betrekking tot de factuur van 11 november 2014 betoogt [geïntimeerde] dat deze dateert van na de overeenkomst van 28 september 2014, terwijl in het licht van de omschrijving in de facturen niet duidelijk is op welke afspraak deze berust. Voor zover AYS haar schuldeisersverzuim baseert op de niet-betaling van deze facturen, heeft zij deze verweren onvoldoende weersproken, zodat haar beroep op schuldeisersverzuim in zoverre faalt.
3.7.2.
Ook de overige gronden die AYS aan het schuldeisersverzuim ten grondslag heeft gelegd worden verworpen. Blijkens de onder 2.9-2.11 aangehaalde e-mails heeft [geïntimeerde] wel degelijk feedback gegeven. De stelling dat [geïntimeerde] in schuldeisersverzuim verkeerde omdat de php-software niet zou zijn verstrekt faalt eveneens. AYS is partij bij de overeenkomst van 28 september 2014 waarin is vermeld dat php-software is geleverd. AYS heeft tegen deze achtergrond haar stelling onvoldoende onderbouwd. Dat geldt te meer nu [geïntimeerde] al op 21 augustus 2014 had geschreven dat de php-software al bij AYS aanwezig was (zie 2.6).
3.7.3.
Het beroep op schuldeisersverzuim wordt daarom verworpen.
3.8.
Het vorenstaande leidt ertoe dat het verzuim aan de zijde van AYS is ingetreden met het verstrijken van de termijn die was vermeld in de e-mail van 15 april 2015. Vanaf dat moment was [geïntimeerde] bevoegd de overeenkomst van 28 september 2014 te ontbinden.
Naar het oordeel van het hof bracht het verzuim ten aanzien van de overeenkomst van 28 september 2014 mee dat ook de daarbij behorende onderhoudscontracten (‘strippenkaarten’) konden worden ontbonden. Tussen deze overeenkomsten bestaat een onlosmakelijke samenhang. De overeenkomst van 28 september 2014 moet worden beschouwd als een wijziging van de overeenkomsten van 6 juni 2014 en strekte tot het ontwerpen van de iOS- en android-apps. De onderhoudscontracten dateerden van 10 juni 2014 en strekten blijkens de offerte van 6 juni 2014 ertoe dat kleine aanpassingen in de reeds opgeleverde iOS- en android-apps konden worden doorgevoerd en dat de apps konden worden bijgewerkt. Deze overeenkomsten veronderstelden derhalve dat de apps reeds waren opgeleverd. Deze onlosmakelijke samenhang en de omstandigheid dat de oplevering van de android-app is uitgebleven rechtvaardigen dat [geïntimeerde] niet slechts de overeenkomst van 28 september 2014, maar ook de daarbij behorende onderhoudscontracten mocht ontbinden (vgl. HR 20 januari 2012, ECLI:NL:HR:2012:BU3162 en hof Den Haag 31 maart 2015, ECLI:NL:GHDHA:2015:1113).
3.9.
Met het e-mailbericht van 1 mei 2015 heeft [geïntimeerde] de overeenkomsten met AYS (schriftelijk) ontbonden. Hij was daarom niet gehouden om latere prestaties van AYS te aanvaarden. Gevolg van de ontbinding is dat partijen de geleverde prestaties over en weer zullen moeten ongedaan maken. Nu op het moment van de ontbinding geen werkende android-app was geleverd, kan die prestatie ook niet worden ongedaan gemaakt. De ontbinding heeft tot gevolg dat AYS het door [geïntimeerde] gevorderde gedeelte van de bedragen die zij van hem heeft ontvangen in verband met het ontwerpen van de android-app dient terug te betalen. De terugbetalingsverplichting betreft tevens de betaalde bedragen voor het onderhoud van de android-app (die immers niet was afgeleverd) en de iOS-app. Wat betreft het onderhoud van de iOS-app overweegt het hof nog dat deze blijkens de door [geïntimeerde] overgelegde rapporten en de onder 2.9 aangehaalde e-mail van 5 januari 2015 evenmin naar behoren functioneerde. Niet kan worden geoordeeld dat de waarde van de uit hoofde van de onderhoudscontracten geleverde prestaties uitstijgt boven het wel betaalde maar niet door [geïntimeerde] teruggevorderde bedrag. AYS is derhalve ook verplicht tot terugbetaling van het door [geïntimeerde] gevorderde gedeelte van de betalingen die hij uit hoofde van de onderhoudscontracten heeft verricht. Het beroep door AYS op artikel 15.2 van de algemene voorwaarden faalt nu AYS ten aanzien van de wezenlijke verplichtingen in verzuim is en zij haar verplichtingen uit de onderhoudscontracten ook niet naar behoren heeft verricht.
3.10.
Op het vorenoverwogene lopen alle grieven stuk. Het vonnis waarvan beroep zal worden bekrachtigd. AYS zal als in het ongelijk gestelde partij worden verwezen in de kosten van het geding in hoger beroep.

4.Beslissing

Het hof:
bekrachtigt het vonnis waarvan beroep;
veroordeelt AYS in de kosten van het geding in hoger beroep tot op heden begroot op € 718,- aan verschotten en € 894,- voor salaris;
verklaart deze veroordeling uitvoerbaar bij voorraad.
Dit arrest is gewezen door mrs. J.M. de Jongh, M. Jurgens en M.J.J. de Bontridder en door de rolraadsheer in het openbaar uitgesproken op 24 januari 2017.