bisq-network / growth

Bisq exchange growth experiments
https://bisq.wiki/Growth_team
25 stars 11 forks source link

Add Immediate Payment Service (IMPS) as a payment method (popular mobile payment service in India) #224

Closed pazza83 closed 3 years ago

pazza83 commented 3 years ago

Immediate Payment Service (IMPS)

References:

Why

India has the 5th largest economy in the world by GDP, yet Bisq does not have many options for people in India to trade. It would be good to give people in India more access to trading on Bisq.

Immediate Payment Service (IMPS) is an instant payment inter-bank electronic funds transfer system in India. IMPS offers an inter-bank electronic fund transfer service through mobile phones. It is the Indian mobile equivalent of SEPA / Faster Payments.

IMPS is managed by the National Payments Corporation of India. This is an umbrella organization for operating retail payments and settlement systems in India.

Around 200 million IMPS transactions amounting to roughly US$20 billion of transaction amount happen every month in India.

IMPS is already included on almost all other P2P cryto exchanges.

Region

India

Currencies

INR

Chargeback risk

Low.

Banks cannot reverse an IMPS payment, unless they have an approval from the beneficiary. According the IMPS rules it is the responsibility of the sender to enter the correct beneficiary account number and other details while making payment.

Size of user base

300 million people in India have access to a bank account and smart phone that can be registered for IMPS. 200 miliion transactions are sent a month.

Data requirements

In order to make a payment or transfer funds through IMPS, you must have at least one of the following details about the beneficiary:

Beneficiary name Bank account number IFSC code Mobile number Mobile Money Identifier (MMID) - 7 digit number linking the user's mobile to their bank account

Verification

Payment is made on bank smart phone app. Screenshots / videos can be used for verification.

SMS messages are also sent to payer and payee to confirm payment.

Duration

Payments are immediate. 24/7, 365 days a year.

Trade time should be set to 24 hours.

Fees

Low between 5-15 INR ~ $0.07 - 0.21 USD per transaction.

Fraud risk

Low

Payment amounts

Maximum of 200,000 INR can be sent per transaction. This is approximately $2,700 USD.

Maximum of 1,000,000 INR can be sent per day. This is approximately $13,500 USD.

Minimum payment is 1 INR ~ $0.01 USD

pazza83 commented 3 years ago

See similar payment method UPI proposal here: https://github.com/bisq-network/growth/issues/225

pazza83 commented 3 years ago

See similar payment method PayTM proposal here: #226

pazza83 commented 3 years ago

IMPS has been scored for inclusion to Bisq:

Essential Desirable Definite No’s
Very low risk of chargeback No risk of chargeback < very low risk of chargeback
Way to verify the sender in the received payment Way to verify the sender in the received payment and ability to enter a reference No way to verify the sender in the received payment
Trade time less than one week Instant payment Trade time more than one week
Singular Fiat currency Multi-currency Not a payment method for fiat currency
Significant user base Large user base No significant user base
High usability High usability and great user experience < high amount usability
No KYC required for sending and receiving payments No KYC required for sending and receiving payments, allows users to trade with upmost privacy. Minimal identifying information as possible (no names, email, phone etc required) Some KYC required (proof of address, ID, selfie) for sending and receiving payments
Low risk of scam attempts Very low risk of scam attempts < low risk of scam attempts
Traders can provide evidence of payment / receipt Traders can provide evidence of payment / receipt and Verification of payment can be made using PageSigner or similar Traders will be unable to provide evidence of payment / receipt
Minimum limit at least equal to at least account limits protocols No minimum limits Minimum limit not able to achieve account limits protocols
Maximum limits equal to at least 0.01 BTC Large payment limits up to 2 BTC Maximum limit is less than 0.01 BTC
Likely to increase liquidity Likely to increase liquidity and open markets for different countries and currencies Likely to decrease liquidity
Low risk of mediation Very low risk of mediation < low risk of mediation
Low risk for traders from government agencies No risk for traders from government agencies < low risk for traders from government agencies
Fees should not be a barrier to trading No fees for transactions Fees will be a barrier to trading
Only minor changes needed to trade protocol No changes needed to trade protocol > Minor changes needed to trade protocol

Score: 23/32 Percentage: 71.86%

pazza83 commented 3 years ago

Immediate Payment Service (IMPS) - Proposed National Currency Payment Method

I am proposing that Immediate Payment Service (IMPS) be added as a national currency payment method.

@refund-agent2, @huey735, @leo816 please let me know if you have any questions as to how Immediate Payment Service (IMPS) will be mediated / arbitrated. If you have any objection please let me know by 31 May 2021.

Date proposal being made: 01.05.21 Date feedback to be provided by: 01.05.21

Name of payment method: Immediate Payment Service (IMPS)

Required fields:

Country: India Mobile Money Identifier (MMID)

Signing required: No

Regions accepted: India

Currencies accepted: INR

Bisq Limits: eg 0.25 BTC

Trade window: 1 day

