2. 2
Introduction Shiono Takao
Mobile Apps Pandya Advaita
Backend API Tomek Jozef
- Mobile Payment Service of Choice -
- Balance of SPEED, SECURITY and RELIABILITY -
3. 3
Forecast of Cashless Ratio
Mass media coverages
Cashless Ratio in Japan
is far less than other
developed countries.
Aim to Productivity
Improvement with
cashless promotion
Government have a
plan “Double as
cashless ratio” early
“Cashless” is
essential for
“Inbound demands”
20%
40%
80%
From: Cashless Roadmap 2019(2019/04) Payments Japan Association
Ref: https://www.paymentsjapan.or.jp/wordpress/wp-content/uploads/2019/04/Cashless_Roadmap_2019.pdf
4. 4
Government Budget for Cashless Promotion
Terminal impl. support Transaction fee Point Reduction for shopper
Budget size≒ 400Bil. JPY
Payment Service Provider
Government Budget
※ Details
100%
1/31/3
2/3 2/3
From: Overview of cashless payment and loyalty point programs (2019/04) Ministry of Economy, Trade and Industry
Ref: https://cashless.go.jp/assets/doc/gaiyou_cashless_kessai.pdf
5. 5
Q. Do you think “Cashless Payment” is more convenient than “Cash Payment” ?
Strongly Agree
Agree
4 out of 5 users think “Cashless is more convenient than Cash”.
80%
From: Internet Survey(2019/07) JCB Co, Ltd.
Ref: https://www.global.jcb/ja/press/00000000162841.html
6. 6
Regardless of Industry 80% of accountant prefer Cashless.
Q. Do you think it better if you can use “cashless payment” in your work place?
Strongly Agree
Agree
Convenience Stores TaxiJapanese Pub
From: Internet Survey(2019/07) JCB Co, Ltd.
Ref: https://www.global.jcb/ja/press/00000000162841.html
83% 79% 75%
11. 11
System Division
Shiono
(General Manager)
Payment Product
Payment System
Development
General
Management
Site Reliability
Engineering
Mobile Application
Backend
Application
Adi
Jozef
1st Presenter
2nd Presenter
14. 14
Introduction Shiono Takao
Mobile Apps Pandya Advaita
Backend API Tomek Jozef
- Mobile Payment Service of Choice -
- Balance of SPEED, SECURITY and RELIABILITY -
15. 15
- Adi
- Senior iOS Developer at Rakuten Payment
- Like iOS, secretly also like Android
- Hobbies
- Travelling
- Finding (!!!) and eating vegetarian food
- Hiking
21. 21
- Strategic Partnership with KDDI
- Both Rakuten Pay and au Pay can be used
with a common QR
- Merchants can easily install au PAY without
any special operations in advance
From: Press Releases(2019/06) Rakuten Payment, Inc.
Ref: https://corp.rakuten.co.jp/news/press/2019/0625_01.html
26. 26
SDK Components Responsibilities
Coordinator Business Logic UI
- Exposes functionality
- Controls Business Logic and
UI
- Uses delegation to pass
events back to the calling
module
- This layer handles the
business-level logic for the
SDK
- It has no control over
Coordinator or UI
- Can only process data and
make it available to the
Coordinator.
- This layer encapsulates all UI
related classes and methods.
It exposes View Model, the
Coordinator is responsible for
populating the View Model
- Has no control over
Coordinator or Business
Logic. Coordinator is
responsible for initializing the
views and loading them up
with data.
27. 27
Kit
- Coordinator
- Interface for the Kit module
- Business Logic
- Handles all the Core logic for this
Module.
- UI
- Handles the UI related functions
28. 28
External Module
- Implement Coordinator
- Internal implementation is free from any
limitations
- Delegation pattern is used to pass
events back to the parent coordinator
30. 30
- Secure Facial Payment together with Rakuten Pay
- Allows users to simply use their face and a PIN number to safely pay for items in stores
- Eigenfaces through deep learning and convolutional neural networks
- Internal alpha test at a Rakuten Café
- Plans to deploy over a large scale internal test
37. 37
Introduction Shiono Takao
Mobile Apps Pandya Advaita
Backend API Tomek Jozef
- Mobile Payment Service of Choice -
- Balance of SPEED, SECURITY and RELIABILITY -
39. 39
As an online payment service, we are always striving for processing speed.
Furthermore, as a FinTech service, we are also continuously focusing on security and reliability.
× ×
40. 40
Payment interface
Payment resource
Payment method
Not only support more and more payment
resources, but also access them securely
Not only provide needed functionality, but
also make it reliable
Not only support more and more payment
methods, but also make their use fast
41. 41
Japan needs to move to “cashless”.
Users of cashless payments solutions will increase even more.
Providers must make users to like new payment methods and have trust in them.
Strong push by Japanese government to promote cashless.
Rakuten Pay backend and October 1st
pro-active performance / load tests
pro-active scaling
reactive operations
43. 43
Use the resources effectively
DB – optimizing queries
CPU – parallel / asynchronous where possible
Fail fast - do only necessary and nothing more
Faster feedback to user + less load on servers
Scale Scale Scale
Priority is single transaction speed even during high load.
Have resources available for load-balancing to avoid transactions slowdowns.
44. 44
Security checks
Payment rules
checks
Main
thread
Other thread
Other thread
Time
Payment prepared & valid
Where possible, steps before payment settlement are being processed in parallel to save time.
Information gathering
Payment preparation & validation
Other thread
45. 45
Payment result
persistence
Main
thread
Background thread
Background thread
Time
Payment completed
Payment settle
Tasks after payment settlement are being processed asynchronously to get to the point of
payment completion as fast as possible.
Update payments profile
Sending payment completion mail
46. 46
We are using New Relic to
continuously monitor all API
transactions on Rakuten Pay server.
It helps us to quickly identify slower
transactions, so we can improve the
processes as soon as possible.
48. 48
Before Payment
Payment
After Payment
Adding new payment method
CVV2 check
3D Secure check
Member information check
Member/Device registration
SMS authentication
Update payments profile
Payment rules check
Member identification
3D Secure check
Risk rating by machine learning
49. 49
As a step of registration, a valid cellphone number is required when starting RPay shopper APP.
SMS authentication can be triggered based on various criteria.
Temporarily locking suspicious user for preventing potentially malicious actions.
50. 50
CVV2 is the security code on the back of credit card.
Usually it is a 3 digits numbers.
CVV2 is required when adding a new credit card to
Rakuten Pay Shopper APP.
Temporary lock of suspicious user.
51. 51
3D Secure check is
Required during member registration.
Triggered for payments matching certain criteria.
3D Secure check is an authentication
mechanism by credit card company.
If you are Rakuten Card member, you can easily
set 3D Secure password on e-NAVI.
52. 52
Different payment rules for different types of merchants
Payment rules for each payment
Payment rules per day
Payment location
etc..
Convenience store
Super market
Restaurant
Appliance store
Drug store
Cashless stadium
etc..
54. 54
Rakuten Pay is providing various payment methods, which are supported by different APIs.
To handle these APIs smoothly, we separated Rakuten Pay backend system to different clusters.
Barcode cluster
Interface of POS machine, supporting barcode-scan payment. (Ex. Payment in Convenience store).
Shopper cluster
Interface of shopper APP, supporting all kinds of operations on RPay shopper APP,
including QR-scan payment.
Merchant cluster
Interface of merchant APP, supporting all kinds of operations on RPay merchant APP,
including NetStars payment.
Payment cluster
All payment requests will be processed here.
56. 56
Global
Network
Barcode
cluster
Payment
cluster
POS machine
scans barcode.
Third-party gateway formats
payment information based
on RPay standard request.
Rpay is using Rakuten
common API gateway for
receiving API requests.
Barcode cluster handles
payment request before
payment settle.
Payment cluster
handles payment
process.
Rakuten Payment
gateway settles payment.
59. 59
Payment interface
Payment resource
Payment method
For “cashless” to succeed, users must find
payments to be:
fast
secure
reliable
Post-October 1st era demands systems
providing such payments for always-
increasing number of users
Rakuten Pay backend system is always
improving to provide service that is
SPEEDY × SECURE × RELIABLE