Taxonomy Icon

Node.js

Create a real-time payments app

Get the code View the demo Try the app Build on IBM Cloud

Summary

Do you want to create web and phone applications that can access payments through IBM’s Financial Transaction Manager (FTM) for Real-Time Payments service? This code pattern shows you how to use IBM Cloud services to create a real-time payments application. These services are integrated into a web interface that manages the user’s tokens and recipients using the Real-Time Payments service.

Description

Banks and other financial institutions that provide payment services can discover business value by helping their customers send and receive payments in real time. They are able to eliminate costs on transactions that might have otherwise gone to third-party payment systems such as Venmo or PayPal.

It’s also a more convenient way for customers to send funds online and avoid sharing their banking information with third-party services. Since existing options within banking apps only allow you to send money to people who have accounts with those institutions, real-time payment technology can make transfers much easier. Customers prefer not to set up new profiles or add downloads to already-cluttered phones.

The app that you’ll create in this pattern lets you send and request payments using the Real-Time Payments service. You’ll learn how to generate a robust, enterprise-grade payments application without requiring a direct connection to the network or to the underlying payments system. When you create new users, they are automatically registered as participants in a non-production registry. You can link their emails or mobile numbers to their bank accounts so that they never have to share sensitive bank details to receive money. You’ll use those emails or mobile phone numbers as tokens to direct any payments they receive into their bank account. They’ll also receive an instant payment notification every time someone sends them money, usually through an SMS text message or email.

This pattern is ideal for any developer who needs to understand real-time payments app development. When you have completed the pattern, you will understand how to use use the Real-Time Payments service to:

  • Manage participants, tokens, and recipients
  • Initiate payments and payment requests
  • View transaction activity

Note: Financial Transaction Manager APIs are actual services hosted in IBM Cloud that you can use for testing. Other supporting systems such as the accounting system and network responses are simulated, so some responses could differ from that of a full production system.

Flow

flow

  1. User A logs on to the demo banking portal and can link email addresses and phone numbers to their account, add recipients identified by their email addresses or phone numbers, and send or request money to the recipients added by the user such as User B.
  2. All of these actions are controlled through API calls by the application using the Real-time Payments service.
  3. The service uses Redis Cache and a Cloudant DDA system to store data, process requests, and provide security.
  4. Once the transactions are registered and completed, they can be viewed through the banking portal.
  5. User B can log in and see if User A has sent any money or made any requests.