US 11,868,996 B1
Method and apparatus for performing transactions over a network using cross-origin communication
Patrick Collison, San Francisco, CA (US); John B. Collison, San Francisco, CA (US); Greg D. Brockman, San Francisco, CA (US); Saikat Chakrabarti, New York, NY (US); and Ross A. Boucher, New York, NY (US)
Assigned to STRIPE, INC., South San Francisco, CA (US)
Filed by Stripe, Inc., San Francisco, CA (US)
Filed on Oct. 19, 2018, as Appl. No. 16/165,859.
Application 16/165,859 is a continuation of application No. 15/792,253, filed on Oct. 24, 2017, granted, now 10,134,036.
Application 15/792,253 is a continuation of application No. 15/251,907, filed on Aug. 30, 2016, granted, now 9,824,354, issued on Nov. 21, 2017.
Application 15/251,907 is a continuation of application No. 13/664,808, filed on Oct. 31, 2012, granted, now 9,830,596, issued on Nov. 28, 2017.
Claims priority of provisional application 61/554,246, filed on Nov. 1, 2011.
Int. Cl. G06Q 20/10 (2012.01); G06Q 20/38 (2012.01); G06Q 20/40 (2012.01)
CPC G06Q 20/3829 (2013.01) [G06Q 20/102 (2013.01); G06Q 20/385 (2013.01); G06Q 20/4097 (2013.01)] 27 Claims
OG exemplary drawing
 
1. A method for conducting a financial transaction between a merchant having a first server and a customer at a client without requiring a preexisting relationship between the merchant and the customer while preventing access by the merchant to certain financial information of the customer used to complete the financial transaction, the method comprising:
receiving, at a third party server as part of a network communication, user payment information in response to a submission of a form from a client-side application of the client to a server-side application of the first server, the form when loaded causes a secure tunnel to be established to the third party server through which the network communication is received and through which a request to the third party server for a network-transferable single use identifier is submitted, the submission of the form starting transfer of the user payment information for the financial transaction;
creating the network-transferable single use identifier using the user payment information, wherein the single use identifier is created after starting transfer of the user payment information to enable completion of the financial transaction with the user payment information, the single use identifier being associated with the client, wherein the client and the first server are each different from the third party server; and
sending from the third-party server the single use identifier to the client-side application to enable the single use identifier to be sent from the client-side application to the server-side application for processing of the financial transaction without sending the user payment information to the first server of the merchant from the client when the client-side application submits the form to start the transfer of the user payment information for the financial transaction,
wherein an event handler captures a submit event during submission of the form, the form including a callback function to cause return of the single use identifier through the secure tunnel to be part of the form for submission to the server-side application, and
further comprising encrypting at least a portion of the user payment information and comparing the encrypted user information with data stored in a database as part of completing the financial transaction.