Прежде всего нужно определиться с платёжным агрегатором. Stripe Skrill PayPal 2Checkout Braintree и туча их ещё
У каждого из них разные варианты оплаты
Нужно смотреть описание API
Обычно в запросе на проведение оплаты сумма задаётся в базовой валюте (USD например), а пользователю показывается селектор валюты, либо сразу отображается в местной валюте, либо показывается в USD, но в итоге с карты списывается в рублях
Иногда цены "для запада/для России" отличаются значительно. Например, для России - 100 рублей за штуку, для Европы - 10 евро за штуку. Это реализуется в бизнес-логике твоего приложения, как
Developer описал. В таблице хранятся цены, курсы.
Иногда цены отличаются для новеньких и для бывших пользователей (дисконтная система). Иногда скидка реализовывается на стороне платёжного агрегатора (Stripe), а чаще - хранишь параметры у себя и выставляешь через API сумму с учётом скидки.