The first, best piece of advice I can give you, is find a lawyer who is familiar with corporate contracts and practices. Have him translate between you and whatever contract or agreement you'll end up with. It's way to easy, for a smart, clever person who is familiar with contracts but not a specialized lawyer, to make mistakes that can lead to unhappy situations
As far as your decision making, ask yourself the following questions:
- Do I want a long term gig? (Can this be a long term gig?)
- Is making money off this contract really really important to me?
- Will any of this have an effect on your wife's standing within the company?
I'll ignore the last question, that's up to you to figure out and process. Here's the matrix for the first two though:
11:
Offer the software, as is, without warranty, with a generous license (for example, not limited on the number of installs), for a low sum (around here, $500 for an estimated 10 installations fits that, your mileage is local to you), combined with a support contract at a low hourly rate to you (take what you make at your day job and throw 50% on top, but settle for 25%). Expect to give them your phone number and be called when they run into trouble they can't fix, even if it's trivial.
10:
Offer the software, as is, without warranty, with a generous license (for example, not limited on the number of installs), for a high sum (say, $5000 for an estimated 10 installations), combined with a support contract at a high hourly rate to you (take what you make at your day job and throw 100% on top, but settle for above 60-70%). Expect to give them your phone number and be called when they run into trouble they can't fix, even if it's trivial.
01:
Offer the software as is, without warranty and making it clear you're busy and don't want/can't support it. Use the same ideas when pricing as 11, but add in the idea of selling them the source code for a bonus. If they want you to do any more work, they'll have to hire you separately, and you can sign a contract for that work (ie, if they want to change the software, or new versions, etc...)
00:
Offer the software as is, without warranty and making it clear you're busy and don't want/can't support it. Use the same ideas when pricing as 10, but add in the idea of selling them the source code for a bonus. If they want you to do any more work, they'll have to hire you separately, and you can sign a contract for that work (ie, if they want to change the software, or new versions, etc...)
Make sure that you log all of the work that you're doing, and all of the time spent on it, even if it's a few minutes on the phone. Report on it in aggregate periodically, and match it to the contract - so both you and they can see if you're spending time on it voluntarily. This is especially important if you're doing support work - where a 1 minute call once a week can turn into 25 3 minute calls a day.
No matter what you go with, consider starting a LLC, and putting up a website with the software available for sale. People at corporations tend to move around, talk to each other a-lot, and ideas tend to spread - if you end up with a lot of people using it at one place, there's a very good chance you'll have other clients coming to you to try and buy software for themselves. If the cost is low enough to go on an expense account without much question, and you don't offer any support at all, this can be a low-effort steady stream of income to you.