Who owns the source code, and what happens if the vendor disappears?

The answer you want in writing: either you receive the full source code with a right to use and modify it, or the code is deposited with a neutral third party (source code escrow) that releases it to you if the vendor stops operating or maintaining it. Any other oral answer does not protect you.

A vendor selling ready-made software often keeps ownership of the code, and that is acceptable on one condition: an escrow clause with a third party, a clause handing the code over on termination, and a written right to continue maintenance with another provider. For a system built specifically for your company, require full ownership of the code from day one.

  • Require: a written clause naming the owner of the code and its terms of use.
  • Require: deposit of the code and its updates with an independent third party if the code stays with the vendor.
  • Refuse: a contract that forever forbids you to modify the system or move its maintenance.

Who owns your data, and where is it stored?

Your company’s data belongs to your company, and the contract must say so in writing: ownership, storage location, and the right to extract it in open formats (CSV, Excel or SQL) at any time and at no cost. Do not settle for an oral answer.

If the data includes personal information about your employees or customers, you are legally responsible for protecting it under Algeria’s law 18-07 of 10 June 2018 on the protection of individuals in the processing of personal data, and its amendments. Ask where the servers are, who can access the data, and require the answer in writing.

  • Require: a data-ownership clause and a right to extract data in an open format, at no cost.
  • Ask: where the servers are and who can access your data.
  • Tie: confidentiality commitments to law 18-07 and its amendments.

Support in Arabic: what happens when everything stops?

Require a written service-level agreement (SLA): response and resolution times, working days and hours, and contact channels — phone, WhatsApp, ticket system. Your team in Algeria works in Arabic; support in a language the end user does not understand means a system that stalls on an end-of-month billing evening.

Before signing, test the support line yourself: call the number, write on WhatsApp, open a ticket. The response speed before the contract predicts the speed after it.

  • Require: a written SLA with specific response and resolution times.
  • Require: support in Arabic for the system’s users, not only for the technical lead.
  • Test: the support line before signing and note the response time.

Local references: how to verify them instead of believing them?

Ask the vendor for three customers in Algeria, in your sector or of a comparable size, who can be called. Then call them yourself and ask about delays, about the extra costs that appeared after signing, and about the day-to-day reality of support.

A silent reference is worthless: a vendor who refuses to name customers, who only has references abroad, or who hides behind confidentiality is asking you to buy a pig in a poke. One site visit to a company using the system daily is worth ten sales presentations.

  • Ask: for customers in Algeria, in your sector, who can be called.
  • Ask them: about delays, hidden costs, and the reality of support.
  • Ask: for a site visit to a company using the system daily.

Training and documentation: who will use the system after delivery?

A system your team does not understand will not be used, and an unused system is a failed project whatever its technology. Require a written training plan: number of sessions, target groups, location, and who delivers them.

Also require documentation in Arabic or French for every module, and the training of internal leads who will pass knowledge on to newcomers. In a company with regular staff turnover, training is a recurring event, not a one-off session.

  • Require: a written training plan with the number of sessions and target groups.
  • Require: documentation in Arabic or French for every module.
  • Name: the internal system lead and how they get trained.

The exit clause: write the ending before the beginning

The best time to write the exit clause is before signing, while the vendor still wants to convince you. Set out in the contract: the data extraction format, the length of the transition period, your right to move maintenance to a third party, and what happens to the code and licences on termination.

A clear exit clause flips the balance: a vendor who knows you can leave works to keep you with service, not with lock-in.

  • Write: the data extraction format and the length of the transition.
  • Write: the right to move maintenance to a third party with no exit fees.
  • Write: what happens to licences and code on termination or the vendor’s insolvency.

The final decision checklist: only sign at 7 out of 7

We have condensed everything above into 7 points. Without a written clause for each one, renegotiate or change vendors.

  • 1. Code ownership or third-party escrow, written into the contract.
  • 2. A data-ownership clause: storage location and a right to extract at no cost.
  • 3. Support in Arabic with a written SLA stating response and resolution times.
  • 4. Three local references you called yourself, in your sector.
  • 5. A training plan and documentation in Arabic or French.
  • 6. An exit clause: data extraction, transition period, no exit fees.
  • 7. A contract reviewed by a lawyer familiar with law 18-07 before signing.