Payment of ₹ requested by HONEY VIG. Click the link to pay securely via Razorpay: Make 5000 payment Payment of ₹ requested by HONEY VIG. Click the link to pay securely via Razorpay: Make 5000 payment ⭐ If you would like to buy me a coffee, well thank you very much that is mega kind! : https://www.buymeacoffee.com/honeyvig
Hire a web Developer and Designer to upgrade and boost your online presence with cutting edge Technologies

Friday, June 17, 2022

What’s That (Dev) Tool?

 How many browser DevTools panels do you commonly use in your day-to-day web development? One? Three? Probably not that many more. In this article, her's spotlight on a number of tools that people don’t use or even know about. Let’s dive in!

Have you ever looked to see what other tools were available to you within the DevTools toolbox? You’re probably using the same few panels over and over again — I know I am!

It turns out there are more than thirty (30!) individual panels in Chrome DevTools (as well as other Chromium-based browsers, such as Edge). Safari and Firefox have fewer panels but still probably more than you use on any given day.

 When I realized this, it gave me an idea for a silly game where you’d try to name as many panels as you could in under one minute. Play it here and try your luck (no cheating, OK?): What’s That Tool?

 

This game is silly, of course. As a web developer, remembering the exact names of each and every tool in DevTools isn’t important. It’s more important to know how to use these tools when needed.

But the game does prove a point: there are many more tools than what people use or even know about! The whole goal of this game is — by the time the minute is gone and the full list is displayed — to realize, “oh wow, that’s a lot of tools I had no idea even existed.”

So, why are there so many? Let’s face it, DevTools is crammed with buttons, tabs, and features. How did we get here, and is there a way out?

The Story Of An Explosion

In the early 2000s, web development was very different than it is now. Back then, most of the complexity lay in generating the right HTML code from your server. The browsers’ ability to “view source” was enough to debug the odd table colspan problems. JavaScript was only getting started on the web, and CSS was nowhere near the feature-full language it is now.

So, on top of the old alert() debugging trick, the very few tools we used for front-end code debugging were very specialized; they only did one thing. Venkman only did JavaScript debugging, Aardvark was focused on inspecting elements, and Console2 displayed nice JavaScript log messages.

Joe Hewitt brought it all together under one tool called Firebug which was a Firefox extension. It was an absolute revolution for web developers throughout the world! Around 2010, Firebug was probably the most used front-end debugging tool, and Firefox was a dominant browser. Crazy! Right?

Even if you have never used Firebug and started your web development journey in more recent times, I’m willing to bet this user interface feels familiar.

Though the DevTools we use now aren’t very different from what Firebug used to look like, it felt like we had fewer things to worry about back then and, therefore, fewer tools to help them with.

As the screenshot above shows, there weren’t many tools at all:

  • Console to view logs and execute JavaScript,
  • HTML tab to view and edit the page’s DOM and the applied CSS styles,
  • JavaScript debugger,
  • Network tab to check the downloaded resources and HTTP requests.

Fast forward to 15 years in the future, to now. The user interface of the browser tools we use hasn’t changed much, but the sheer number of panels skyrocketed! Here’s a quick and incomplete (and very approximative) history of when new panels got introduced in Chrome DevTools:

YearPanels
2008Console, Elements, Sources, Network, JavaScript profiler
2010Performance (called Timeline at the time)
2013Rendering, Layers
2014CSS Overview, Network Conditions
2015Security, Memory
2016Animations
2017Coverage, Lighthouse (called Audits at the time), Performance Monitor, Network Request Blocking
2018Changes, Accessibility
2020Media, WebAuthn, WebAudio, Issues
2021Memory Inspector, Recorder
2022Performance Insights

There are many reasons why the number of new panels keeps growing. Some of them are good, while others are more questionable:

  • The number of features and APIs available to the Web platform is constantly and quickly increasing. Now, there are many more things a web developer can do on the web than 15 years ago. Some of those things can’t easily be debugged with the 4 or 5 tools we had back then, thus it required new panels in DevTools.
  • Our discipline is way more developed than it used to be. Front-end web development was maybe regarded as a little less interesting or important 15 years ago. It has now proven itself as a much deeper field of computer engineering that requires knowledge of not only programming but also performance optimization, accessibility, user experience, progressive enhancements, and more.
    These things tend to sometimes require specialized tools too.
  • People who write the code for the browsers and DevTools also need tools themselves, and sometimes they end up as new panels. The Protocol Monitor panel in Chromium is a great example of this.
  • Deleting things is really hard! You’re bound to break people’s workflows if you do it. So, things tend to accumulate over time. Chrome, for example, has three tools to do performance optimizations: Performance, Performance Insights, and JavaScript profiler.
  • Finally, there seems to be a general tendency to add new things rather than improve what’s already in place. I get it; it’s more exciting to most people to build new things rather than fix bugs. But it tends to make the software more complicated over a long period of time. And this has most probably been at play in DevTools, too.

