An application service provider (ASP) is a business providing application software generally through the Web.
[1] ASPs that specialize in a particular application (such as a medical billing program) may be referred to as providing software as a service.
The application software resides on the vendor's system and is accessed by users through a communication protocol.
Alternatively, the vendor may provide special purpose client software.
Client software may interface with these systems through an application programming interface.