User acceptance test is part of the wider effort to verify that software meets the needs of the end-user. It is not necessarily a paid customer: if someone develops custom internal software for a company, the user acceptance testing is performed by employees of that company.