If you have incurred a debt, and have not previously negotiated around the specifics of that debt, than the creditor must accept payment in dollars.
However, if there is no debt, for instance if you're walking up to a cash register in a store to buy a candy bar, there is no requirement that they accept any particular form of payment, at least not in the USA -- other countries, like Canada, seem to have stricter interpretations of "legal tender"
And, within limits, any two business entities can contract to trade just about anything for anything else. If you want to get paid in Twinkies in return for making someone a web site, that's up to you. Employee salaries are a different matter -- the way I read the law, you have to pay minimum wage in USD.
That's not true at all. Legal tender laws mean that an offer of US dollars is legally recognized as an offer to fulfill a debt obligation; i.e. if the issue ended up in litigation, the court would treat your offer of dollars as a settlement of the debt.
But that doesn't mean that anyone is actually obligated to accept your offer of dollars, or that the agreement that generated the debt wouldn't give you a strong incentive to pay in BTC as opposed to USD.
Further, an agreement could say something to the effect of "borrower will repay lender the sum of $1000, or 50 BTC", stipulating an effective exchange rate that makes repayment in dollars entirely unrealistic.