Considering that you cannot operate a redirect, you have basically two choices: proxy or DNS.
Using a proxy, your business associate can set up a proxy that will intermediate browser's requests to your server. The concept is called reverse proxy and there is plenty of documentation around on how to implement one.
The other option is to setup a DNS entry that points an entry of his domain to a particular address on your servers.
You can either have an exclusive IP address assigned to your associate's entry, and then have him add a A record to your dedicated exclusive IP address in his DNS tables, like this bind standard config format:
your-server.businessassociate.com IN A 1.1.1.1
Supose that 1.1.1.1 is the exclusive address you assigned to the server that will be replying to requests to your business associate's domain entry. You will most likely have a virtual server answering with that configuration.
The other option is to ask your business associate to create a CNAME entry in his DNS tables referencing your server by name. You should never have another A entry for a server that already has one, so CNAME is like an "alias" and will reflect changes in your original server name's IP address, once you change your own DNS entry. Like this:
your-server.businessassociate.com IN CNAME your-server.your-domain.com
And then you have to setup a virtual server on the webserver running on your-server.your-domain.com machine to handle requests directed to your-server.businessassociate.com.
What you cannot do via DNS is exactly what you have in your question: promo.cluent1.com can never translate to mysite.com/client1 because DNS cannot deal with the specifics of HTTP, like what is after that slash. You can achieve similar result by setting up a virtual host on your http server that rewrites internally your-server.businessassociate.com to mysite.com/client1, but you cannot escape from setting up a virtual host or alike.