IP Library Granted Patent US 12,282,910
Granted Patent B2
US 12,282,910 · App. 18/614,551 · Granted Apr 22, 2025

Secure data management for sensitive information

Inventor: Yue Bu (Oakland, CA)
Assignee: Stripe, Inc.
G06Q20/325G06Q20/385
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,282,910
App. No.
18/614,551
Granted
Apr 22, 2025
Kind
B2
Abstract

Methods, systems, and computer readable medium are provided for generating, by a secure processor, a plurality of configurable data entry elements configured into a webpage, receiving sensitive data entered via the plurality of configurable data entry elements during a user data entry session, generating a hidden controller iframe in the webpage, aggregating, by the hidden controller iframe, the sensitive data across the plurality of configurable data entry elements, and directing aggregated sensitive data to the secure processor hosted by a first server separate from a second server hosting the webpage.

Claims (49)

1. A method, comprising:

providing, by a payment processor, a payment element in a web page of a merchant site, the payment element including a plurality of data entry elements for display on a client-side device;

providing, by the payment processor, a controller iframe in the web page to reconcile a data entry element state or content across the plurality of data entry elements;

receiving, by the payment processor, payment information from the client-side device relating to a payment instrument entered into at least one of the plurality of data entry elements; and

automatically reconciling, by the payment processor via the controller iframe, at least one of a data entry element state or content across the plurality of data entry elements based on the payment information, wherein the data entry element includes a visual configuration, and wherein automatically reconciling at least one of the data entry element state or content across the plurality of data entry elements comprises:

dynamically adjusting, by the payment processor, the visual configuration of at least one of the plurality of data entry elements based on at least one aspect of the payment information.

2. The method of claim 1 , wherein the payment element is hosted by a server at the payment processor.

3. The method of claim 1 , wherein the controller iframe is not displayed.

4. A non-transitory computer-readable medium having stored thereon instructions to cause a client device to execute operations comprising:

receiving, by the client device and from a payment processor, a payment element in a web page of a merchant site, the payment element including a plurality of data entry elements for display on the client device;

receiving, by the client device and from the payment processor, a controller iframe in the web page to reconcile a data entry element state or content across the plurality of data entry elements;

providing, by the client device and to the payment processor, payment information relating to a payment instrument entered into at least one of the plurality of data entry elements; and

automatically reconciling, by the controller iframe, at least one of a data entry element state or content across the plurality of data entry elements based on the payment information, wherein the data entry element includes a visual configuration, and wherein automatically reconciling at least one of the data entry element state or content across the plurality of data entry elements comprises:

dynamically adjusting, by the payment processor, the visual configuration of at least one of the plurality of data entry elements based on at least one aspect of the payment information.

5. The non-transitory computer-readable medium of claim 4 , wherein automatically reconciling at least one of a data element state or content across the plurality of data entry elements comprises:

aggregating, by the controller iframe, the at least one of a data entry element state or content of the plurality of data entry elements; and

storing, by the controller iframe and at the payment processor, the aggregation for automatically reconciling, by another controller iframe, at least one of a data entry element state or content across another plurality of data entry elements associated with another web page of the merchant site.

6. The non-transitory computer-readable medium of claim 4 , the method further comprising coordinating, by the controller iframe, a submission to the payment processor of payment information entered into one or more of the plurality of data entry elements.

7. The non-transitory computer-readable medium of claim 4 , the method further comprising coordinating, by the controller iframe, a submission to an API of payment information entered into one or more of the plurality of data entry elements.

8. The non-transitory computer-readable medium of claim 4 , the method further comprising:

receiving, by the client device and from the payment processor, a token for the payment information, the token functioning as a proxy for the payment information; and

electronically sending, by the client device, the token to the merchant site for conducting a transaction without the merchant site being exposed to the payment information.

9. The non-transitory computer-readable medium of claim 4 , wherein the payment element is hosted by a server at the payment processor.

10. A system comprising:

a client device; and non-transitory computer-readable medium having stored thereon instructions to cause the client device to execute operations comprising:

receiving, by the client device and from a payment processor, a payment element in a web page of a merchant site, the payment element including a plurality of data entry elements for display on the client device;

receiving, by the client device and from the payment processor, a controller iframe in the web page to reconcile a data entry element state or content across the plurality of data entry elements;

providing, by the client device and to the payment processor, payment information relating to a payment instrument entered into at least one of the plurality of data entry elements; and

