Currently the code has a simple limit for figuring out what price tier can use credit card payments, see: https://github.com/mozilla/zamboni/blob/master/apps/market/models.py#L119 The spreadsheet on 868179 implies a more complicated relationship. When calculating the price to show, there are three things that affect the price: - carrier - country - price tier From that we need to be able to figure out: - the price in which currency - what payment methods are available I would recommend changing the price currency model to contain: - carrier - country - payment methods Payment methods could just be a simple list of strings eg: ['operator', 'card']. Currently all the get_price* methods accept currency. I think we should change this to be dependent upon country (or region), since currency is no longer enough. eg. Venezuela is in USD, but does not support carrier payments - just passing through USD in this case would make no sense.
I've freed up most of my other P1's if you want me to take this, let me know.
https://github.com/mozilla/zamboni/commit/aebc90 Still got bug 881778, new price tiers and API to go.
Lots of follow up commits.
Looks like this landed at 2013-06-11 16:46:16 PDT -- could you coordinate with Krupa when landing a patch on dev that late? The Poland testers are still using dev. We hit this regression: bug 882163
Bango does not like these new prices (bug 882183) but we only get a 500, no details. Are these new price points fully supported by Bango as far as we know?
I co-ordinated with Krupa and was fixing bugs for quite a few hours :) The problem is that we have more information in price points now. So we have two price points that have USD in them. One for the US, one for Venezuela. Because currencies span countries, I don't believe just passing a currency to Bango is enough anymore.
Do we have any clear test case in order to verify everything for this bug?