To register a new account on this wiki, contact us

Making payments using Free Software: Difference between revisions

From FSCI Wiki
Jump to navigation Jump to search
LibreFin: Added link to main "website"
Unified Payments Interface (UPI): document how we can receive change with a generated QR code for our UPI id
Tags: Mobile edit Mobile web edit Advanced mobile edit
 
(3 intermediate revisions by one other user not shown)
Line 21: Line 21:
[[NUUP]] is a service by the NCPI that allows you to make UPI transactions on any 2G capable phone, by dialling *99# from the number linked to your bank account.
[[NUUP]] is a service by the NCPI that allows you to make UPI transactions on any 2G capable phone, by dialling *99# from the number linked to your bank account.


While NUUP is theoretically supposed to work on all USSD supporting carriers in India (all the provider apart from Jio), the service is not very well maintained and keeps going down, or, in some cases, doesn't work at all. Specifically, it has never been observed to work with BSNL, is often down with Airtel, and works reasonably well with Vi but with a bug preventing one from entering new UPI IDs (so one has to always pay using a phone number)
While NUUP is theoretically supposed to work on all USSD supporting carriers in India (all the provider apart from Jio), the service is not very well maintained and keeps going down, or, in some cases, doesn't work at all. Specifically, it has never been observed to work with BSNL, is often down with Airtel, and works reasonably well with Vi but with a bug preventing one from entering new UPI IDs (so one has to always pay using a UPI number, hoping the intended recipient has configured it)


=== 123PAY ===
=== 123PAY ===
''This service has not been tested by the community. Please report back here if you try it out.''