In any case, we’re here now with probably what’s one of the most advanced tooling suites any application platform could dream of. But it’s also one of the most complex that no one uses to its full potential.

Is This A Problem?

Yes! Put simply, DevTools is a very complicated product, and its user interface can be scary.

Where other products have five main user scenarios, DevTools has dozens, if not hundreds. Do you need to simulate a mobile screen? Detect color contrast? Convert between font units? See JSON responses? DevTools can do it all! And these are just a few random examples.

So, with that many options and features, it isn’t a surprise that the user interface is complex so much that new users can feel very overwhelmed in their first-run experience. But even experienced users don’t necessarily know what’s available outside of the same few panels they’re used to.

This is starting to become a serious usability problem, in my opinion, one that may sometimes discourage new people in their learning journey. People coming to DevTools today are likely to be used to newer development products that are much easier to use. The digital tool space is undergoing a big change in this direction, and the browser DevTools haven’t started moving yet.

This isn’t a simple problem to solve either. As I said before, there are some really good reasons why we need a lot of specialized tooling. So, the complexity is needed, but I believe it should be opt-in rather than opt-out!

Indeed, the DevTools learning curve is getting very steep because so much information is presented to users right from the start, and people have to learn to ignore the parts they don’t know about or think they don’t need.

Why Don’t We Just Clean It All Up?

Well, it’s complicated. There are many user scenarios built in DevTools, and there are probably as many workflows as there are people using DevTools out there. Even the most rarely used tools are here for a reason, and the few people who use them may depend on them.

In my experience working on DevTools, removing old/un-maintained/rarely used panels for the sake of making the codebase easier to work with always proved to be a bad idea, especially when done without enough customer research.

In fact, while I worked on Firefox, we tried removing the Fonts panel at some point in Firefox DevTools, and the response was pretty instant and strong — so much that we put it back in! We lacked the necessary customer understanding of how this tool was being used and what unique scenarios it supported.

In 2016, the 3D view panel had to be removed because it wasn’t supported anymore by the new (back then) Firefox architecture. To this day, more than six years later, people still complain that it’s gone (note that you can still use it in Edge)!

As a final example, the Chrome team removed the Properties sidebar pane in 2020 but later added it again after seeing how much people needed it.

Usage numbers alone aren’t a good measure of a tool’s worth. Some tools may be used by a few people only, but they may depend on them to do their jobs. Proper user research and understanding of the various user roles and scenarios (and DevTools has a lot of them!) are needed to be able to simplify the product.

A Way Out?

I want to propose two directions that I think have a lot of potential when it comes to improving the situation with DevTools:

  1. simplifying the DevTools core and opening it up to more powerful extensions, so that users make their own tools;
  2. being bold and taking risks with a radically user-friendly user interface.

A Powerful But Simple Core, Boosted With Extensions

Visual Studio Code is such an amazing product! Many people use it and not only web developers. It’s built on a very strong core that can be extended tremendously.

This way, the people who work on VS Code don’t have to worry about all of the features that people might need. VS Code is a bit like DevTools in the sense that no two people have the same needs and workflows, and there are hundreds of ways to use the product.

So, the team’s job is to build a solid foundation that allows basic editing and top that up with an extension API that lets other people dig deep into the platform and add extra features.

There are many advantages to this, but one that is of particular interest to me here is that complexity is opt-in. When you install VS Code the first time, it’s not overwhelming. It’s a text editor, and you can use it to edit text right off the bat. But if your project has special needs, like checking code quality or doing some custom syntax highlighting, then you can install all the fancy extensions you want and get the extra functionality you need.

The VS Code extension API goes really deep into how much you can customize the editor, and I believe this is largely responsible for its success.

DevTools, however, is built differently. You can also install extensions in the browser to add new panels to DevTools, but there aren’t very many useful extensions available outside of the major framework ones (React, for example). The teams who work on DevTools are the ones who pretty much do all the tools that a web developer might need.

