IP Library › Granted Patent US 12,354,076
Granted Patent B2
US 12,354,076 · App. 18/230,159 · Granted Jul 8, 2025

SDK for dynamic workflow rendering on mobile devices

Inventors: Anilabh Pandey (Bangalore, IN); Rahul Srivastava (Bangalore, IN); Geetha Kodandaraman (Bengaluru, IN); Arun Sridharamurthy (Bengaluru, IN); Kartik Srivastava (Karnataka, IN); Jyothish Kozhipurath (Kerala, IN); Sudeep Unnikrishnan (Kerala, IN)
Assignee: PAYPAL, INC.
G06Q20/322G06Q20/12G06Q30/0641H04L67/10G06F9/5072
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,354,076
App. No.
18/230,159
Filed
Aug 3, 2023
Granted
Jul 8, 2025
Kind
B2
Examiner
WU, YICUN
Art Unit
2153
USPC
707/634
Abstract

A first request to conduct a transaction via a mobile application is received from a user of the mobile application. In response to the receiving of the first request, a first portion of a transaction flow is rendered on a graphical user interface of the mobile application. A determination is made that the mobile application is unable to render a second portion of the transaction flow. In response to the determining, a second request is sent to a server to provide details for the second portion of the transaction flow. After the sending, computer programming code is received. The computer programming code corresponds to the details of the second portion of the transaction flow. Based on the received computer programming code, the second portion of the transaction flow is rendered for the mobile application on the mobile device.

Claims (50)

1. A method, comprising:

receiving an input through a graphical user interface (GUI) of a mobile application executing on a mobile device, wherein the input is received via a first workflow that is present within the mobile application, wherein the first workflow is associated with a first manner in which one or more pages of the mobile application is presented via the GUI;

determining, based at least in part on the received input, that the mobile application is directed to rendering a second workflow that is not present within the mobile application, wherein the second workflow is associated with a second manner in which the one or more pages of the mobile application is presented via the GUI;

accessing, after the determining and based on electronic communications with a remote server, computer programming code associated with the second workflow; and

causing, based on the accessing of the computing programming code, a rendering of the second workflow via the GUI.

2. The method of claim 1 , wherein:

the electronic communications comprise a request to the remote server to obtain specifications of the second workflow; and

the accessing comprises obtaining, from the remote server, the computer programming code corresponding to the specifications of the second workflow.

3. The method of claim 1 , wherein the electronic communications comprises electronic communications with a module of the remote server that stores a plurality of predefined programming code templates, each of the plurality of the predefined programming code templates corresponding to a different type of workflow, including the second workflow.

4. The method of claim 3 , wherein each of the plurality of the predefined programming code templates defines a structure of data points or layout specifications of user interface elements involved in a rendering of the corresponding workflow.

5. The method of claim 1 , further comprising:

receiving, during the rendering of the second workflow, additional input via the GUI;

determining, based on the received additional input, that a third workflow, and not the second workflow should be used for processing the received additional input;

obtaining, based on the determining that the third workflow should be used for processing the received additional input, computer programming code associated with the third workflow from the remote server; and

causing, based on the obtained computer programming code associated with the third workflow, a rendering of the third workflow via the GUI while the rendering of the second workflow is interrupted.

6. The method of claim 1 , wherein the first workflow, but not the second workflow, is hardcoded into the mobile application.

7. The method of claim 1 , wherein the second workflow comprises one or more prepopulated data fields of the GUI.

8. The method of claim 1 , further comprising:

accessing data entered by a user via the second workflow;

sending the data to the remote server for analysis; and

receiving, from the remote server, a notification indicating whether the user has been successfully authenticated based on the data sent to the remote server.

9. The method of claim 1 , wherein one or more of the receiving, the determining, the accessing, or the causing are performed by a first Software Development Kit (SDK) that is implemented on the mobile device.

10. The method of claim 9 , further comprising accessing a second SDK that provides one or more services,

wherein one or more aspects of the second workflow is rendered based at least in part on the one or more services provided by the second SDK.

11. The method of claim 1 , wherein the second workflow is rendered without updating a version of the mobile application.

12. The method of claim 1 , wherein the first workflow or the second workflow is rendered as a part of an electronic transaction conducted via the mobile application.