123PAY<sup>[https://www.npci.org.in/what-we-do/upi-123pay/product-overview]</sup> is a service similar to NUUP, but where you dial a phone number and interact through IVRS (Interactive Voice Responder Service) instead of through a USSD menu. Some banks provide their own bank-specific numbers for a similar service.
123PAY<sup>[https://www.npci.org.in/what-we-do/upi-123pay/product-overview]</sup> is a service similar to NUUP, but where you dial a phone number and interact through IVRS (Interactive Voice Responder Service) instead of through a USSD menu. Some banks provide their own bank-specific numbers for a similar service.
Line 30: Line 31:


The [https://librefin.in LibreFin] project (under construction) aims to create a Free Software UPI app using reverse-engineered APIs. It is expected to be demoed at the IndiaFOSS 2025 conference in Bengaluru<sup>[https://fossunited.org/c/indiafoss/2025/cfp/c1ujjkgd9c]</sup>.
The [https://librefin.in LibreFin] project (under construction) aims to create a Free Software UPI app using reverse-engineered APIs. It is expected to be demoed at the IndiaFOSS 2025 conference in Bengaluru<sup>[https://fossunited.org/c/indiafoss/2025/cfp/c1ujjkgd9c]</sup>.
=== Create a QR to receive money ===
If you carry cash, but don't have change, you can create a QR for your UPI id. Take UPI address from an existing QR, replace UPI id with yours and then generate QR for your UPI urls using any online QR generators.
You can show the image on your phone or carry a print out. This can work well for autos and taxies (tried and tested). But in shops it may not work if they have setup to receive only. You can try giving cash to someone, either the worker or another willing customer, they can then do two QR payments (one to shop and then return change to you).


== Immediate Payment Service (IMPS) ==
== Immediate Payment Service (IMPS) ==


An alternative to UPI is to use IMPS with phone number beneficiary. IMPS is actually the base layer on which UPI is built, and can be accessed in a platform-independent manner through Net Banking.
An alternative to UPI is to use IMPS with phone number beneficiary. IMPS is actually the base layer on which UPI is built, and can be accessed in a platform-independent manner through Net Banking. Due to this, people who have activated UPI on their bank account would have automatically activated IMPS as well.


IMPS used to require a full bank account number and IFSC code to make a transfer. However, in February 2024 <sup>[https://pavzi.com/imps-new-rules-2024-allowed-to-transfer-upto-5lacks-without-account-number/]</sup>, they added the option to pay using a phone number and bank name instead. This makes it more suitable for quick payments as people are more likely to remember their phone number than their account number (let alone IFSC code!). Now, if we know someone's phone number and their bank name, we can transfer using IMPS over Net Banking.
IMPS used to require a full bank account number and IFSC code to make a transfer. However, in February 2024 <sup>[https://pavzi.com/imps-new-rules-2024-allowed-to-transfer-upto-5lacks-without-account-number/]</sup>, they added the option to pay using a phone number and bank name instead. This makes it more suitable for quick payments as people are more likely to remember their phone number than their account number (let alone IFSC code!). Now, if we know someone's phone number and their bank name, we can transfer using IMPS over Net Banking.

Latest revision as of 13:50, 27 September 2025

As the digital payment landscape moves towards proprietary and centralised solutions, the options are somewhat limited for people running Free Software on their devices. Most payment services require installing an "app", and furthermore such apps are usually only available for Android and iOS devices. Furthermore, payment providers often add additional restrictions preventing their app from running on other Android-compatible OSes like LineageOS.

This page documents the available payment options in India for people using LineageOS, GrapheneOS, Mobian, or other non-Android and -iOS platforms.

Unified Payments Interface (UPI)

UPI is a payments platform run by the National Payments Corporation of India (NPCI), a private grouping of financial institutions backed by the Reserve Bank of India. The NPCI allows third-party providers to make UPI based payment apps, which facilitate money transfers between banks. By promoting the use of QR codes instead of manually entering account identifiers, UPI has made digital payments convenient enough that has become widely popular in parts of the country.

You can make a UPI payment using one of the following identifiers:

  • A UPI ID of the form `username@provider`
  • A UPI number which can be either the 10-digit mobile number linked to your bank, or any unique 8- or 9-digit number of your choosing
  • Your account number and IFSC code (usually the most cumbersome if you want to make a quick payment at a store)

Most UPI apps are proprietary and run a mandatory set of core SDK code provided by the NPCI. However, there are other ways to interact with the system as well, including NUUP, LibreFin, and 123Pay.

National Unified USSD Platform (NUUP, also known an *99#)

Main article: NUUP

NUUP is a service by the NCPI that allows you to make UPI transactions on any 2G capable phone, by dialling *99# from the number linked to your bank account.

While NUUP is theoretically supposed to work on all USSD supporting carriers in India (all the provider apart from Jio), the service is not very well maintained and keeps going down, or, in some cases, doesn't work at all. Specifically, it has never been observed to work with BSNL, is often down with Airtel, and works reasonably well with Vi but with a bug preventing one from entering new UPI IDs (so one has to always pay using a UPI number, hoping the intended recipient has configured it)

123PAY

This service has not been tested by the community. Please report back here if you try it out.

123PAY[1] is a service similar to NUUP, but where you dial a phone number and interact through IVRS (Interactive Voice Responder Service) instead of through a USSD menu. Some banks provide their own bank-specific numbers for a similar service.

LibreFin

The LibreFin project (under construction) aims to create a Free Software UPI app using reverse-engineered APIs. It is expected to be demoed at the IndiaFOSS 2025 conference in Bengaluru[2].

Create a QR to receive money

If you carry cash, but don't have change, you can create a QR for your UPI id. Take UPI address from an existing QR, replace UPI id with yours and then generate QR for your UPI urls using any online QR generators.

You can show the image on your phone or carry a print out. This can work well for autos and taxies (tried and tested). But in shops it may not work if they have setup to receive only. You can try giving cash to someone, either the worker or another willing customer, they can then do two QR payments (one to shop and then return change to you).

Immediate Payment Service (IMPS)

An alternative to UPI is to use IMPS with phone number beneficiary. IMPS is actually the base layer on which UPI is built, and can be accessed in a platform-independent manner through Net Banking. Due to this, people who have activated UPI on their bank account would have automatically activated IMPS as well.

IMPS used to require a full bank account number and IFSC code to make a transfer. However, in February 2024 [3], they added the option to pay using a phone number and bank name instead. This makes it more suitable for quick payments as people are more likely to remember their phone number than their account number (let alone IFSC code!). Now, if we know someone's phone number and their bank name, we can transfer using IMPS over Net Banking.

It appears that not all Net Banking interfaces support the "phone number + bank name" option, possibly because the option is relatively new and banks may not have got around to upgrading their Net Banking interfaces yet. Additionally, some banks require adding a beneficiary first and waiting for four hours to be added, or have additional restrictions for IMPS Net Banking that are not present when using IMPS via their proprietary mobile app.

Supported banks

Banks where instant payment using phone number + bank name is known to be working through Net Banking:

  • Federal Bank
  • Bank of Baroda
  • Indian Bank - they have both normal IMPS where you wait to add beneficiary, and "IMPS 24x7 - without adding beneficiary" that works instantly

Unsupported banks

Banks where instant payments using phone number + bank name is not possible through Net Banking:

  • ICICI Bank - they still ask for MMID in addition to phone number.
  • HDFC
  • State Bank of India (SBI)
  • City Union Bank (CUB) - they present a large form with lots of details. Specifically, IFSC code and account number seems to be mandatory (mobile number field also there, along with email, but there was no option to enter just the bank name)