Payment currency different to base vs reporting and future viewing of data #2495
-
If Commerce considers other currencies based on conversion rates from the "base" currency, how does it deal with viewing and reporting on orders that were placed in the past (i.e. after the conversion rate has been updated for a non-base currency). I'm guessing by use of the Thinking on, while using the Stripe payment integration, the Stripe control panel shows payments in the currency the user chose on the Craft site at the time of purchase. The "Amount" (base currency) and "Payment Amount" (payment currency) are shown separated in Commerce's order screen under the "Transactions" tab. Looking at the database, these are stored as 2 values, with the corresponding currency codes. This should mean that if we report based on that table, it should be more accurate. Right? If I'm right above and we report that way, it solves the accountants getting upset that the numbers are not right but we would still have the situation where any order notfication emails / screens / viewing of the data might be inaccurate if the currency rate changed between placement of order and viewing the data again, via whatever mechanism. I think I read elsewhere that true multi-currency for Commerce is coming, but are there any ideas how to mitigate this sort of thing until then? |
Beta Was this translation helpful? Give feedback.
Replies: 2 comments 2 replies
-
One thought I had was that the current |
Beta Was this translation helpful? Give feedback.
-
All transactions on the orders store the The order will always have its amounts/totals in the store currency. total paid on the order is the total of the successful transactions on the order (sum of |
Beta Was this translation helpful? Give feedback.
All transactions on the orders store the
amount
(in store currency),paymentAmount
(in payment currency),currency
(the store currency code),paymentCurrency
(payment currency code),paymentRate
the snapshot of the conversion rate (e.g1.2
) used between theamount
and thepaymentAmount
.The order will always have its amounts/totals in the store currency. total paid on the order is the total of the successful transactions on the order (sum of
transaction.amount
). If you wanted to report on the currency used to pay, and what the rate used was, you would need to included the transactions in your reporting.