-
Notifications
You must be signed in to change notification settings - Fork 43
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Simplify virtual cards - offer only supported cards for user location #259
Comments
@EresDev, You are not allowed to add Time: <1 Day |
! No permission to set labels |
@EresDev when I spoke to the representative at Reloadly, he highlighted that the cards are region locked. If we mint a US card, it can not be used outside of the US as I understand it. As such, we must mint based on the user's location. We should automatically select based on IP geolocation, but allow them to select before minting just in case. |
Speaking of simplifying things:
@rndquu any idea on progress for the "permit rollups" feature? I know you had a discussion some months ago with the transient contributor that never completed it. Also perhaps we should start minting some Ubiquity Dollars and get this infrastructure underway for card minting? Footnotes
|
It is not exactly true. But it is ok to go this statement because I see it reduces the chances of wrong card minting by new users. The drawback is that it reduces options for experienced users. Why his statement is not exactly right? the card below shows up if you filter the location as US. But the card states it is international and I have tried it in non-US locations and it worked. This helps with locations which don't have any cards.
Does it mean we should offer all cards based on their location? and not just the US card? |
+1
Where exactly did you try it? The card bin is for German bank by the way.
I also remember reading it in the docs. Perhaps it makes sense to filter cards by ISO code via https://docs.reloadly.com/gift-cards/Products/Get-Product-by-ISO-Code ?
Yes, because otherwise we risk minting gift cards which can't be used in contributor's country and there's no way (as far as I understand) to redeem the card's value back to the reloadly account. Overall "gift cards" feature is starting to be complicated so it makes sense to find a proper virtual cards provider API without complicating the code with the feature that is about to be removed. |
You mean this flow:
Correct?
There's not much infrastructure, we just need to provide LUSD collateral to mint some Ubiquity Dollars, we can do it anytime |
Yes. The emphasis being on that they can collect several permits and then at once mint the larger card amount using their wallet balance. In theory this also means that anybody with ubiquity dollars should be able to access the card minting, regardless if they purchased from the market or earned in the system.
This is referring to saving permits in the database and then displaying the sum total on the cash out interface. Any updates there? |
This is correct according to the representative.
Unfortunately we could not come to an agreement with these partners. Even if we did the relationship can be rug pulled at any time. I don't have high confidence when it comes to crypto and card issuers. I actually think that these reward cards might be the most robust backup option we have, and I think we should always keep it around. Once it's implemented fully and without problems, then I think we can make efforts to partner with the other options as a stretch goal. Either way, there is a real advantage for not having to go through KYC for new users to benefit from the system. With reward cards, the cash out process is with the least friction that I can think of, so as long as we can figure out the location quirks. |
I have used it on Google Play Store. Maybe I am looking it too subjectively here. Fiat cards didn't work many times when they were supposed to and vice versa. That is why, I wanted to put the decision of picking a card on the user. But let's go with what the instructions say and filter them by location. |
If it helps I can make a dedicated group chat and invite the representative. This will allow you guys to clear up any and all questions definitively. @EresDev I think it is worthwhile for us to understand exactly why you had the issues that you did. Please ask in the group chat. |
I just double-checked to confirm thinking maybe I am wrong somewhere. I see that it was not mastercard. it was visa that I had used. But it was US Visa International card. So, the situation was same.
We can talk with them tomorrow and clear our concerns. |
They are in the group chat already. |
Here is a summary of the information I got from the group chat. There are separate lists of supported countries for MasterCard & visa exclusive to Reloadly. It is not necessarily the same list as the countries' lists on redeeming websites like There are no refunds or replacements of cards even if you have made a mistake or card got blocked. There are certain international cards with specific SKUs. They work for a list of 35 countries right now. If one country has no available card, and it is in those 35 countries, you can give them one of the international card. It should work. I am waiting to receive the list of these 35 countries & skus from Reloadly. Finally, we should implement the geolocation filter and offer users the card only for their location. |
|
Right now the card mint flow at #226 is the following:
So the logic behind the "anybody with ubiquity dollars should be able to access the card minting" feature doesn't change much. Contributor still has to transfer ubiquity dollars (i.e. reward) on-chain to a treasury address and provide a tx hash to the backend at In order not to complicate interface at |
@rndquu yes sounds good you can create a new issue. |
Some more information from the group chat. I have received the international cards SKUs list. The important SKUs in the list are 18597 for Mastercard and 18593 for Visa. These international USD cards can be sold to any country in the allowed list. But this should be practiced to a minimum. Their program manager is pushing for location based sales. Small volumes like 1-2k sales of these skus would be ok, but for higher volumes like 100k, the location based cards should be used. |
So we're going to implement both, right? I mean this flow:
|
We are still going to show the list of available cards to user based on their location. User should have options I think. One location can have multiple visas and mastercards. They are available in different price ranges, they have different limitations and different order fees. In this issue, I am thinking to just offer the location based cards only. I see it is easy to cross the 1-2k threshold on international USD cards. One more useful info from the group chat
This means they are flexible to offer cards for a location that has demand. Later, we can gradually add international USD cards or ask them to add cards for locations where we don't have cards but there is demand. This is what It think it should be. Start small. See how it goes in production. But if you think we should support both then let me know and I will add both. @rndquu |
Sounds good |
/start |
Any, it's enough for the 1st feature iteration
This is also an option. So basically we have 2 options:
The initial plan, as far as I understand, was option 1 and adding option 2 later. |
The PR #270 is open for this. See exactly what changes it provides. What I see happening next is the following based on our discussion. Use only the mastercard SKU list given by reloadly. They are tokenized and only they are tokenized. This also covers the idea of picking card for the customer as we are the experts, not the user. If there is no card available for user country, and user country is in the allowed list, offer them SKU 18597 for Mastercard. If we are going with this, the contributor of #267 should know that there will be just 1 card to display on their cards page. Let me know if we are going with this? @0x4007 @rndquu I can do this as the part of this current PR or a new one as you say. |
I generally think new pulls are better to keep shipping |
@EresDev Just to make it clear, what is the difference between the attached 2 files? MC allow list 3052024.xlsx
Correct? |
@EresDev the deadline is at 2024-08-06T07:19:52.764Z |
You are right. In addition to that, if a country is not in allow list, we can not give them any mastercard. |
@EresDev the deadline is at 2024-08-15T18:26:06.068Z |
Today I Learned: github does not automatically close issues as "completed" if related PR is merged not into the default branch |
+ Evaluating results. Please wait... |
|
View | Contribution | Count | Reward |
---|---|---|---|
Issue | Task | 1 | 400 |
Issue | Specification | 1 | 41.7 |
Issue | Comment | 9 | 142.94 |
Review | Comment | 12 | 260.4 |
Conversation Incentives
Comment | Formatting | Relevance | Reward |
---|---|---|---|
Currently, we offer all available visa and mastercards provided … | 41.7content: p: count: 30 score: 1 ul: count: 107 score: 0 li: count: 107 score: 1 code: count: 2 score: 1 img: count: 1 score: 0 wordValue: 0.1 formattingMultiplier: 3 | 1 | 41.7 |
It is not exactly true. But it is ok to go this statement becaus… | 20.2content: p: count: 101 score: 1 img: count: 1 score: 0 wordValue: 0.2 formattingMultiplier: 1 | 0.7 | 14.14 |
I have used it on Google Play Store. The card shows up under t… | 14.2content: p: count: 71 score: 1 img: count: 1 score: 0 wordValue: 0.2 formattingMultiplier: 1 | 0.6 | 8.52 |
I just double-checked to confirm thinking maybe I am wrong somew… | 9.4content: p: count: 47 score: 1 br: count: 1 score: 0 img: count: 1 score: 0 wordValue: 0.2 formattingMultiplier: 1 | 0.5 | 4.7 |
Here is a summary of the information I got from the group chat. … | 33.8content: p: count: 168 score: 1 code: count: 1 score: 1 br: count: 1 score: 0 wordValue: 0.2 formattingMultiplier: 1 | 0.9 | 30.42 |
Some more information from the group chat. I have received the … | 16.8content: p: count: 84 score: 1 wordValue: 0.2 formattingMultiplier: 1 | 0.8 | 13.44 |
We are still going to show the list of available cards to user b… | 31content: p: count: 155 score: 1 wordValue: 0.2 formattingMultiplier: 1 | 0.75 | 23.25 |
All mastercards. However, they said that in the context of this … | 27.2content: p: count: 136 score: 1 img: count: 1 score: 0 wordValue: 0.2 formattingMultiplier: 1 | 0.7 | 19.04 |
The PR https://github.com/ubiquity/pay.ubq.fi/pull/270 is open f… | 28.2content: p: count: 138 score: 1 a: count: 3 score: 1 wordValue: 0.2 formattingMultiplier: 1 | 0.95 | 26.79 |
You are right. In addition to that, if a country is not in allow… | 4.4content: p: count: 22 score: 1 wordValue: 0.2 formattingMultiplier: 1 | 0.6 | 2.64 |
Resolves #259 [QA](https://github.com/ubiquity/pay.ubq.fi/pull/… | 0content: p: count: 4 score: 1 a: count: 1 score: 1 ul: count: 18 score: 0 li: count: 18 score: 1 wordValue: 0 formattingMultiplier: 0 | 0.3 | - |
@Keyrxng are you looking into this or should I look into this? | 4.8content: p: count: 12 score: 1 wordValue: 0.2 formattingMultiplier: 2 | 1 | 4.8 |
This mostly worked well, I have tried for some countries where I… | 52.4content: p: count: 131 score: 1 wordValue: 0.2 formattingMultiplier: 2 | 1 | 52.4 |
I went ahead and used IP location lookup as main method to detec… | 22.8content: p: count: 57 score: 1 wordValue: 0.2 formattingMultiplier: 2 | 1 | 22.8 |
Yes, that is how location detection via timezone is working. | 4content: p: count: 10 score: 1 wordValue: 0.2 formattingMultiplier: 2 | 1 | 4 |
There is one, it is [geolocation API](https://developer.mozilla.… | 23.6content: p: count: 57 score: 1 a: count: 2 score: 1 br: count: 1 score: 0 wordValue: 0.2 formattingMultiplier: 2 | 1 | 23.6 |
marking it as resolved since the kebab case line is not present … | 6.8content: p: count: 17 score: 1 wordValue: 0.2 formattingMultiplier: 2 | 1 | 6.8 |
Right now, Reloadly API and sandbox have started to behave unexp… | 24content: p: count: 60 score: 1 wordValue: 0.2 formattingMultiplier: 2 | 1 | 24 |
What's included in this PR: - remove fixed price products, and … | 27.6content: p: count: 8 score: 1 ul: count: 48 score: 0 li: count: 48 score: 1 h2: count: 1 score: 1 h3: count: 12 score: 1 img: count: 3 score: 0 wordValue: 0.2 formattingMultiplier: 2 | 1 | 27.6 |
@rndquu You probably want to do it on anvil testnet. 1. Set &#… | 84content: p: count: 10 score: 1 ol: count: 172 score: 0 li: count: 172 score: 1 code: count: 18 score: 1 a: count: 8 score: 1 pre: count: 8 score: 0 h3: count: 2 score: 1 wordValue: 0.2 formattingMultiplier: 2 | 1 | 84 |
Correct. | 0.4content: p: count: 1 score: 1 wordValue: 0.2 formattingMultiplier: 2 | 1 | 0.4 |
Am I supposed to merge this as the reviews appear to be finished… | 10content: p: count: 25 score: 1 wordValue: 0.2 formattingMultiplier: 2 | 1 | 10 |
[ 57.23 WXDAI ]
@0x4007
Contributions Overview
View | Contribution | Count | Reward |
---|---|---|---|
Issue | Comment | 9 | 48.43 |
Review | Comment | 3 | 8.8 |
Conversation Incentives
Comment | Formatting | Relevance | Reward |
---|---|---|---|
@EresDev when I spoke to the representative at Reloadly, he high… | 6.4content: p: count: 64 score: 1 wordValue: 0.1 formattingMultiplier: 1 | 0.9 | 5.76 |
Speaking of simplifying things: 1. Before permit "rollups"[^1^]… | 12.6content: p: count: 4 score: 1 ol: count: 122 score: 0 li: count: 122 score: 1 wordValue: 0.1 formattingMultiplier: 1 | 0.5 | 6.3 |
Yes. The emphasis being on that they can collect several permits… | 7.7content: h2: count: 54 score: 1 p: count: 23 score: 1 wordValue: 0.1 formattingMultiplier: 1 | 0.3 | 2.31 |
This is correct according to the representative. Unfortunately … | 14.3content: p: count: 143 score: 1 wordValue: 0.1 formattingMultiplier: 1 | - | - |
If it helps I can make a [dedicated group chat](https://t.me/+NC… | 5.5content: p: count: 52 score: 1 a: count: 3 score: 1 wordValue: 0.1 formattingMultiplier: 1 | 0.6 | 3.3 |
They are in the group chat already. | 0.7content: p: count: 7 score: 1 wordValue: 0.1 formattingMultiplier: 1 | - | - |
@rndquu yes sounds good you can create a new issue. | 1content: p: count: 10 score: 1 wordValue: 0.1 formattingMultiplier: 1 | - | - |
Ideally we should only offer tokenized options. I feel like that… | 38.2content: p: count: 53 score: 1 pre: count: 329 score: 0 code: count: 329 score: 1 wordValue: 0.1 formattingMultiplier: 1 | 0.8 | 30.56 |
I generally think new pulls are better to keep shipping | 1content: p: count: 10 score: 1 wordValue: 0.1 formattingMultiplier: 1 | 0.2 | 0.2 |
We should remove this if it's still in our template! | 1content: p: count: 10 score: 1 wordValue: 0.1 formattingMultiplier: 1 | 1 | 1 |
To clarify I meant that the `ts-template` should be upda… | 1.1content: p: count: 10 score: 1 code: count: 1 score: 1 wordValue: 0.1 formattingMultiplier: 1 | 1 | 1.1 |
What about selecting the country based on the city name? Is that… | 6.7content: p: count: 40 score: 1 pre: count: 27 score: 0 code: count: 27 score: 1 wordValue: 0.1 formattingMultiplier: 1 | 1 | 6.7 |
[ 47.25 WXDAI ]
@rndquu
Contributions Overview
View | Contribution | Count | Reward |
---|---|---|---|
Issue | Comment | 10 | 34.45 |
Review | Comment | 6 | 12.8 |
Conversation Incentives
Comment | Formatting | Relevance | Reward |
---|---|---|---|
@EresDev +1 Where exactly did you try it? The card bin is for… | 11content: p: count: 107 score: 1 a: count: 3 score: 1 wordValue: 0.1 formattingMultiplier: 1 | 0.9 | 9.9 |
@0x4007 You mean this flow: 1. We set permit rewards in Ubiqu… | 7.2content: p: count: 5 score: 1 ol: count: 66 score: 0 li: count: 66 score: 1 code: count: 1 score: 1 wordValue: 0.1 formattingMultiplier: 1 | 0.2 | 1.44 |
https://github.com/ubiquibot/conversation-rewards/issues/64 | 0.1content: p: count: 1 score: 1 wordValue: 0.1 formattingMultiplier: 1 | 0.1 | 0.01 |
Right now the card mint flow at https://github.com/ubiquity/pay.… | 14.7content: p: count: 11 score: 1 ol: count: 131 score: 0 li: count: 131 score: 1 code: count: 5 score: 1 wordValue: 0.1 formattingMultiplier: 1 | 0.8 | 11.76 |
So we're going to implement both, right? I mean this flow: -… | 5.8content: p: count: 11 score: 1 ul: count: 47 score: 0 li: count: 47 score: 1 wordValue: 0.1 formattingMultiplier: 1 | 0.7 | 4.06 |
https://github.com/ubiquity/pay.ubq.fi/issues/267 | 0.1content: p: count: 1 score: 1 wordValue: 0.1 formattingMultiplier: 1 | - | - |
Sounds good | 0.2content: p: count: 2 score: 1 wordValue: 0.1 formattingMultiplier: 1 | 0.1 | 0.02 |
Any, it's enough for the 1st feature iteration This is also an … | 6.5content: p: count: 19 score: 1 ol: count: 38 score: 0 li: count: 38 score: 1 code: count: 8 score: 1 wordValue: 0.1 formattingMultiplier: 1 | 0.6 | 3.9 |
@EresDev Just to make it clear, what is the difference between t… | 6.3content: p: count: 21 score: 1 a: count: 6 score: 1 ol: count: 30 score: 0 li: count: 30 score: 1 code: count: 6 score: 1 wordValue: 0.1 formattingMultiplier: 1 | 0.5 | 3.15 |
Today I Learned: github does not automatically close issues as "… | 2.1content: p: count: 21 score: 1 strong: count: 1 score: 0 wordValue: 0.1 formattingMultiplier: 1 | 0.1 | 0.21 |
As far as I understand there might be multiple countries in a si… | 3.4content: p: count: 34 score: 1 wordValue: 0.1 formattingMultiplier: 1 | 1 | 3.4 |
Current approach is pretty fine: 1. Try to get user's country b… | 1.7content: p: count: 5 score: 1 ol: count: 12 score: 0 li: count: 12 score: 1 wordValue: 0.1 formattingMultiplier: 1 | 1 | 1.7 |
`bash .github/workflows/scripts/kebab-case.sh` is no lon… | 1content: p: count: 8 score: 1 code: count: 2 score: 1 wordValue: 0.1 formattingMultiplier: 1 | 1 | 1 |
@EresDev How to QA this PR? 1. Set `RELOADLY_API_CLIENT_ID&… | 2content: p: count: 6 score: 1 ol: count: 9 score: 0 li: count: 9 score: 1 code: count: 4 score: 1 a: count: 1 score: 1 wordValue: 0.1 formattingMultiplier: 1 | 1 | 2 |
@EresDev Could you review https://github.com/EresDevOrg/gift-car… | 0.6content: p: count: 6 score: 1 wordValue: 0.1 formattingMultiplier: 1 | 1 | 0.6 |
@EresDev I managed to run it with production credentials for US… | 4.1content: p: count: 41 score: 1 wordValue: 0.1 formattingMultiplier: 1 | 1 | 4.1 |
[ 2.4 WXDAI ]
@Keyrxng
Contributions Overview
View | Contribution | Count | Reward |
---|---|---|---|
Review | Comment | 2 | 2.4 |
Conversation Incentives
Comment | Formatting | Relevance | Reward |
---|---|---|---|
An oversight, my mistake | 0.4content: p: count: 4 score: 1 wordValue: 0.1 formattingMultiplier: 1 | 1 | 0.4 |
@EresDev I'm sorry I didn't notice you had tagged me here my apo… | 2content: p: count: 20 score: 1 wordValue: 0.1 formattingMultiplier: 1 | 1 | 2 |
|
View | Contribution | Count | Reward |
---|---|---|---|
Issue | Comment | 9 | 93.7 |
Conversation Incentives
Comment | Formatting | Relevance | Reward |
---|---|---|---|
@EresDev when I spoke to the representative at Reloadly, he high... | 6.5 | - | 6.5 |
Speaking of simplifying things:
| 14.8li: count: 2 score: "2" words: 52 | - | 14.8 |
> You mean this flow: > ... > Correct?Yes. The empha... | 8.7hr: count: 1 score: "1" words: 0 | - | 8.7 |
> Yes, because otherwise we risk minting gift cards which ca... | 15.5a: count: 1 score: "1" words: 3 | - | 15.5 |
If it helps I can make a [dedicated group chat](https://t.me/+NC... | 6.2a: count: 1 score: "1" words: 3 | - | 6.2 |
They are in the group chat already. ... | 0.7 | - | 0.7 |
@rndquu yes sounds good you can create a new issue.... | 1 | - | 1 |
> If contributor's country is in the Mastercard SKU list then... | 39.3code: count: 1 score: "1" words: 0 | - | 39.3 |
I generally think new pulls are better to keep shipping... | 1 | - | 1 |
[ 831 WXDAI ]
@EresDev
Contributions Overview
View | Contribution | Count | Reward |
---|---|---|---|
Issue | Specification | 1 | 34.4 |
Issue | Task | 1 | 400 |
Issue | Comment | 9 | 198.6 |
Issue | Comment | 9 | 0 |
Review | Comment | 5 | 132 |
Review | Comment | 5 | 66 |
Conversation Incentives
[ 97.6 WXDAI ]
@rndquu
Contributions Overview
View | Contribution | Count | Reward |
---|---|---|---|
Issue | Comment | 10 | 84.5 |
Review | Comment | 3 | 13.1 |
Conversation Incentives
Comment | Formatting | Relevance | Reward |
---|---|---|---|
@EresDev> Remove the "Also available in" part from the U... | 13.1a: count: 1 score: "1" words: 3 | - | 13.1 |
@0x4007> Before permit "rollups"[1](https://github.com/u... | 14.5a: count: 1 score: "1" words: 1 li: count: 5 score: "5" words: 49 code: count: 1 score: "1" words: 3 | - | 14.5 |
> This is referring to saving permits in the database and the... | 0.8 | - | 0.8 |
> In theory this also means that anybody with ubiquity dollar... | 23.6li: count: 2 score: "2" words: 28 code: count: 5 score: "5" words: 17 | - | 23.6 |
> Some more information from the group chat. > > I h... | 9.1li: count: 3 score: "3" words: 49 | - | 9.1 |
> @rndquu yes sounds good you can create a new issue.http... | 0.9 | - | 0.9 |
> In this issue, I am thinking to just offer the location bas... | 0.2 | - | 0.2 |
> Here, we can probably order international card, because it ... | 8.8li: count: 2 score: "2" words: 24 code: count: 1 score: "1" words: 8 | - | 8.8 |
@EresDev Just to make it clear, what is the difference between t... | 11.5a: count: 2 score: "2" words: 8 li: count: 2 score: "2" words: 35 code: count: 2 score: "2" words: 8 | - | 11.5 |
Today I Learned: github does not automatically close issues as "... | 2 | - | 2 |
@EresDev How to QA this PR?
| 7.5a: count: 1 score: "1" words: 1 li: count: 2 score: "2" words: 32 code: count: 3 score: "3" words: 4 | 0.805 | 7.5 |
@EresDev Could you review https://github.com/EresDevOrg/gift-car... | 1.5 | 0.685 | 1.5 |
@EresDev I managed to run it with production credentials for US... | 4.1 | 0.76 | 4.1 |
May i get a card too |
Currently, we offer all available visa and mastercards provided by Reloadly. There is no geolocation filtering. The bounty hunters can claim their permit in any virtual card. Additionally, Reloadly offers
The goal of this issue is to simplify the feature.
Please note that the virtual cards feature is present in
beta
branch at the moment. But it can move todevelopment
branch anytime. So, keep an eye on that and open a PR accordingly.The text was updated successfully, but these errors were encountered: