Software Development Agreement
This agreement is made on 7 November 2026 between:
- Harbor Logistics Ltd, of 20 Quay Street, Rotterdam 3011 AB, Netherlands ("the Client"); and
- Lumen Software Studio, of Via Roma 14, 10123 Turin, Italy ("the Developer").
The Client wishes to have custom software built, and the Developer wishes to build it. They agree as follows.
1. The project
1.1 The Developer will design, build and deliver a web application and a mobile app that let dispatchers see the position of every delivery van and let drivers confirm each delivery for the project called "Fleet Tracker" (the "Software"), in line with this agreement and the Specification.
1.2 The work starts on 1 February 2027.
1.3 The Developer will do the work with the skill and care of an experienced professional software developer, using suitably skilled people, and will follow the good practice of its trade for design, testing and security.
2. Specification
2.1 The Software will have these features and meet these requirements (the "Specification").
Live map of vehicles
Delivery confirmation with photo and signature
Daily and monthly reports as CSV
Sign in with email and two-step verification
Works in the latest versions of Chrome, Safari and Firefox, on Android 10 or later and on iOS 16 or later
2.2 The Software will use the following technology.
React front end, Python back end, PostgreSQL database, hosted on the Client's cloud account
2.3 The Specification is the full description of what is to be built. Where it is silent on a detail, the Developer will choose the approach that is reasonable and consistent with the rest of the Software, and will tell the Client of any choice that affects cost, appearance or the way people use the Software. If the Specification is unclear, the Developer will ask the Client before building and not guess.
2.4 Anything that is not in the Specification is outside this agreement. It can be added only through a change under section 4.
3. Milestones, delivery and acceptance
3.1 The work is divided into milestones. The dates below are targets that the Developer will make every reasonable effort to meet. Each milestone has its own fee.
1. Design and prototype: 15 March 2027: 6,000 euros
2. Core features working in a test version: 10 May 2027: 14,000 euros
3. Final version delivered and tested: 30 June 2027: 10,000 euros
3.2 When a milestone is ready, the Developer will deliver it to the Client and tell the Client in writing, with the instructions the Client needs to test it. For software this means access to a test version, and for the final milestone the full source code under section 8.
3.3 The Client will test the deliverable for 10 days from the day it receives it (the "Acceptance Period"), by checking it against the Specification. If it meets the Specification in all important respects, the Client will accept it in writing.
3.4 If the Client finds that it does not meet the Specification, it will say so in writing within the Acceptance Period, describing each fault clearly and, where it can, how to reproduce it. The Developer will correct the faults and deliver again at no extra charge, and the Acceptance Period runs again for the corrected parts. A minor fault that does not stop the Software being used for its purpose is not a reason to refuse acceptance. It will be put on a list and corrected in the usual way under section 12.
3.5 A milestone is also accepted if the Client has not given a written statement of faults by the end of the Acceptance Period, or if it uses the deliverable in live operation.
3.6 If a deliverable fails acceptance a third time for the same fault, the Client may, on written notice, either give the Developer a final reasonable period to correct it, or end this agreement for the part not yet accepted under section 18.
3.7 If the Developer is delayed by something the Client did or did not do (for example late materials or decisions), or by a change under section 4, the dates move by the length of the delay. The Developer will tell the Client of the delay as soon as it knows of it. Otherwise, if a milestone is more than 30 days late, the Client may end this agreement for the part not yet accepted under section 18.
4. Change requests
4.1 Either party may ask for a change to the Specification, the milestones or the dates. The request will be in writing.
4.2 Within five working days the Developer will tell the Client in writing whether the change can be made, how long it will take, what it will cost (at the rate of EUR 95 an hour unless the parties agree a fixed price), and how it affects the dates and other milestones.
4.3 A change takes effect only when both parties have agreed it in writing. Until then the Developer will go on working on the existing Specification. The Developer will not refuse a reasonable change without good reason.
4.4 The Developer may not charge for correcting its own errors, or for work that was already within the Specification.
5. Fees and payment
5.1 The Client will pay the Developer the fixed fee of EUR 30,000 for the Software, in the amounts shown for each milestone in section 3.1.
5.2 The Developer will send an invoice for each milestone when the Client has accepted it under section 3. The Client will pay each invoice within 14 days of receiving it.
5.3 The fee covers all the Developer's work under the Specification. The Client will also pay, but only if it approved them in advance in writing, these expenses.
Third-party licences and app store fees, if approved in advance
5.4 All amounts are exclusive of value added tax, sales tax and similar taxes, which the Client will pay in addition if they are due and the invoice shows them. If the law requires the Client to deduct tax at source, the Client will deduct it, pay it to the authority on time and give the Developer an official receipt.
5.5 A sum not paid on time carries interest at 4% a year above the base rate of the central bank of the country of the currency of payment, from the due date until payment. If the Client does not pay an undisputed invoice within 14 days of a written reminder, the Developer may pause the work until it is paid. The Client will tell the Developer in writing, within the payment period, of any part of an invoice it disputes in good faith, and will pay the rest.
6. What the Client provides
6.1 The Client will give the Developer, on time, the information, materials, access and decisions that the Developer reasonably needs, including the following.
Brand files, a test account on the Client's cloud service, sample delivery data and a decision maker available within two working days
6.2 The Client will name a person who can give the Client's decisions and answer the Developer's questions, and will make that person available.
6.3 The Client promises that it has the right to give the Developer the materials it supplies (the "Client Materials") and that the Developer's use of them for this project will not infringe anyone's rights. The Client keeps all rights in the Client Materials and gives the Developer a non-exclusive licence to use them only to carry out this agreement.
7. Ownership
7.1 The Developer owns the Software until it has been paid in full. When the Client has paid all the fees due for the Software, the Developer assigns to the Client all its rights in the Software that was written specially for the Client under this agreement, including copyright and similar rights, everywhere in the world, with effect from the moment of payment. Where the law does not allow rights to be assigned in this way, the Developer gives the Client an exclusive, perpetual, worldwide, irrevocable, transferable licence to use them, with the right to sublicense, for any purpose. The Developer waives, so far as the law allows, any moral rights in the Software, and will not enforce them against the Client.
7.2 The Developer will sign any document and do whatever else is reasonably needed to make the Client's ownership effective and to register it where that is useful.
7.3 The Client owns the Client Materials and all data that the Software holds or produces for the Client.
7.4 The Developer keeps all rights in its pre-existing tools, libraries, frameworks, methods and know-how, and in general-purpose code that it develops on its own and not specially for the Client (the "Developer Tools"). If any Developer Tools are built into the Software, the Developer gives the Client a non-exclusive, perpetual, worldwide, irrevocable, transferable licence to use, copy and change them, as part of the Software, for the Client's business. The Developer will list them in writing when it delivers.
7.5 Nothing in this agreement stops the Developer from using the general skills, ideas and experience it gains, as long as it does not use or disclose the Client's confidential information or the Software's own code.
8. Source code and delivery
8.1 With the final milestone, and when asked at any time after a milestone has been paid for, the Developer will deliver the complete source code of the Software, in a repository that the Client can access, together with the build instructions, the configuration, the database structure, the documentation and every other thing the Client needs to build, run, change and maintain the Software without the Developer's help.
8.2 The Developer will keep its work in a version control system and give the Client read access to it during the project, if the Client asks.
8.3 The Developer will not put into the Software any lock, time limit, hidden access or code that would stop it working or allow the Developer to control it, without the Client's written consent. It will test the Software with up-to-date tools for viruses and similar malicious code before it delivers it.
9. Open-source and third-party components
9.1 The Developer may use open-source and other third-party components in the Software, where this is good practice, but only on licences that allow the Client to use, change and distribute the Software as its business needs, and that do not require the Client to publish the Client's own source code, unless the Client has agreed to that in writing before it is used.
9.2 With each delivery the Developer will give the Client a list of all open-source and third-party components, their versions and their licences, and will follow the terms of those licences. A third-party component that is paid for will be bought in the Client's name, unless the parties agree otherwise in writing.
9.3 The licences of those components, and not this agreement, govern the components themselves.
10. Warranty
10.1 The Developer promises that the Software will meet the Specification when it is delivered and accepted, that it will be written by the Developer's own people or by people who have agreed in writing to the assignment in section 7, and that, to the Developer's knowledge, the Software (apart from the Client Materials) does not infringe the intellectual property rights of anyone else.
10.2 For 3 months after the final milestone is accepted (the "Warranty Period"), the Developer will correct, at its own cost and as quickly as it reasonably can, any fault in the Software that is a failure to meet the Specification, after the Client reports it in writing with the details the Developer needs. Critical faults, which stop the main features of the Software from working or put data or security at risk, will be dealt with first.
10.3 This warranty does not cover faults caused by changes to the Software by anyone but the Developer, by use against the written instructions, by faulty Client Materials, or by the Client's own systems or by third-party services that the Developer does not control. Work on those is charged at the rate in section 4.2, if the Client asks for it.
10.4 If the Developer is sued because of a claim that the Software infringes someone's intellectual property rights, apart from the Client Materials and changes the Client has made, the Developer will, at its own cost, defend the Client against the claim and pay the damages and costs that a court finally awards or that the Developer agrees in a settlement, if the Client tells the Developer promptly, lets the Developer run the defence and helps as reasonably asked. The Developer may also change the Software so that it does not infringe, or get the Client the right to keep using it.
10.5 Apart from what this agreement says, the law's implied promises about the Software are excluded as far as the law allows. The Developer does not promise that the Software will run without any interruption or error.
11. Security and data protection
11.1 The Developer will build the Software with sound security practice, will not store passwords or secrets in plain text, and will tell the Client without delay if it finds a security weakness in the Software.
11.2 If the Developer handles personal data for the Client during the project, for example in test data, it will do so only as the Client instructs, will keep it secure, will not pass it on or keep it longer than the project needs, and will tell the Client without delay of any loss or leak. The parties will sign a data processing agreement if the data protection law that applies requires one. The Client will, where it can, give the Developer test data with no real personal data in it.
11.3 Each party will follow the data protection law that applies to it.
12. Support and maintenance
12.1 After the Warranty Period, the Developer will give the following support, if the parties agree it in writing.
Monthly support plan of EUR 600, with a reply within one working day
12.2 Support that is not agreed in advance is given on request, as time allows, at the rate in section 4.2.
12.3 The Developer will tell the Client in good time if it will no longer be able to support the Software, so that the Client can arrange something else. Section 8 makes sure that the Client can always do so.
13. Confidentiality
13.1 Each party will keep secret all confidential information of the other that it learns because of this agreement, including the Client's business, data and plans, and the Specification and the source code, and will use it only to carry out this agreement. It will tell it only to its staff and advisers who need it and who are bound to keep it secret.
13.2 This does not apply to information that is or becomes public without a breach of this agreement, that the receiving party already knew or learned lawfully from someone else, or that it must disclose by law or at the order of a court or authority. In the last case it will, where the law allows, tell the other party first.
13.3 This section continues for 5 years after this agreement ends, and for as long as the information is a trade secret.
14. Credit and publicity
The Developer may not name the Client as a customer, or describe the Software, in public without the Client's written consent. The Client may name the Developer as the maker of the Software.
15. Liability
15.1 Nothing in this agreement limits or excludes a party's liability for death or personal injury caused by its negligence, for fraud, for deliberate wrongdoing, or for anything else that the law does not allow to be limited.
15.2 Subject to that, neither party is liable to the other for loss of profit, loss of business, loss of goodwill or any indirect or consequential loss, even if it was told that this might happen.
15.3 Subject to 15.1, the total liability of the Developer to the Client under or in connection with this agreement, in contract, tort or otherwise, is limited to the total fee paid under this agreement. This does not limit the Client's duty to pay the fees.
15.4 The Developer's duty to keep the Client's confidential information, and to defend the Client under section 10.4, is not subject to 15.2.
16. Subcontractors and staff
16.1 The Developer may use subcontractors only with the Client's written consent. It remains responsible for their work as for its own, and will make sure they are bound by terms that protect the Client as much as sections 7, 11 and 13 do.
16.2 The Developer is an independent contractor and not an employee or agent of the Client. It decides how and when to do the work, within the dates in this agreement, and is responsible for its own taxes, insurance and the pay of its own people.
16.3 During the project and for six months afterwards, neither party will try to hire the other's people who worked on the project, without the other's consent. General advertisements are allowed.
17. Force majeure
A party is not in breach if it is delayed by something beyond its reasonable control, such as a natural disaster, war, an official order, an outage of a public network or a strike by people outside its own staff. It will tell the other party promptly and do what it can to limit the delay. If the delay lasts more than 60 days, either party may end the agreement for the part not yet delivered under section 18.
18. Ending the agreement and handover
18.1 Either party may end this agreement by written notice if the other commits a serious breach and does not put it right within 30 days of a written notice that describes it. The Developer's failure to pay an undisputed sum is such a breach. Either party may end it at once if the other becomes insolvent or stops its business.
18.2 The Client may end this agreement at any time for convenience, by 14 days' written notice. It will then pay for the milestones accepted, and for the work done on the current milestone up to the end of the notice, in proportion to the part of the milestone completed, and for the expenses already committed with its approval.
18.3 If this agreement ends before the final milestone, the Developer will, within 10 days, give the Client the source code and all other work done to that point as set out in section 8, in return for payment of what the Client owes under this section. Ownership of the work that has been paid for passes under section 7.1. The Developer will also give back the Client Materials and Client data and delete its own copies, except as the law requires it to keep them.
18.4 The Developer will, for 30 days after the end, answer the Client's reasonable questions about the code at no extra charge, and will after that give help at the rate in section 4.2.
18.5 Sections 7, 8, 9, 10, 13, 15, 18 and 19 and anything else that is meant to continue stay in force after this agreement ends. Ending it does not affect rights that have already arisen.
19. Law and disputes
This agreement, and any dispute that arises from it, is governed by the laws of the Netherlands. The parties will first try to settle any dispute by discussing it in good faith for 30 days after one of them gives written notice of it.
The place for deciding any dispute under this agreement is Rotterdam. How disputes are decided
Either party may ask a court anywhere for an urgent order to protect its confidential information or intellectual property while a dispute is decided.
20. General
- This agreement, with its schedules, is the whole agreement of the parties on its subject and replaces earlier talks and proposals. A change to it must be in writing and signed by both parties, except as section 4 allows.
- Neither party may transfer its rights or duties under this agreement without the other's written consent, except that the Client may transfer them to a successor of its business.
- If a part of this agreement is found invalid, the rest stays in force, and the parties will replace the invalid part with a valid one that is as close to it as possible.
- A party that does not enforce a right at once has not given it up.
- Notices must be in writing and sent to the address at the head of this agreement, or to an email address that a party names for the purpose.
- This agreement may be signed in separate copies and electronically, and together they form one agreement.
Signatures
For the Client: Harbor Logistics Ltd
Name and title: ______________
Signature: ______________
Date: ______________
For the Developer: Lumen Software Studio
Name and title: ______________
Signature: ______________
Date: ______________