I once installed a system for a client with their vendor. At the time I thought it was ok, but had a reservation about it being based on an older system and maybe we should go with newer software from a bigger company and not a small company with a couple of employees and no other products. I was over ruled, so I installed it, documented everything and gave the documentation to both the client and we kept a copy for just in case.
Fast forward 6 years to when the system failed. Turns out the client wasn't doing maintenance on the system and my old company wasn't either because it wasn't in the contract and the client didn't want to pay extra. The vendor has since gone out of business and I had left the company I was with at the time the previous year. The client "lost" all documentation of the product and my old company decided to get rid of my old department and purged all files. The client reached out asking for help, I said I would be happy to, but I would need to be paid, they said that their contract with my old company dictates that they cannot hire any of their staff or former staff for "x" amount of years. They reached out to my old company about them hiring me back on contract with they paying the contract plus markup but my company refused because they have a policy of not re-hiring former employees who left on their own for "x" number of years and that included contract and piecemeal work. Last I heard, people were fired over this at the client's side and it cost them a lot of money to their data exported and into a new system ASAP.