automatically reconciling, by the controller iframe, at least one of a data entry element state or content across the plurality of data entry elements based on the payment information, wherein the data entry element includes a visual configuration, and wherein automatically reconciling at least one of the data entry element state or content across the plurality of data entry elements comprises:

dynamically adjusting, by the payment processor, the visual configuration of at least one of the plurality of data entry elements based on at least one aspect of the payment information.

11. The system of claim 10 , wherein the payment element is hosted by a server at the payment processor.

12. The system of claim 10 , wherein the method further comprises coordinating, by the controller iframe, a submission to the payment processor of payment information entered into one or more of the plurality of data entry elements.

13. The system of claim 10 , wherein the method further comprises coordinating, by the controller iframe, a submission to an API of payment information entered into one or more of the plurality of data entry elements.

14. The system of claim 10 , wherein the controller iframe is not displayed.

15. The system of claim 10 , wherein the method further comprises:

receiving, by the client device and from the payment processor, a token for the payment information, the token functioning as a proxy for the payment information; and

electronically sending, by the client device, the token to the merchant site for conducting a transaction without the merchant site being exposed to the payment information.

16. The system of claim 10 , wherein automatically reconciling at least one of a data element state or content across the plurality of data entry elements comprises:

aggregating, by the controller iframe, the at least one of a data entry element state or content of the plurality of data entry elements; and

storing, by the controller iframe and at the payment processor, the aggregation for automatically reconciling, by another controller iframe, at least one of a data entry element state or content across another plurality of data entry elements associated with another web page of the merchant site.

17. The system of claim 10 , wherein the method further comprises:

generating a plurality of hidden controller iframes in the web page; and

aggregating, by one of the hidden controller iframes, payment information from at least one data entry element.

18. The non-transitory computer-readable medium of claim 4 , wherein the controller iframe is not displayed.

19. The non-transitory computer-readable medium of claim 4 , wherein the method further comprises:

generating a plurality of hidden controller iframes in the web page; and

aggregating, by one of the hidden controller iframes, payment information from at least one data entry element.

20. The method of claim 1 , further comprising:

transmitting, by the payment processor and to the client device, a token for the payment information, the token functioning as a proxy for the payment information, wherein the client device is configured to electronically send the token to the merchant site for conducting a transaction without the merchant site being exposed to the payment information.