Any relevant information for mediators / arbitrators: Maximum of 200,000 INR can be sent per transaction. This is approximately $2,700 USD. Maximum of 1,000,000 INR can be sent per day. This is approximately $13,500 USD.

Any relevant information for devs: No

Any relevant information for users: Maximum amount per transaction is 200,000 INR , payments above this will need to be sent as multiple transactions.

Screenshot of expected GUI: TBC

pazza83 commented 3 years ago

Here is the XD for IMPS, it should be straight forward to add:

Payment method - IMPS

Aman-1412 commented 3 years ago

Hi @pazza83,

thanks for pushing for new payment methods available in India!

Just to add to this, you do not necessarily need an MMID to transfer using IMPS. Either MMID OR Bank account number + IFSC is enough for an IMPS transfer.

It is already possible to do an IMPS(or UPI for that matter) transfer for the Bank Account number + IFSC code combo using Bisq's currently available National Bank Transfer, as shown here in this video on Bisq's youtube channel

Back to the point, one need not necessarily have an MMID for an IMPS transfer. I've never had 1 hence I've never sent money using the MMID route. But I still do IMPS transfers using A/c and IFSC. So just to reiterate, I think MMID OR A/c + IFSC, should be the input fields when choosing IMPS.

Quoting NPCI's Product overview for IMPS , "Hence on the merit of the feedback received from the banking community as well as to cater the above mentioned need, the IMPS funds transfer has been made possible using Beneficiary account number and IFS code as well, in addition to Beneficiary mobile number and MMID."

pazza83 commented 3 years ago

Hi @Aman-1412 many thanks for the info.

Just to add to this, you do not necessarily need an MMID to transfer using IMPS. Either MMID OR Bank account number + IFSC is enough for an IMPS transfer.

Thanks, I saw that but thought it would be easier to simplify if everyone just had to provide their MMID. Also less data needs to be provided. Let me know if there would be any issues with this, such as not all users having one.

One option would be to add the requirement for 'MMID' OR 'Bank account number' AND 'IFSC'.

Let me know your thoughts.

Aman-1412 commented 3 years ago

Thanks, I saw that but thought it would be easier to simplify if everyone just had to provide their MMID. Also less data needs to be provided. Let me know if there would be any issues with this, such as not all users having one.

Yes, that's exactly it. Everyone WILL have an A/c and an IFSC, but one may not necessarily have an MMID. One has to go to the bank/perform some extra steps on the online banking website(if supported) to get an MMID. So yes, not all users would have it. But everyone MUST have an A/c and IFSC as long as they have a bank account.

One option would be to add the requirement for 'MMID' OR 'Bank account number' AND 'IFSC'.

I agree with this. I think this makes more sense. Maybe a radio button with an option to choose MMID vs A/c +IFSC would make it easier for the UX.

pazza83 commented 3 years ago

Hi @Aman-1412

Thanks for quick reply.

What about leaving MMID off, and instead just going for 'Bank account number' AND 'IFSC'?

Might be less confusing for users.

Aman-1412 commented 3 years ago

I think that's fine too. Personally, I and the people close to me have always used A/c +IFSC. Never used MMID to transfer funds myself. I'm sure there are some people out there who use MMID too (mobile banking users for example). 1.4b people out there. Never know what they prefer.

I'd personally prefer having both the options open for convenience, but if we had to choose one - A/c +IFSC is objectively a better choice over MMID, for maximum compatibility.

pazza83 commented 3 years ago

Thanks, I will include these edits in the design and remove MMID

pazza83 commented 3 years ago

Hi @jmacxx please see the updated GUI design based on comments from @Aman-1412

IMPS2

pazza83 commented 3 years ago

Information required for Bisq software strings:

Hi @jmacxx here is the information for the strings.

Let me know if you need anything else:

Special info about any of the inputs required for creating the payment account:

Please make sure to include your:

These details should match your bank account that you will use for sending / receiving payments.

Please be aware there is a maximum of Rs. 200,000 that can be sent per transaction. If you are trading over this amount multiple transactions will be needed. However be aware their is a maximum limit of Rs. 1,000,000 that can be sent per day.

Some banks have different limits for their customers.

Special items to be aware about when sending payments (for BTC Buyers):

Please send payment only to the account details provided in Bisq.

The maximum trade size is Rs. 200,000 per transaction.

If your trade is over Rs. 200,000 you will have to make multiple transfers. However be aware their is a maximum limit of Rs. 1,000,000 that can be sent per day.

Please note some banks have different limits for their customers.

Special items to be aware about when receiving payments (for BTC Sellers):

If you intend to receive over Rs. 200,000 per trade you should expect the buyer to have to make multiple transfers. However be aware their is a maximum limit of Rs. 1,000,000 that can be sent per day.

Please note some banks have different limits for their customers.

ghost commented 3 years ago

Screenshots at https://gist.github.com/jmacxx/fd60d9f343e88f3d3b806a2d893be487#gistcomment-3902119

pazza83 commented 3 years ago

wiki completed: https://bisq.wiki/IMPS