We're a small company in TX (100 employees). I hired a gentleman from India who told me at the time that he would need to be sponsored at some point for his work visa, but that he would pay said fees himself. Now he's telling me he needs the company to pay those fees, at around $4000. We will absolutely do this, but $4000 is a lot of money to us. Is it legal for us to require said employee to sign an employment agreement in return, so that we don't pay $4000 and then he just turns around and goes to work for the next highest bidder two weeks later? Ideally, said agreement would stipulate that he has to continue working for us for at least a year following its execution, in breach of which he would owe us a prorated refund for the $4000.