By using the browser extensions API, creating a new panel in DevTools isn’t too hard, but the API isn’t as advanced as in VS Code. In particular, there is no way to extend the existing tools to augment their functionality. This is a serious limitation that I think is responsible for the low number of useful extensions we have at our disposal.

As an example, the amazing Motions DevTools extension allows you to view and edit animations on the web. But it’s limited to its own panel container, and it can’t integrate with the Elements panel right next to it, which would have been useful to simplify user workflows and re-use existing components, such as the color picker.

Motion DevTools overview trailer

I believe we need to go further than that. We need a more powerful set of APIs that makes it possible to create the specialized features that some people might need without complexifying the default DevTools experience for everyone else.

The Extensible Web Manifesto is very similar to this approach. It advocates for providing low-level capabilities for third-party developers to create their own experiences before they — perhaps one day — become part of the core if they prove to be popular.

Taking Risks And Designing A Radically User-Friendly UI

Another very much-needed way to move forward and improve the status of our DevTools is to be willing to take a few risks, be bold, and test new UI ideas.

As I said in the intro, the shape of DevTools hasn’t really changed in about 15 years. I think we’re very much overdue for at least some re-design. We need to bring the UI into the 2020s, start using more modern interface patterns, and make the overall experience less daunting.

The folks working on Safari Web Inspector at Apple tried something like this around 2013. They applied some of their design principles from other products like XCode or iTunes in an attempt to simplify their DevTools toolbar.

Although they have now gone back to a more traditional tabbed navigation which seems to work better with developers, I appreciate this early attempt to make a more user-friendly interface that’s also more consistent with what people knew at the time.

This also goes to show that very special care needs to be taken to bring developers along a journey of user interface change in DevTools.

This brings me to the team working on the Edge DevTools now (which, full disclosure, I am part of). I believe this is currently the only team doing something in this area.

Our current experiment is called Focus Mode, and it is effectively the first attempt at redesigning the entire DevTools product UI.

Focus Mode is available to users of DevTools on the Canary and Dev pre-release channels of Microsoft Edge by enabling the “Focus Mode” experiment from the DevTools Settings. Most users of these channels should in fact already have it on, as our team is gradually rolling out the feature and listening to user feedback in order to ensure this is not disruptive to existing workflows and a welcome change.

Based on this feedback, we will continue rolling out Focus Mode to users of the Beta channel and eventually to the normal release version of Edge.

Now, it might not seem like a big change at first, but this is only a first step in an iterative approach to creating a more approachable user interface. Again, changing things in this product is complicated, so our team is taking things slow.

But if you look closely, there are a few major changes to the UI that try to make things less cluttered and more streamlined.

The most visible changes are located in the top toolbar. Here is an animation showing a comparison of what the toolbar looks like with and without Focus Mode:

  • The list of warnings, errors, and infos is now gone from the toolbar, and instead, it appears as colored badges on the Console and Issues panel tabs, removing some clutter.
  • The Settings, Feedback, and main menu icons have been grouped under just one menu button in the top-right corner, further reducing clutter.
  • Tabs now have icons, so they’re easier to see and tell apart.

Here are a few more things coming with Focus Mode.

The + button in the toolbar shows all available tools with their icons making it easier to re-open a tool you’ve closed before and maybe more inviting to try tools you haven’t tried yet.

It’s also possible to switch the tabs to a vertical orientation. Being positioned to the left and hiding the labels further reduces the noise in the central part of the window, letting you focus on the code. Additionally, it matches UI patterns that people are growing used to in other tools (for example, the Activity bar in VS Code or vertical tabs in Edge).

And finally, the drawer in DevTools was re-designed. The drawer is this area of the user interface that appears at the bottom when you press the Esc key on the keyboard, and that normally contains the Console.

It was introduced as a way to have access to the Console at the same time as other tools, and all browser DevTools have this now. But over the years, the Chrome team added more and more things to the drawer, in particular secondary tools that were useful but not quite popular enough for a spot on the main tab bar (e.g., the Rendering panel was added there).

I think it’s come to a point where it’s hard to know for sure which tool is available in which area. Edge — with Focus Mode — is taking a different approach. The drawer is now called Quick View, which is always visible at the bottom of the toolbox (so you don’t even have to know to press Escape) and can be used to display any tool you want.

I’m very excited about where Focus Mode is going, and I can’t wait for our team to start exploring what’s next in this area.