13. A system, comprising:

one or more processors; and

a non-transitory computer-readable medium having stored thereon instructions that are executable by the one or more processors to cause the system to perform operations comprising:

receiving an input through a graphical user interface (GUI) of a mobile application executing on a mobile device, wherein the input is received via a first workflow that is present within the mobile application;

determining, based at least in part on the received input, that the mobile application is directed to rendering a second workflow that is not present within the mobile application, wherein the first workflow and the second workflow each define each define how different pages of the mobile application are presented via the GUI, respectively;

accessing, after the determining and based on electronic communications with a remote server, computer programming code associated with the second workflow; and

causing, based on the accessing of the computing programming code, a rendering of the second workflow via the GUI.

14. The system of claim 13 , wherein:

the electronic communications comprise a request to the remote server to obtain specifications of the second workflow; and

the accessing comprises obtaining, from the remote server, the computer programming code corresponding to the specifications of the second workflow.

15. The system of claim 13 , wherein the electronic communications comprises electronic communications with a module of the remote server that stores a plurality of predefined programming code templates, each of the plurality of the predefined programming code templates corresponding to a different type of workflow, including the second workflow, and wherein each of the plurality of the predefined programming code templates defines a structure of data points or layout specifications of user interface elements involved in a rendering of the corresponding workflow.

16. The system of claim 15 , wherein each of the plurality of the predefined programming code templates defines a structure of data points or layout specifications of user interface elements involved in a rendering of the corresponding workflow, wherein the operations further comprise:

receiving, during the rendering of the second workflow, additional input via the GUI;

determining, based on the received additional input, that a third workflow, and not the second workflow should be used for processing the received additional input;

obtaining, based on the determining that the third workflow should be used for processing the received additional input, computer programming code associated with the third workflow from the remote server; and

causing, based on the obtained computer programming code associated with the third workflow, a rendering of the third workflow via the GUI while the rendering of the second workflow is interrupted.

17. The system of claim 13 , wherein the first workflow, but not the second workflow, is hardcoded into the mobile application.

18. The system of claim 13 , wherein the second workflow is rendered without updating a version of the mobile application.

19. A non-transitory machine-readable medium having stored thereon machine-readable instructions executable to cause a machine to perform operations comprising:

receiving an input through a graphical user interface (GUI) of a mobile application executing on a mobile device, wherein the input is received via a first workflow that is present within the mobile application, wherein the first workflow specifies a first sequence of presenting, via the GUI, a plurality of different pages of the mobile application;

determining, based at least in part on the received input, that the mobile application is directed to rendering a second workflow that is not present within the mobile application, wherein the second workflow specifies a second sequence of presenting, via the GUI, the plurality of different pages of the mobile application;

accessing, after the determining and based on electronic communications with a remote server, computer programming code associated with the second workflow; and

causing, based on the accessing of the computing programming code, a rendering of the second workflow via the GUI.

20. The non-transitory machine-readable medium of claim 19 , wherein the electronic communications comprises electronic communications with a module of the remote server that stores a plurality of predefined programming code templates, each of the plurality of the predefined programming code templates corresponding to a different type of workflow, including the second workflow, and wherein each of the plurality of the predefined programming code templates defines a structure of data points or layout specifications of user interface elements involved in a rendering of the corresponding workflow.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 7, 2023
From: PANDEY, ANILABH; SRIVASTAVA, RAHUL; KODANDARAMAN, GEETHA; SRIDHARAMURTHY, ARUN; SRIVASTAVA, KARTIK; KOZHIPURATH, JYOTHISH; UNNIKRISHNAN, SUDEEP
To: PAYPAL, INC.
Reel/Frame 064507/0588 →
Continuity (3)
Continuation 17513787 · Oct 28, 2021
Continuation 16904320 · Jun 17, 2020
Related Publication 20240029047A1 · Jan 25, 2024
References Cited (5)
US 10120954B2 · Desineni et al. · 2018 [cited by applicant]
US 20130305218A1 · Hirsch et al. · 2013 [cited by applicant]
US 20200092335A1 · Brooks · 2020 [cited by examiner]
US 20210019707A1 · Sathiamoorthy et al. · 2021 [cited by applicant]
US 20230049095A1 · Rangaraj · 2023 [cited by examiner]