You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
tb.pro should display price data from Paddle #1253
Right now we have a static price set on the website, but this is incorrect for many countries because we do localized pricing, and in general it risks being outdated.
We likely want to pull the data at build time, otherwise we have to have a JS component from Paddle in the marketing site and that's suboptimal from a privacy perspective.
Hi! I'd be interested in working on this. I've been getting familiar with the build pipeline and would like to work on implementing the build time Paddle pricing.
It should be possible to figure out how to do this from the Paddle API documentation and you may be able to make your own sandbox account with them, I'm not sure.
It should be possible to figure out how to do this from the Paddle API documentation and you may be able to make your own sandbox account with them, I'm not sure.
Thanks! I'll dig into the Paddle API and the thunderbird-accounts integration and see how best to approach it.
Will reach out if I run into any questions.
@Sancus The build time Paddle pricing preview integration is now implemented in the PR.
Detecting a visitor’s country and serving the corresponding localized Paddle price requires a separate piece of work.
Would you prefer that I address that in this PR or as a follow-up?
Happy to follow your preferred scope.
@Sancus I’m working on the localized price follow-up as a stacked change on top of #1313.
The approach is to fetch Paddle pricing for a configured set of countries at build time, generate a static country-to-price map, and add a small country/region selector that updates the existing tb.pro pricing display.
The selection would be for display only. There would be no GeoIP, IP-country enforcement, Paddle.js, or browser-side Paddle requests. Thunderbird Accounts and Paddle Checkout would remain authoritative for the customer’s billing country and final price.
A later coordinated change could optionally pass the selection from tb.pro to Accounts as an initial country preference.
Please let me know if you prefer a different approach.
Thank you!
@Sancus
I opened the country pricing preview follow up as #1321.
It depends on #1313 and temporarily targets the upstream base branch because gh does not support stacked PRs across forks.
Activity
Mouzayan commentedon Sep 14, 2026
Hi! I'd be interested in working on this. I've been getting familiar with the build pipeline and would like to work on implementing the build time Paddle pricing.
Is this issue still available to work on?
Sancus commentedon Sep 14, 2026
Sure this is available to work on. Note that we can't really provide a Paddle account for testing this but https://github.com/thunderbird/thunderbird-accounts interfaces with Paddle.
It should be possible to figure out how to do this from the Paddle API documentation and you may be able to make your own sandbox account with them, I'm not sure.
Mouzayan commentedon Sep 14, 2026
Thanks! I'll dig into the Paddle API and the thunderbird-accounts integration and see how best to approach it.
Will reach out if I run into any questions.
Mouzayan commentedon Sep 22, 2026
@Sancus The build time Paddle pricing preview integration is now implemented in the PR.
Detecting a visitor’s country and serving the corresponding localized Paddle price requires a separate piece of work.
Would you prefer that I address that in this PR or as a follow-up?
Happy to follow your preferred scope.
Mouzayan commentedon Sep 28, 2026
@Sancus I’m working on the localized price follow-up as a stacked change on top of #1313.
The approach is to fetch Paddle pricing for a configured set of countries at build time, generate a static country-to-price map, and add a small country/region selector that updates the existing tb.pro pricing display.
The selection would be for display only. There would be no GeoIP, IP-country enforcement, Paddle.js, or browser-side Paddle requests. Thunderbird Accounts and Paddle Checkout would remain authoritative for the customer’s billing country and final price.
A later coordinated change could optionally pass the selection from tb.pro to Accounts as an initial country preference.
Please let me know if you prefer a different approach.
Thank you!
Mouzayan commentedon Oct 4, 2026
@Sancus
I opened the country pricing preview follow up as #1321.
It depends on #1313 and temporarily targets the upstream base branch because gh does not support stacked PRs across forks.