Regarding business, onsite generally refers to a production unit or an office space with full-time employees. Whereas, Offsite is where a company can handle its operations or get its work done without actually being there.
The programmers should complete the work onsite at the customer's premises, constantly getting live feedback from the higher-ups and clients. Here, they work hand-in-hand to create the product that they desire. On the other hand, Offshore means that the professionals can work in their own space and time, considering the deadline. In this process, the client gets the final product, suggests the required changes, and gets them corrected, and ultimately we have the product.