If you want to try Focus Mode out, make sure you have a copy of Edge (you can also get a pre-release version if you prefer to have the latest changes), open DevTools, and if you don’t already have it ON, press F1, then go to Experiments and check the Focus Mode box.

Let the team know what you think about it — and if you have other ideas — by filing new issues on our DevTools GitHub repository.

I believe that a user-friendly DevTools that is both more welcoming to learners and inclusive of everyone’s needs is possible, and together, we can make it happen. As a community, let’s demand more from our friendly DevTools teams!

There are full-time dedicated DevTools product engineering teams working for each browser vendor. They keep adding new features and fixing bugs, but they can only do a good job with our collective help.

Tell them if the UI doesn’t work for you. Let them know about your most common workflows. How many clicks did you need? Do you often forget where things are? Do you wish things were named differently? Input like this can lead to changes that make a big difference for millions of users.

As mentioned, we’re actively seeking feedback on this experiment and other DevTools features. You can leave comments on our GitHub repository. Other browsers also like to hear feedback on their DevTools which you can do at the Mozilla bugzilla tracker for Firefox, on the Chromium bug tracker for Chrome, and on the WebKit bugzilla tracker for Safari.

Thanks for reading! And see you next time.


Wednesday, June 15, 2022

How Apple Pay works under the hood?

What happens behind the scenes when you add your credit card to Apple Pay, and when you pay using Apple Pay through your iPhone device.

In this post we will understand step-by-step what happens behind the scenes when you add your credit card to Apple Pay, and when you pay using Apple Pay through your iPhone device.

We will describe the following,

  • The behind the scenes processing, when a payment card is added to Apple Pay.
  • The behind the scenes processing, when you Pay using Apple Pay with your iPhone.

Along the way we will also answer,

  • How do Visa, Mastercard, Amex, Discover make money?
  • How does Apple Pay make money?

When a Payment Card is added to Apple Pay

When you add a new payment card (i.e. a credit or a debit card) to Apple Pay, here are the steps that happen behind the scenes.

  1. The payment card’s PAN (Primary Account Number), along with other card related personal details i.e. Your Name, Card Expiration Date, is sent by the Apple Wallet App to the Apple Pay servers.
  2. From your PAN, the Apple Pay server identifies the credit card Issuer Bank, and then pass the PAN and your personal details to the Issuer Bank requesting a Payment Token from the Issuer Bank.
    Note that the Issuer Bank must have partnered with Apple Pay, and be part of the Apple Pay network in order for Apple to add that payment card onto the iPhone. If the Issuer Bank has not partnered with Apple Pay, you cannot add that card to Apple Pay.
  3. The Issuer Bank then calls a Token Service Provider (TSP), and requests for a Payment Token.
    Token Service Providers are entities that must be registered with EMVCo as Token Service Providers (TSP) — see Appendix below for a list of Token Service Providers.
    EMVCo is an organization that manages the EMVCo format, a data transmission format — see Appendix below for more information on EMVCo.
  4. The Token Service Provider (TSP), vaults the PAN, generates a Payment Token, and associates the newly generated Payment Token with the PAN.
    The Token Service Provider (TSP), then returns the newly generated Payment Token, along with a Payment-Token-Key (i.e. public key), to the Issuer Bank.
  5. The Issuer Bank receives the Payment Token and Payment-Token-Key from the Token Service Provider (TSP), and adds a CVV-Key (i.e. public key) to the mix.
  6. The Issuer Bank then returns the Payment Token, Payment-Token-Key and the CVV-Key back to the Apple Pay Servers.
  7. Apple Pay, uses its own Trusted Service Manager (TSM) and provisions the Payment Token, Payment Token-Key and CVV-Key and maybe other data onto the “Secure Element” i.e. the secure hardware chip on the physical iPhone device.

This then is the “Payment Token” that Apple saves on its Secure Element (SE) and calls the DAN (Device Account Number).




 

When a Payment Card is Added to the Apple Pay Wallet

You can see this DAN for the card you added in, by going to your Apple Wallet App, selecting the credit card that you added, and then clicking on the “info” button. Only the last 4 digits of the DAN will be displayed.

  • Note that the DAN is unique to that particular iPhone device. The same card added to a different device will have a different DAN.
  • The DAN is a permanent unique number and does not change. The DAN acts as a proxy for the real credit card number (PAN) and the personal details.
  • Any transaction records for purchases made using Apply Pay will not show the last 4 digits of your credit card. Rather the transaction records will show the last 4 digits of the DAN.
  • Apple Pay does not store the real card numbers on the device or Apple servers, and payment token data never stored in their cloud servers
    (Payment Token i.e. DAN, only resides on the Secure Element (SE) on the iPhone device). Also, Apple Pay does not store real card data inside the Secure Element (SE).

