-
Notifications
You must be signed in to change notification settings - Fork 1.3k
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
Add new payment method: Australian PayID #4078
Conversation
Thanks for opening this pull request! |
Thanks for your PR and for using the Japan bank transfer as a template. I haven't looked at the code yet, but my initial thoughts are mostly about this claim:
Later in the PR you have:
These statements seem to completely contradict each other. In any case, citation needed for the "not reversible" claim, as it's the most important thing used to evaluate the risk of the payment method. |
Keep in mind chargebacks being possible isn't the end of the world...if possible, they should just be very difficult. In such cases, the payment method can still be added to Bisq, but it will require account signing to lift 0.01 BTC limits. So to proceed we need more clarity and detail about where this payment method really stands with respect to chargeback. |
@mercurytoxic As mentioned by the boring-cyborg please have a look at the Codacy issues: https://app.codacy.com/gh/bisq-network/bisq/pullRequest?prid=5213489 Thanks! |
This pull request has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. |
This issue has been automatically closed because of inactivity. Feel free to reopen it if you think it is still relevant. |
This issue has been automatically closed because of inactivity. Feel free to reopen it if you think it is still relevant. |
There have been codacy issue that need to be addressed. If we want to test it I can take care of fixing them. Re-opening the PR now for discussion. |
I don't think the author of the PR is coming back, so if you could just fix it so it gets merged that would be great. Then I can ask some friends in Australia to start testing it on master |
As per this a chargeback is a mechanism used by financial institutions to revert transactions made with credit and debit cards. Since PayID is effectively a bank transfer, the term and procedure doesn't apply. What can de done is a dispute. Just like a bank transfer there are policies in place, that slightly change from bank to bank, to report and open disputes. This will include submitting information to the sending bank, then sending bank contacting the receiving bank which will launch it's own investigation. This process is not automated and usually takes several weeks. Receiving bank and/or recepient has to agree to return the funds. Effectively, PayID transfers are similar in risk as bank transfers. |
Sure. I remember another Australian user was positive about PayID back when this PR was opened. But we need to figure out how to handle signing, since we haven't introduced any new payment methods since signing was implemented. Since PayID transfers are similar in risk as bank transfers, as @mercurytoxic says above, and AUD is a market that requires signing, this new payment method should require signing too. But the payment method needs time to bootstrap itself first. So it cannot have signing immediately in its first release. @sqrrm is it possible to temporarily exclude a risky payment method in a market where signing is required? Maybe this is something we could address with your proposal on defining trade limits. |
If that is true then the chargeback risk is LOW |
If we have a user that has a signed account and uses the same name on Australian PayID his/her account will be automatically self-signed. That could be our way to bootstrap account signing. |
Nah, account signing sucks. Just let them use bank transfer payment method without signing since the risk of chargeback is low. If we have problems THEN we can require the signing. |
24d07e3
to
faf7f6d
Compare
At the moment the chargeback risk is checked by the combination of currency and payment method. So you can have a payment method (e.g. Australian PayID) in a "mature" market. Unfortunately if we would mark a payment method as one with a chargeback risk later to require account signing, this would render all existing offers invalid. |
@mercurytoxic As I saw you forced push to this branch. I checked the Codacy complaints and remove the patterns that we don't need to enforce. Still there are unnecessary Also you need to resolve the conflicts with master above to make the PR mergable. Thanks! |
@ripcurlx I think it wouldn't be too hard to add a per payment method check for signing required or not. The less signing needed the better for everyone. Transition from a no signing needed to it being needed might be not so smooth, but I would rather try it out without first and hopefully never need the signing. |
Superseded by #4742 |
I would like to suggest that the PayID maxTradePeriod be increased from 86400000 ms to 172800000 ms (48 hours). This is because around 25% of the time banks like to put a 24 hour hold on PayID payments to new recipients. Having the PayID maxTradePeriod at exactly 24 hrs leads to more mediations under this circumstance. If the bank puts no hold on the payment then the payment is received within 1 minute, if the bank puts a hold on it the payment will be received within 24 hours of it being made. When the bank puts a hold in place one should expect the trading period to be around 36 hours on average (assuming it takes half a day for the trader to notice they have traded and initiate the payment). |
Australia PayID 🇦🇺
Summary
This PR adds support for Bisq trades using the Australian New Payments Platform (NPP)[1], known casually by everyone in Australia as "PayID".Overview
A PayID is something easy to remember like a phone number, email address or an Australian Business Number (ABN), that you can securely link to your bank, credit union or building society account. Then when you want somebody to transfer funds into your account, you can give them your PayID instead of your BSB and account number. To pay another person’s PayID you just need to log into your participating financial institutions internet or mobile banking.[2]
Transfers using PayID are usually near instant, compared to National Bank Transfers that in Australia usually take 1-2 business days for the deposits to clear. (Depends on individual bank policies, frequently first time transfers above a certain amount might have a 24 hour hold)
A great number of Australian banks support PayID
Security
Privacy
How it works
Account Information
To send a PayID transfer, the sender needs the following information:
Sending a Transfer
After the sender inputs the PayID in their online banking, the receiving account holder's name is displayed to the sender so they can verify they are sending funds to the correct account before they finalize the transaction.
The transfer is usually completed instantly, or on the next business day if it's the first time sending to a new PayID or one of the participating banks does not fully support PayID and depends on fallback BSB (routing) and account numbers.
Fraud Risks
Therefore, the Australian PayID Transfer payment method is requested to be added with "LOW" risk setting, which limits each trade to 0.5 BTC by default, and after multiplying by the current DAO parameter (200%), this means Australian PayID Transfers will be limited to 1 BTC per trade at this time of this PR.
Footnotes
Screenshots
Create Account
Form empty
Form Filled
Information/Confirmation popup
Display Account
Offer View
Maker view
Takers view
Trade in progress
Implementation Details
Input Validaton
Public methods emailvalidator else validatePhoneNumberJSON contract payload