Mozilla's next target: fixing web payments

Martin Brinkmann
Apr 7, 2013

Internet users have a couple of options when it comes to making payments on today's Internet. They can pay by credit card, use a payment processing system like PayPal or Google Checkout, or pay the individual or company by transferring money the conventional way via bank transfers or other means.

The current system is problematic for users for several reasons. First, users can only select between a couple of payment methods that the services or shopping websites have implemented. What one site may accept may not be accepted by others, and if you happen to be in the wrong country, you may not even be able to use a particular payment option at all.

For direct payments via credit cards, the full credit card number, verification code and expiration date need to be entered and transferred to the company selling you a service or product. While you may trust Amazon or Newegg with those information, you may prefer other options when it comes to smaller stores that you may not have used or even heard about before.

Merchants on the other hand have to implement and maintain payment processing options on their websites which often involves fees that need to be paid, and limitations. The products a site is offering may disqualify it from using particular payment processors.

Payment processors that mitigate some of these issues, PayPal for instance, are not really the solution either as they do not integrate well into web services. If you select PayPal as your payment option, you are redirected to the PayPal website where you need to confirm the payment before you are taken back to the merchant's site.

Mozilla wants to fix web payments, and a first step towards that goal is the implementation of the new JavaScript API navigator.mozPay() in Firefox OS that enables web apps to accept payments. You are probably wondering how this differs from current payment options on the Internet.

The core idea here is to provide a decentralized platform for merchants and users alike to make payments "easy and secure on web devices" but still as flexible as the "checkout buttons for merchants".

navigator.mozPay() is a JavaScript API inspired by but modified for things like multiple payment providers and carrier billing. When a web app invokes navigator.mozPay() in Firefox OS, the device shows a secure window with a concise UI. After authenticating, the user can easily charge the payment to her mobile carrier bill or credit card. When completed, the app delivers the product. Repeat purchases are quick and easy.

The blog article indicates that there is still lots of work to be done. It is an experimental API for now, but Mozilla plans to work with other companies through the W3C to create a common API that supports web payments. Mozilla intends to integrate the API into Firefox for Android and the desktop Firefox versions as well.


Tutorials & Tips

Previous Post: «
Next Post: «


  1. john clas said on April 8, 2013 at 8:44 am

    it seems strange that the platform chosen to make things safe is
    java. from all the news over the past month or two, java cant be
    made safe and even the government is saying to shut it off.

    1. Martin Brinkmann said on April 8, 2013 at 9:09 am

      John it’s JavaScript, not Java. The two are different technologies.

Leave a Reply

Check the box to consent to your data being stored in line with the guidelines set out in our privacy policy

We love comments and welcome thoughtful and civilized discussion. Rudeness and personal attacks will not be tolerated. Please stay on-topic.
Please note that your comment may not appear immediately after you post it.