When you Pay using Apple Pay with your iPhone

Apple Pay uses NFC to send payment data to the contactless POS terminal when you Tap & Pay .
Apple Pay uses the EMVCo’s contactless suite of specifications to pass the data from your iPhone to the contactless reader terminal.

  1. When you pay using the iPhone with Apple Pay, you authenticate yourself to the iPhone device Secure Element (SE) using your biometric (i.e. fingerprint, face id or PIN).
    The authentication process only authenticates you to the Secure Element (SE), and allows Apple Pay to access the information stored on the Secure Element (SE). Other than this initial Authentication process, neither the Secure Element (SE) nor the biometrics (i.e. Touch ID etc), are involved in the rest of the Apple Pay process.
  2. Once you authenticate yourself to the iPhone the Secure Element on the iPhone takes the following steps,
    (a) generates a Dynamic Cryptogram,
    -
    which is a combination of the Payment Token, transaction amount, transaction counter etc. along with the Payment-Token-Key (i.e. the public key provided by the TSP).
    (b) generates a Dynamic CVV,
    - using the CVV-key (i.e. the public key provided by the Issuing Bank).
    The Secure Element then passes the Payment Token (DAN), the Dynamic Cryptogram (also called, the One-time Unique Number), the Dynamic CVV Value (also called, the Dynamic Security Code), and other payment and chip data elements to the POS terminal via NFC, using the EMVCo’s contactless suite of specifications.
  3. The POS sends this request to the Acquirer Bank (Merchant Bank), which in turn forwards it to the Payment Network eg. Visa, Mastercard etc.
  4. The Payment Network then identifies that the request is a Payment Token and not a real PAN, based on the BIN tables. The Payment Network accordingly passes the Payment Token and the Dynamic Cryptogram to the Token Service Provider (TSP) to obtain the associated PAN.
  5. The Token Service Provider receives the Payment Token (DAN) and the Dynamic Cryptogram.
    It validates the request by deciphering the Dynamic Cryptogram (which contains the public Payment-Token-Key), using the private Payment-Token-Key. Once the request is validated, the TSP looks up the PAN associated with the Payment Token, within the Token Vault, and returns the customers real PAN to the Payment Network.
  6. The Payment Network receives the real PAN. It now passes the PAN along with the transaction details and the Dynamic CVV to the Issuer Bank, for transaction authorization.
  7. The Issuer Bank validates the request by deciphering the Dynamic CVV, using its private key. Once the Dynamic CVV is validated, the Issuer Bank checks the customers credit balance against the transaction amount, and “authorizes” the request.
  8. The Issuer bank passes back the “authorization” response to the Payment Network, which in turn passes it back to the Acquirer Bank (Merchant Bank), which in turn passes it back to the POS terminal, and your transaction is approved on the POS (The POS further transmits this to the iPhone through NFC, and you get a green check on your phone that the transaction was approved).

This entire process from Step 1–8, takes place in less than a couple of seconds. So you can see that the credit card networks are lightening fast!

Also, you will notice that in the above process, the actual PAN and customer information remains on the private credit card networks only, and is never transmitted to or from the POS. Thus the transactions are extremely secure.

How does Apple Pay make money?

To answer this question, we must first look at how a plain vanilla payment card eg. a credit card, transaction is processed (i.e. without Apple Pay).

When you swipe a credit card at a POS terminal,

  1. Your credit card number (PAN) along with the transaction amount and details, are sent to the Acquirer Bank (Merchant Bank).
  2. The Acquirer Bank then identifies which payment network the card is using (i.e. is it a Visa, Mastercard, Amex etc.), and then passes the PAN and transaction details to the appropriate Payment Network i.e. Visa, Mastercard, Amex, Discover, JCB, Union Pay etc.
  3. The Payment Network then identifies who is the Issuer Bank for that card i.e. your Visa credit card could have been issued by Chase Bank, and then passes the authorization request to that Issuer Bank along with the PAN, transaction amount etc.
  4. The Issuer Bank validates the PAN, and checks to see if the transaction amount has not exceeded the credit limit for that customer.
    If everything looks good the Issuer Bank “authorizes” the transaction and sends this “authorization” back to the Payment Network i.e. Visa, Mastercard etc.
  5. The Payment Network then sends this authorization back to the Acquirer Bank (Merchant) bank, which sends this authorization back to the POS terminal, and you get a transaction approved message on the POS and the POS prints you out a receipt.

