Card Registration Service

Some card-based services use the card just as an identifier, reading the card’s unique identifier (UID) and using it to gather information from their customer database.
Fidesmo provides a way to register cards to those services, so that end users can sign up and enable their existing Fidesmo Card to become their identifier towards the service.

Service providers benefit from

  • not having to distribute new cards
  • card identifier clearly visible on the card
  • ensuring that the user will have the card in her pocket, since it is also used for more services
  • reducing the waiting time from customer signing up to the customer actually using the service: instead of waiting several days until the card is issued and received, the user already has a card on her hands.

These reasons can move many potential customers from “cool service, I’ll think about it” to actually signing up.
The mechanism is very simple: the Service Provider only needs to set up an application and a “sign-up service” in this portal, configuring it so that required information can be requested from the user and the result sent to the Service Provider (please see the tutorial below for details).

Information gathered from the end user

The complete list of fields that can be requested from he user is here.

  • email address
  • mobile number
  • acknowledgement of having read the Terms & Conditions

Sign-up process

The user is directed to the signup process just with a URL. Depending on the device used to access it, the process is slightly different:

  • NFC-enabled smartphone: the Fidesmo App is opened, and after users enter the requested information, they are asked to tap their phone with their Fidesmo Card, so that the card’s UID can be read.
  • Non NFC-enabled smartphone or computer: the data form is opened in a browser, and the user is requested to enter the “serial number” on the back of the card: the same UID as above.

Then, the user-entered information together with the UID are sent to the URL configured by the Service Provider. It can be a web service endpoint, or just a mailto address, in which case an email will be sent.
Once the information has reached the Service Provider systems, sign-up is completed!

Checking what services are in a card

Users can always check the list of services they have signed to presenting their card to the Fidesmo App (if they are using an NFC-enabled smartphone), or by typing the serial number at our consumer-facing website.

Tutorial: setting up the card registration service

This step-by-step tutorial shows how to set up a service to register cards. Let’s think of an imaginary service, called ConnectedLocker. Users can find lockers in major subway stations throughout the city; such lockers are opened with contactless cards. For the reasons outlined above, ConnectedLocker wants to let users register their existing Fidesmo cards, especially because they want them to use their corporate badges (big companies are their best customers).

Sign-up to Fidesmo portal, upload the application elements

This tutorial starts from the very beginning: register in the portal. Once you have validated your registration, configure your first application. In this case, the only parameter that we need to fill in is the application name; you will also need to upload the branding elements: application description, logo in SVG format, feature graphic in JPEG.
Since there are no published services yet, nothing can be seen through the Android app.

Define and publish a service

We are going to define a service called "register". From each user, ConnectedLocker needs the following information:

  • email address
  • mobile number, in international format
  • date of birth

plus of course the card's identifier.

We also want that after each useful registration, an email to our address is sent. When the number of daily registrations exceeds 100, our in-house developer has promised to set up an endpoint so that registration data is automatically fed into our backend. Meanwhile, let's use a mailto URI

All this can be specified in a service recipe. Here is it:

{ "description": { "title": {"en":"Register your card", "es": "Registra tu tarjeta"}, "description": { "en": "Register your card to access thousands of *Connected Lockers*, wherever you are. Once you have registered, you will receive an email with the details on how it works. Or you can read them [here](", "es": "Registra tu tarjeta para poder usar las taquillas de *Connected Locker*, dondequiera que estés. Una vez registrado, recibirás un email con los detalles de cómo funciona. O los puedes leer [aquí](" }, "termsAndConditions": "", "fieldsRequired": [ { "label": { "en": "Your date of birth", "es": "Tu fecha de nacimiento" }, "id": "birth-date", "type": "date" } ], "emailRequired": { "en": "Your e-mail adress", "es": "Tu dirección de email" }, "msisdnRequired": { "en": "Your mobile phone number, in international format", "es": "Tu número de móvil, en formato internacional" } }, "actions": [ { "endpoint": "/uid/register", "content": {} } ], "serviceResultUri": "" }'

In this example, the text fields are presented in English or Spanish, depending on the client's language configuration.

The recipe can be uploaded from the API live documentation page or from the command line, using curl.

The last step is to publish the service, so it is visible from the mobile app. You can also do it from the API live documentation page or from the command line.

And that’s all, tutorial finished!. Let’s see how it works from the point of view of a user.

Usage: registering a card

When opening the Fidesmo App, the user will find a new application in the list, our Connected Locker Registration. When clicked, it opens, showing the list of available services:

Let’s click on our only service, to register our card. A confirmation screen comes up with a textual explanation and a link to the Terms and Conditions.

After accepting it, a set of forms request the user data defined in the service recipe:

Finally, the application asks the user to tap the phone with his Fidesmo Card and “delivers” the service.

The Service Provider Connected Locker receives an email with the information submitted by the user, which can be fed into their database: