How can we improve WHMCS?

Share, discuss and vote for what you would like to see added to WHMCS

Updating Client Currency on Account - Invoicing Retained with Old Currency.

  • PretecsChris shared this idea 11 years ago
  • Admin Area
  • 51 Comments


174 Votes
Login to Vote
If a client requests us to switch their currency on their account, that all previous invoicing remain in the old currency and new invoices will be shown in the new currency. From an accounting purpose, this is a huge issue with the archived information not matching what currency they paid in, and this should be retained for perpetuity.

It would also be helpful if the client could set on a product level, not on a client level, what currency they wish to pay in.
Merged Ideas
    currency per invoice - add field to database determine the payment currency type
    Hello,We have customers that they pay sometimes with eur, sometimes with usd. To set the currency to the invoice, not to the customer will be best update and will finish the currency problemsThank you

72 Comments

Login to post a comment.

useful information. Do check https://trendschmiede.net/
Switching a client's account currency while keeping past invoices in the original currency is critical for accounting integrity. Historical records must remain unchanged, with new invoices reflecting the updated currency. Product-level currency options are possible but add complexity, requiring clear invoicing and compliance with accounting standards.
also check https://lebensblick.net/
Useful information. also check https://lebensblick.net/
The idea of updating client currency on account while retaining old invoicing currency in WHMCS is a crucial enhancement!
https://neugierzone.com/
Maintaining accurate historical records in the original currency is indeed crucial for proper accounting and audit trails. Introducing a product-level currency setting sounds like a practical enhancement, offering clients greater flexibility while preserving consistency in invoicing records.
https://kuhlschrankprofi.com/
Good information, check https://alltagsentdecker.com/
Great post! I really appreciate the perspective shared here—it’s both engaging and informative. If you're looking for more content on similar topics, IdeenKorb has a wide range of helpful articles and resources to explore. https://ideenkorb.net/
The idea of updating client currency on account while retaining old invoicing currency in WHMCS is a crucial enhancement!
https://vielseitigblog.net/
If a client requests a currency change on their account, previous invoices will remain in the old currency, while new invoices will reflect the new currency. This creates an accounting issue, as archived data won’t match the payment currency, and the original currency should be retained permanently. It would be beneficial if clients could set their preferred currency on a product level, rather than for the entire account.
https://infoquelle.net/
This would be a valuable feature for more granular control and better tracking. A hook point for user switches between client accounts would allow for better automation and customization in WHMCS
Saving the payment information in the original currency is the issue here - if I create an invoice for $100 NZD, that invoice should say $100 NZD and the amount I received in my default currency at the time of payment forever, even if I change the client's default currency in the future.
Hello,

That sort of could work, but couldn't you just create some sort of multi currency profile? So invoices can be in € or $, they don't change ever once paid because well that's the book keeping of the invoice paid on April 13th 2021 so if its paid in $ then that's that, but allowing the client to just opt for changing the invoice currency before paying it. Then in the summary page, it would show Account summary in each currency not just EUR?

You would basically be juggling the currencies making the profile MULTI CURRENCY instead of MULTI ACCOUNT?

You can even add something like instead of

Paid 1 ($141.91USD)
Draft 0 ($0.00USD)
Unpaid/Due 0 ($0.00USD)
Cancelled 0 ($0.00USD)
Refunded 0 ($0.00USD)
Collections 0 ($0.00USD)
Income
Gross Revenue $141.91USD
Client Expenses $6.54USD
Net Income $135.37USD
Credit Balance $0.00USD

You split this somehow, be it a popup with breakdown, this could be listing the USD as default because that is what the client opts for, but the moment the client decides on his invoice to "Change currency: USD => EUR" then this becomes maybe a detailed popup? with breakdown in each currency instead of just default currency, or some sort of tooltip popover Gross revenue: $141.91USD (hoverable for breakdown let say 90.50USD then rest is in EUR)

Im just spitballing here, but this way you would just change how the system keeps the books, but post paid invoice, they can never change that invoice currency, except hacking the database which well then it just defeats the system.

I have often thought how this could be achieved, for now we've blocked the Currency change dropdown in our profile to avoid our staff from accidentally messing the book keeping up.

Anyway just my two cents :)
This issue is still blocked by many of the issues raised in our post earlier in this thread from November 2016.

To summarise:

1. We do not have a way to obtain exchange rates programatically for every currency
2. Exchange rates we can obtain programatically often differ from the official rates provided by countries and governments
3. There are technical challenges when it comes to:
i. Credit Balances
ii. Reporting
iii. Monetary promotions/discounts
iv. Affiliate system

In WHMCS 8.0, we introduced the Users and Client Accounts feature which allows one human user to have multiple Client Accounts associated to a single login. This should provide a viable workaround for the scenario of one user desiring multiple client profiles with different currencies. Is there any reason why this cannot work?

Thank you for the continued discussion.
Could you elaborate on how does it solve the "I need to change my active currency" use case?

That's could be an okay-ish workaround if you need another set of new services under a new currency, but this issue regards to "changing the currency for an existing set of services". In order to adhere to your proposal in this use case we would need to:

1- Create a new customer profile with the desired currency.
2- Grant the necessary rights for the profile to an user (which now has access to both the new and the old customer profiles).
3- Migrate the services from the old profile to the new (which might require cancelling and creating them, as they already have an invoicing history on the old currency).

Unless there's a way to do 3) properly while having a sane invoicing history I don't think that your current proposal solves the use case of "needing to change" the current currency.
It i certainly a workaround. As you say, it would require setting the hosting service in one account to terminated, and creating a new order under the second account with the alternative currency with the same details. This does however maintain the full service and invoice history. As we understand it, the scenario is for when a user makes the request to move from one currency to another permanently, and so the original client account simply becomes dormant and kept for record purposes only.
This is really needed, especially with Gateways that have to convert the invoice to a different currency.
This is quite a big deal if you want to offer your customers the possibility to change currencies.

As it is, if you happen to do so, all past invoices will be showing another currency without any kind of conversion, which is undesirable as it WILL bring problems when customers try to get copies of their invoices on a different currency.