Well user acceptance is explicitly driven by the end user or through input by an end user or subject matter expert.
Beta testing is simply testing conducted prior to a commercial release. There is not necessarily a connection to the end user. It could be an end user, but the software isn't developed with that user in mind.
Does that sound good? Lol.
9 out of 10 people I prove wrong agree that I'm right. The other person is my wife.
Often the outcome of Beta Testing is more insight (bugs, usability comments, etc) into the system-under-test by the organization developing it.
While often the outcome of Acceptance Testing is acceptance (and sometimes payment) by the user organization.
The process of the user testing the system and, based on the results, either granting or refusing acceptance of the software/system being tested. [wikipedia]
The process of comparing the program to its initial requirements and the current needs of its end users. It is an unusual type of test in that it is usually performed by the program's customer or end user, and normally is not considered the responsibility of the development organization. [G. Myers]
Testing to verify readiness for implementation or use.
Formal testing conducted to determine whether or not a system satisifies its acceptance criteria and to enable the customer to determine whether or not to accept the system. [B. Hetzel]
Testing conducted at one or more customer sites by the end-user of a software product or system . This is usually a "friendly" user and the testing is conducted before the system is made generally available.
A type of user testing that uses testers who aren't part of your organization and who are members of your product's target market. The product under test is typically very close to completion. [C. Kaner, et al]