Extranjeros pay the full price, whereas residents/citizens pay the discounted fare on national flights (they are subsidized).
The hotels applying a different rate depending on your country of residence are just scammers, since they don't get any subsidy. They just want to charge you more because you are a foreigner.
Long distance buses have only one fare, in fact!
If you buy a travel pack (such as from almundo, asatej, despegar), the price will change (for the flight portion) upon disclosing your personal details.