Assignments (1)
CHANGE OF NAME Recorded Jan 30, 2026
From: STRIPE, INC.
To: STRIPE, LLC
Reel/Frame 074572/0338 →
Continuity (4)
Continuation 17871478 · Jul 22, 2022
Continuation 16824454 · Mar 19, 2020
Continuation 15789668 · Oct 20, 2017
Related Publication 20240249272A1 · Jul 25, 2024
References Cited (53)
US 5450538A · Glaser · 1995 [cited by examiner]
US 6601759B2 · Fife et al. · 2003 [cited by applicant]
US 7911452B2 · Kang et al. · 2011 [cited by applicant]
US 7984113B2 · Steinwagner · 2011 [cited by applicant]
US 9600651B1 · Ryan et al. · 2017 [cited by applicant]
US 9942244B2 · Lahoz et al. · 2018 [cited by applicant]
US 11429951B1 · Bu · 2022 [cited by applicant]
US 20010055020A1 · Hertzfeld · 2001 [cited by examiner]
US 20030212642A1 · Weller et al. · 2003 [cited by applicant]
US 20100293017A1 · Merritt et al. · 2010 [cited by applicant]
US 20110216702A1 · Yoon · 2011 [cited by applicant]
US 20130110658A1 · Lyman · 2013 [cited by applicant]
US 20130117185A1 · Collison · 2013 [cited by examiner]
US 20140012922A1 · Wu · 2014 [cited by applicant]
US 20160104079A1 · Greenberg et al. · 2016 [cited by applicant]
US 20190082043A1 · Lavian et al. · 2019 [cited by applicant]
EP 3070662A · 2016 [cited by applicant]
EP 3070662A1 · 2016 [cited by examiner]
EP 3767567A · 2021 [cited by applicant]
EP 3767567A1 · 2021 [cited by examiner]
Bluefin Payment Systems: Payment iFrame User Guide, 2017, pp. 1-31 (Year: 2017). [cited by examiner]
Pasquet et al.: E-Payment Security: Which Solutions for Which Issues? Oct. 2009, Research Gate, pp. 1-31 (Year: 2009). [cited by examiner]
Stanger, Mark: Modifying the Label of Form, Oct. 10, 2011, Service Now Guru, pp. 1-3 (Year: 2011). [cited by examiner]
Babish, Nick: Designing Perfect Text Field: Clarity, Accessibility and User Effort, Aug. 4, 2016, UX Planet: Medium, pp. 1-17 (Year: 2016). [cited by examiner]
Babish, “Designing Perfect Text Field: Clarity, Accessibility and User Effort,” Aug. 2016, UX Planet: Medium, pp. 1-17. [cited by applicant]
Meloni, J.C.,“Sams Teach Yourself HTML, CSS, and JavaScript All in One”, © 2012 Pearson Education, Inc., (2012), 608 pgs. [cited by applicant]
Pasquet, et al., “E-Payment Security: Which Solutions for Which Issues?” Oct. 2009, Research Gate, 31 pages. [cited by applicant]
PCI Guru: Third party Provider PCI Compliance, Jul. 2016, 6 pages. [cited by applicant]
Rogersnm, “Remove Stripe iFrame when StripeProvider unmounts #99”, [online]. Retrieved from the Internet: <URL: https://github.com/stripe-archive/react-stripe-elements/issues/99>, (2017), 17 pgs. [cited by applicant]
Smschick, “Loading Stripe.js asynchronously causes multiple Stripe iFrames in Body #235”, [online]. Retrieved from the Internet: <https ://github.com/stripe-archive/react-stripe-elements/issues/235>, (2018) 6 pgs. [cited by applicant]
Stanger, “Modifying the Label of Form,” Oct. 2011, Service Now guru, 3 pages. [cited by applicant]
U.S. Appl. No. 15/789,668, Advisory Action mailed Feb. 13, 2020, 5 pgs. [cited by applicant]
U.S. Appl. No. 15/789,668, Advisory Action mailed Sep. 19, 2021, 3 pgs. [cited by applicant]
U.S. Appl. No. 15/789,668, Examiner Interview Summary mailed Jan. 13, 2020, 4 pgs. [cited by applicant]
U.S. Appl. No. 15/789,668, Examiner Interview Summary mailed Oct. 7, 2019, 3 pgs. [cited by applicant]
U.S. Appl. No. 15/789,668, Final Office Action mailed Jul. 10, 2018, 18 pgs. [cited by applicant]
U.S. Appl. No. 15/789,668, Final Office Action mailed Nov. 20, 2019, 12 pgs. [cited by applicant]
U.S. Appl. No. 15/789,668, Non Final Office Action mailed Jan. 10, 2018, 20 pgs. [cited by applicant]
U.S. Appl. No. 15/789,668, Non Final Office Action mailed Sep. 12, 2019, 22 pgs. [cited by applicant]
U.S. Appl. No. 15/789,668, Response filed Jan. 17, 2020, 18 pgs. [cited by applicant]
U.S. Appl. No. 15/789,668, Response filed Apr. 9, 2018, 20 pqs. [cited by applicant]
U.S. Appl. No. 15/789,668, Response filed Sep. 10, 2018, 17 pgs. [cited by applicant]
U.S. Appl. No. 15/789,668, Response filed Oct. 28, 2019, 16 pgs. [cited by applicant]
U.S. Appl. No. 15/789,668, Supplementary Response filed Sep. 19, 2018. 13 pgs. [cited by applicant]
U.S. Appl. No. 16/824,454, Examiner Interview Summary mailed Feb. 17, 2022, 3 pgs. [cited by applicant]
U.S. Appl. No. 16/824,454, Examiner Interview Summary mailed Mar. 11, 2022, 5 pgs. [cited by applicant]
U.S. Appl. No. 16/824,454, Final Office Action mailed Feb. 16, 2021, 13 pgs. [cited by applicant]
U.S. Appl. No. 16/824,454, Non-Final Office Action mailed Oct. 21, 2020, 12 pgs. [cited by applicant]
U.S. Appl. No. 16/824,454, Non-Final Office Action mailed Nov. 17, 2021, 17 pgs. [cited by applicant]
U.S. Appl. No. 16/824,454, Notice of Allowance mailed Apr. 25, 2022, 7 pgs. [cited by applicant]
U.S. Appl. No. 16/824,454, Response filed Jan. 21, 2021, 9 pgs. [cited by applicant]
U.S. Appl. No. 16/824,454, Response filed May 10, 2021, 10 pgs. [cited by applicant]
U.S. Appl. No. 15/789,668, entitled “Configurable Data Entry Elements,” filed Oct. 20, 2017 by Yue Bu. [cited by applicant]