This entire process from step 1–5 takes less than 3 seconds, and you walk away from the POS with your receipt in hand.

How do Visa, Mastercard, Amex make money?

For the services that they provide, each of the above parties take a small cut of the transaction amount.
So if you purchase something from a merchant for $100, typically the Merchant gets paid only $98. The remaining 2% i.e. $2, is called the Discount Rate, and this $2 is split between all the participating parties that provide the credit card processing service.

The split between the parties may be as follows,

  • Issuer Bank — $1.70
    (Called the Interchange Fee i.e. typically 1.7%)
  • Payment Networks i.e. Visa, Mastercard, Amex etc. — $0.10
    (Flat fee based on transaction volume i.e. $0.10)
  • Acquirer or Merchant Bank — $0.20
    (Flat Fee or Percentage Fee based on the Merchant-Acquirer bank under-writing contract i.e. typically 0.2%)

Note that in our example the Discount Rate is 2%, however in reality this Discount Rate depends upon the type and nature of the transaction.

In general the more secure a transaction, the lesser is the Discount Rate.

So an “in-person” transaction will have a slightly lesser discount rate eg. 1.99%, that an “on the phone” transaction eg. 2%. Also a chip-based credit card transaction will have a lesser discount rate eg. 1.97% than a non-chip based credit card. This is because it is assumed that the more secure a transaction the lesser the risk for that transaction i.e. the actual credit card holder is making an authorized transaction.

Also, it is interesting to note that the Discount Rate is set by the Payment Networks i.e. Visa, Mastercard, Amex etc. (even though the Payment Networks get only a small slice of the full Discount Rate).

So it is Visa, Mastercard, Amex etc. that decide what the Discount Rate will be for using them as the Payment Network, and not the Issuer Bank or the Acquirer Bank (Merchant Bank).

i.e. In our example above, it is Visa, Mastercard etc. that dictate and set the Discount Rate to say 2% , even though Visa, Mastercard may get only $0.10 per transaction from that Discount Rate, and the balance of the Discount Rate is shared between the Issuer Bank (Interchange Fee) and the Acquirer Bank (Merchant Bank).

Visa, Mastercard, Amex, Discover, etc. are called credit card processing networks.

  • Out of these Visa and Mastercard purely provide and charge for the use of their network infrastructure, almost like a toll booth. They do not issue credit cards (that is done by the Issuing Bank).
    They simply provide the branding to the card to indicate that the card is compatible and will be processed with their particular credit card payment network eg. Visa network or Mastercard network.
  • Amex and Discover on the other hand have a more vertically integrated business model and issue their own credit cards. They also provide a similar branding model, where they may issue cards for specific retailer eg. Macy’s, Sears etc. and may act as the card issuing bank.

Now to answer our original question.

How does Apple Pay make money?

  • Apple Pay is free to use for Merchants and Consumers, and Apple does NOT charge either for the use of Apple Pay.
  • It is the Issuer Bank that pays Apple 0.15%, for any transactions that are done using Apple Pay.

In our example above, the Issuer bank pays Apple 0.15% from the 1.7% Interchange Fee, that it charges. The Issuer Banks are ok to pay this nominal 0.15% fee, since they are guaranteed a secure transaction for any transaction that has been done using Apple Pay.

That’s all for this post!! Hope this post helps you understand the “behind the scenes” on how Apple Pay and the Payment Networks actually work!

Happy Innovating in FinTech!!

List of EMVCo Registered Token Service Providers

What is EMVCo?

EMVCo exists to facilitate worldwide interoperability and acceptance of secure payment transactions. It accomplishes this by managing and evolving the EMV® Specifications and related testing processes. This includes, but is not limited to, card and terminal evaluation, security evaluation, and management of interoperability issues.

EMVCo’s work is overseen by EMVCo’s six member organizations — American Express, Discover, JCB, Mastercard, UnionPay, and Visa — and supported by dozens of banks, merchants, processors, vendors and other industry stakeholders who participate as EMVCo Associates.

EMVCo is managed by the Board of Managers, which is comprised of two representatives from each of the member payment systems. The EMVCo Executive Committee, also managed by payment system representatives, provides guidance on EMVCo’s long-term strategy.

References: