System and method for processing transactions

A method, computer program product, and computer system for receiving a first scan of an identifier from a first computing device is disclosed. The identifier is associated with a financial transaction. A second scan of the identifier is received from a second computing device. The financial transaction is processed based upon, at least in part, receiving the second scan of the identifier from the second computing device.

TECHNICAL FIELD

This disclosure relates to electronic transactions systems and, more particularly, to methods and systems for processing transactions in more efficient and/or convenient manners.

BACKGROUND

When performing a transaction (e.g., a financial transaction such as those used to effectuate the purchase of an item), currency, checks, credit cards, and the like often may be used to facilitate the transaction. The efficiency or convenience of using any one of these forms of rendering payment may be limited in certain situations.

BRIEF SUMMARY OF DISCLOSURE

In one implementation, a method, performed by one or more computing devices, comprises receiving a first scan of an identifier from a first computing device. The identifier is associated with a financial transaction. A second scan of the identifier is received from a second computing device. The financial transaction is processed based upon, at least in part, receiving the second scan of the identifier from the second computing device.

One or more of the following features may be included. Processing the financial transaction may include purchasing one or more items. Processing the financial transaction may include transferring an asset from a first location to a second location. Validity of the financial transaction may be authenticated. Authenticating validity of the financial transaction may include verifying whether the first scan of the identifier matches the second scan of the identifier. Authenticating validity of the financial transaction may include sending a notification to a user identifying the financial transaction. Authenticating validity of the financial transaction may include receiving a user-based confirmation. The identifier may include at least one of a signature and an image. The image may include a code. The code may include at least one of a bar code and a QR code.

In another implementation, a computing system includes a processor and a memory configured to perform operations comprising receiving a first scan of an identifier. The identifier is associated with a financial transaction. A second scan of the identifier is received. The financial transaction is initiated based upon, at least in part, receiving the second scan of the identifier.

One or more of the following features may be included. Processing the financial transaction may include purchasing one or more items. Processing the financial transaction may include transferring an asset from a first location to a second location. Validity of the financial transaction may be authenticated. Authenticating validity of the financial transaction may include verifying whether the first scan of the identifier matches the second scan of the identifier. Authenticating validity of the financial transaction may include sending a notification to a user identifying the financial transaction. Authenticating validity of the financial transaction may include receiving a user-based confirmation. The identifier may include at least one of a signature and an image. The image may include a code. The code may include at least one of a bar code and a QR code.

In another implementation, a computer program product resides on a computer readable storage medium that has a plurality of instructions stored on it. When executed by a processor, the instructions cause the processor to perform operations comprising receiving a first scan of an identifier. The identifier is associated with a financial transaction. A second scan of the identifier is received. The financial transaction is initiated based upon, at least in part, receiving the second scan of the identifier.

One or more of the following features may be included. Processing the financial transaction may include purchasing one or more items. Processing the financial transaction may include transferring an asset from a first location to a second location. Validity of the financial transaction may be authenticated. Authenticating validity of the financial transaction may include verifying whether the first scan of the identifier matches the second scan of the identifier. Authenticating validity of the financial transaction may include sending a notification to a user identifying the financial transaction. Authenticating validity of the financial transaction may include receiving a user-based confirmation. The identifier may include at least one of a signature and an image. The image may include a code. The code may include at least one of a bar code and a QR code.

DETAILED DESCRIPTION

As will be appreciated by one skilled in the art, the present disclosure may be embodied as a method, system, or computer program product. Accordingly, the present disclosure may take the form of an entirely hardware implementation, an entirely software implementation (including firmware, resident software, micro-code, etc.) or an implementation combining software and hardware aspects that may all generally be referred to herein as a “circuit,” “module” or “system.” Furthermore, the present disclosure may take the form of a computer program product on a computer-usable storage medium having computer-usable program code embodied in the medium.

Any suitable computer usable or computer readable medium may be utilized. The computer readable medium may be a computer readable signal medium or a computer readable storage medium. The computer-usable, or computer-readable, storage medium (including a storage device associated with a computing device or client electronic device) may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, device, or any suitable combination of the foregoing. More specific examples (a non-exhaustive list) of the computer-readable medium may include the following: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a media such as those supporting the internet or an intranet, or a magnetic storage device. Note that the computer-usable or computer-readable medium could even be a suitable medium upon which the program is stored, scanned, compiled, interpreted, or otherwise processed in a suitable manner, if necessary, and then stored in a computer memory. In the context of this document, a computer-usable or computer-readable, storage medium may be any tangible medium that can contain or store a program for use by or in connection with the instruction execution system, apparatus, or device.

A computer readable signal medium may include a propagated data signal with computer readable program code embodied therein, for example, in baseband or as part of a carrier wave (though this is not a requirement of the present disclosure and it need not be included). Such a propagated signal may take any of a variety of forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. The computer readable program code may be transmitted using any appropriate medium, including but not limited to the internet, wireline, optical fiber cable, RF, etc. A computer readable signal medium may be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device.

The flowchart and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of apparatus (systems), methods and computer program products according to various implementations of the present disclosure. It will be understood that each block in the flowchart and/or block diagrams, and combinations of blocks in the flowchart and/or block diagrams, may represent a module, segment, or portion of code, which comprises one or more executable computer program instructions for implementing the specified logical function(s)/act(s). These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the computer program instructions, which may execute via the processor of the computer or other programmable data processing apparatus, create the ability to implement one or more of the functions/acts specified in the flowchart and/or block diagram block or blocks or combinations thereof. It should be noted that, in some alternative implementations, the functions noted in the block(s) may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved.

The computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed (not necessarily in a particular order) on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions/acts (not necessarily in a particular order) specified in the flowchart and/or block diagram block or blocks or combinations thereof.

Referring toFIG. 1, there is shown transaction process10that may reside on and may be executed by a computer (e.g., computer12), which may be connected to a network (e.g., network14) (e.g., the internet or a local area network). Examples of computer12(and/or one or more of the client applications noted below) may include, but are not limited to, a personal computer(s), a laptop computer(s), an automated teller machine(s) (ATM), vending machine(s), mobile computing device(s), a server computer, a series of server computers, a mainframe computer(s), or a computing cloud(s). Computer12may execute an operating system, for example, but not limited to, Microsoft® Windows®; Mac® OS X®; Red Hat® Linux®, or a custom operating system. (Microsoft and Windows are registered trademarks of Microsoft Corporation in the United States, other countries or both; Mac and OS X registered trademarks of Apple Inc. in the United States, other countries or both; Red Hat is a registered trademark of Red Hat Corporation in the United States, other countries or both; and Linux is a registered trademark of Linus Torvalds in the United States, other countries or both).

As will be discussed below in greater detail, transaction process10may receive a first scan of an identifier from a first computing device. The identifier may be associated with a financial transaction. A second scan of the identifier may be received from a second computing device. The financial transaction may be initiated based upon, at least in part, receiving the second scan of the identifier from the second computing device.

The instruction sets and subroutines of transaction process10, which may be stored on storage device16coupled to computer12, may be executed by one or more processors (not shown) and one or more memory architectures (not shown) included within computer12. Storage device16may include but is not limited to: a hard disk drive; a flash drive, a tape drive; an optical drive; a RAID array; a random access memory (RAM); and a read-only memory (ROM).

Computer12may include a data store (not shown), such as a database (e.g., relational database, object-oriented database, etc.) and may be located within any suitable memory location, such as storage device16coupled to computer12. Any data described throughout may be stored in the data store. In some implementations, computer12may utilize a database management system such as, but not limited to, “My Structured Query Language” (MySQL®) in order to provide multi-user access to one or more databases, such as the above noted relational database. The data store may also be a custom database, such as, for example, a flat file database or an XML database. Any other form(s) of a data storage structure and/or organization may also be used. Transaction process10may be a component of the data store, a stand alone application that interfaces with the above noted data store and/or an applet/application that is accessed via client applications22,24,26,28. The above noted data store may be, in whole or in part, distributed in a cloud computing topology. In this way, computer12and storage device16may refer to multiple devices, which may also be distributed throughout the network.

Computer12may execute one or more financial applications (e.g., financial application20), examples of which may include, but are not limited to, e.g., a financial institution application, a financial processing application, an authentication application, an e-commerce application, an acquirer application, or other application that allows payment and/or asset (e.g., money) transfers to be effectuated, e.g., through the Internet or otherwise.

Transaction process10and/or financial application20may be accessed via, e.g., client applications22,24,26,28. Transaction process10, financial application20, one or more of client applications22,24,26,28, or a combination thereof, may be, e.g., a stand alone application, or may be an applet/application/script that may interact with and/or be executed within transaction process10, financial application20, one or more of client applications22,24,26,28, or a combination thereof. Examples of client applications22,24,26,28may include, but are not limited to, e.g., a financial institution application, a financial processing application, an authentication application, an e-commerce application, an acquirer application, or other application that allows payment and/or asset (e.g., money) transfers to be effectuated, e.g., through the Internet or otherwise, a scanning application, a standard and/or mobile web browser, an email client application, a textual and/or a graphical user interface, a customized web browser, a plugin, or a custom application. The instruction sets and subroutines of client applications22,24,26,28, which may be stored on storage devices30,32,34,36coupled to client electronic devices38,40,42,44, may be executed by one or more processors (not shown) and one or more memory architectures (not shown) incorporated into client electronic devices38,40,42,44.

Storage devices30,32,34,36may include but are not limited to: hard disk drives; solid-state drives (SSDs), flash drives, tape drives; optical drives; RAID arrays; random access memories (RAM); and read-only memories (ROM). Examples of client electronic devices38,40,42,44(and/or computer12) may include, but are not limited to, a personal computer (e.g., client electronic device38), a laptop computer (e.g., client electronic device40), a smart phone (e.g., client electronic device42), a notebook computer (e.g., client electronic device44), a tablet (not shown), a server (not shown), a checkout register, an automated teller machine (ATM; not shown), a vending machine, a scanner (e.g., code scanner, image scanner, etc.), a data-enabled, cellular telephone (not shown), a television (not shown), a smart television (not shown), a media (e.g., video, photo, etc.) capturing device (not shown), and a dedicated network device (not shown). Client electronic devices38,40,42,44may each execute an operating system, examples of which may include but are not limited to, Android™, Apple® iOS®, Mac® OS X®; Red Hat® Linux®, or a custom operating system.

One or more of client applications22,24,26,28may be configured to effectuate some or all of the functionality of transaction process10(and vice versa). Accordingly, transaction process10may be a purely server-side application, a purely client-side application, or a hybrid server-side/client-side application that is cooperatively executed by one or more of client applications22,24,26,28and/or transaction process10.

One or more of client applications22,24,26,28may be configured to effectuate some or all of the functionality of financial application20(and vice versa). Accordingly, financial application20may be a purely server-side application, a purely client-side application, or a hybrid server-side/client-side application that is cooperatively executed by one or more of client applications22,24,26,28and/or financial application20. As one or more of client applications22,24,26,28, transaction process10, and financial application20, taken singly or in any combination, may effectuate some or all of the same functionality, any description of effectuating such functionality via one or more of client applications22,24,26,28, transaction process10, financial application20, or combination thereof, and any described interaction(s) between one or more of client applications22,24,26,28, transaction process10, financial application20, or combination thereof to effectuate such functionality, should be taken as an example only and not as a limitation of this disclosure.

Users46,48,50,52may access computer12and transaction process10directly through network14and/or through secondary network18. Further, computer12may be connected to network14through secondary network18, as illustrated with phantom link line54. Transaction process10may include one or more user interfaces, such as browsers and textual or graphical user interfaces, through which users46,48,50,52may access transaction process10.

The various client electronic devices may be directly or indirectly coupled to network14(or network18). For example, client electronic device38is shown directly coupled to network14via a hardwired network connection. Further, client electronic device44is shown directly coupled to network18via a hardwired network connection. Client electronic device40is shown wirelessly coupled to network14via wireless communication channel56established between client electronic device40and wireless access point (i.e., WAP)58, which is shown directly coupled to network14. WAP58may be, for example, an IEEE 802.11a, 802.11b, 802.11g, Wi-Fi, and/or Bluetooth™ device that is capable of establishing wireless communication channel56between client electronic device40and WAP58. Client electronic device42is shown wirelessly coupled to network14via wireless communication channel60established between client electronic device42and cellular network/bridge62, which is shown directly coupled to network14.

Referring also toFIG. 2, there is shown a diagrammatic view of client electronic device38. While client electronic device38is shown in this figure, this is for illustrative purposes only and is not intended to be a limitation of this disclosure, as other configuration are possible. For example, any computing device capable of executing, in whole or in part, transaction process10may be substituted for client electronic device38withinFIG. 2, examples of which may include but are not limited to computer12and/or client electronic devices40,42,44.

Client electronic device38may include a processor and/or microprocessor (e.g., microprocessor200) configured to, e.g., process data and execute the above-noted code/instruction sets and subroutines. Microprocessor200may be coupled via a storage adaptor (not shown) to the above-noted storage device16. An I/O controller (e.g., I/O controller202) may be configured to couple microprocessor200with various devices, such as keyboard206, pointing/selecting device (e.g., mouse208), custom device (e.g., scanner215), USB ports (not shown), and printer ports (not shown). A display adaptor (e.g., display adaptor210) may be configured to couple display212(e.g., CRT or LCD monitor(s)) with microprocessor200, while network controller/adaptor214(e.g., an Ethernet adaptor) may be configured to couple microprocessor200to the above-noted network14(e.g., the Internet or a local area network).

As discussed above and referring also toFIGS. 3-7, transaction process10may receive300a first scan of an identifier from a first computing device. The identifier may be associated302with a financial transaction by transaction process10. A second scan of the identifier may be received304by transaction process10from a second computing device. The financial transaction may be processed306by transaction process10based upon, at least in part, receiving304the second scan of the identifier from the second computing device.

For instance, assume for example purposes only that a user (e.g., user50) desires to mail a letter and places the letter in an envelope (e.g., envelope400) or other type of suitable packaging. In this example, envelope400may include an identifier (e.g., identifier402). In some implementations, the identifier may include at least one of a signature (e.g., handwritten or otherwise) and an image. In some implementations, the image may include a code. The code may include at least one of a bar code and a QR Code®. QR code is a registered trademark of Denso Wave Inc. in the United States, other countries or both. QR code may include a micro QR code. Other examples of signatures, images, codes (e.g., single or multi-dimensional), number/letter combinations, or any other identifiers may also be used without departing from the scope of this disclosure.

In some implementations, identifier402may be printed on envelope400, e.g., by user50inserting envelope400into a printer, and/or may be pre-printed on envelope400, e.g., by a manufacturer of envelope400. In some implementations, identifier402may be printed separately and subsequently combined with envelope400. For example, identifier402may include, e.g., an adhesive to enable identifier402to be affixed to envelope400. Other techniques of combining identifier402with envelope400may also be used without departing from the scope of this disclosure.

In this example, and in some implementations, transaction process10(e.g., via client application26, financial application20, or combination thereof) may receive300a first scan of an identifier (e.g., identifier402) from, e.g., a first computing device (e.g., client electronic device42). For instance, assume for example purposes only that client electronic device42includes, e.g., a camera, scanner, or other image capturing capabilities. User50may utilize the scanner (e.g., via client application26) of client electronic device42to capture identifier402. In some implementations, the captured identifier402may be sent from client electronic device42to be received300by transaction process10(and/or financial application20) at, e.g., another computing device (e.g., computer12).

In some implementations, transaction process10may associate302identifier402with a financial transaction. For instance, assume for example purposes only that identifier402is used, e.g., to facilitate payment of at least a portion of the cost of mailing envelope400. In this example, transaction process10may associate302(e.g., correlate, link, tie, relate, etc.) identifier402with the financial transaction of paying for the cost of mailing envelope400(e.g., based upon, at least in part, receiving300the first scan of identifier402), by accessing, e.g., the data store described above that may contain information to effectuate the financial transaction, as discussed below.

In some implementations, associating302identifier402with the financial transaction may include associating302identifier402with an account of a financial institution (e.g., bank) of, e.g., user50. For example, transaction process10may associate302identifier402with a savings/checking account of user50.

In some implementations, associating302identifier402with the financial transaction may include associating302identifier402with user50. For example, identifier402may be uniquely (e.g., exclusively) associated302with user50(and/or a business entity), similar to a credit card number, bank account number, utility account number, etc. This is not intended to be a limitation of this disclosure, as other implementations may be utilized.

For example, identifier402may be uniquely associated302with user50, e.g., permanently, and/or for a duration of time (e.g., seconds, minutes, days, etc.), and/or until another user (e.g., user52) scans (and/or transaction process10receives) identifier402before the above-noted financial transaction has been processed306or completed. In the latter example, this may have the effect of negating or otherwise removing the association302of identifier402with user50for the financial transaction, and instead associating302identifier402with user52for the financial transaction (or adding the association302of identifier402with user52for the financial transaction as similarly discussed above with the financial transaction of user50for the financial transaction). Additionally/alternatively, identifier402may be uniquely associated302with user50until user50scans (and/or transaction process10receives) identifier402a second time from user50(again) before the above-noted financial transaction has been processed306or completed (or until the above-noted financial transaction has been processed306or completed), at which time identifier402may be “freed” (e.g., made available) to be uniquely associated302with a different user (e.g., user52).

In some implementations, information regarding the financial transaction may be employed. This includes, but is not limited to, account number704; routing number706; financial institution name from which the cost of mailing envelope400is transferred708for the financial transaction; financial institution name to which the cost of mailing envelope400is transferred710for the financial transaction; financial institution account username/password/pin712a(e.g., credentials for accessing one or more of the above-noted financial institutions via client application26, transaction process10, financial application20, or a combination thereof); client application account username/password(s)/pin712b(e.g., credentials for accessing one or more of the above-noted financial institutions via client application26, transaction process10, financial application20, or a combination thereof); amount of money to transfer714; and a memo describing the financial transaction716. Such information (e.g., pertaining to the financial institution) may be used for the association302and may be provided (e.g., manually) by user50(e.g., via an example user interface700of client application26and pointer702, as shown inFIG. 7) and/or automatically (e.g., via client application26, transaction process10, financial application20, or a combination thereof), e.g., in response to user interface700being provided with relevant access credentials.

For example, by providing transaction process10with the credentials that may be used to log into an online account of the financial institution (e.g., financial institution username for user50, financial institution password for user50, etc.), the above-noted information may be accessed by transaction process10. In some implementations, user interface700may enable user50to provide a nickname (e.g., nickname “Stamp”718) for identifier402, e.g., to distinguish it from other identifiers (not shown).

In some implementations, transaction process10may receive304(e.g., via a second computing device such as computer12) a second scan of identifier402. For instance, assume for example purposes only that user50has mailed envelope400and that envelope400has been received by, e.g., the post office or other courier. The post office may scan identifier402(e.g., from envelope400) that may, in turn, be received304by transaction process10. In some implementations, the second scan of identifier402may occur at any point in time. For example, the second scan of identifier402may occur when envelope400is received at a mailbox receptacle, when envelope400is received by the mail person for the first time, when envelope400is being processed at a local post office, when envelope400is delivered to the appropriate address (e.g., when signing for receipt of envelope400and/or confirming delivery of envelope400), or any other time.

In some implementations, transaction process10may process306the financial transaction based upon, at least in part, receiving304the second scan of identifier402(e.g., via computer12). The term “process” (or “processing”) may imply a specific first action taken to process the financial transaction (e.g., initiating a transaction), continued processing of the financial transaction, and/or completing the financial transaction. For example, processing306the financial transaction may include purchasing308(e.g., via transaction process10, financial application20, client application26, or a combination thereof) one or more items. For instance, the one or more items may include the cost of mailing envelope400. Other items and/or services may also be purchased without departing from the scope of this disclosure.

Other examples of processing306may also be implemented without departing from the scope of this disclosure. For example, processing306the financial transaction may include transaction process10(e.g., via financial application20, client application26, or combination thereof) transferring310an asset (e.g., currency, title, stock, etc.) from a first location to a second location. For instance, assume for example purposes only that when the post office scans identifier402(and/or identifier402is received304by transaction process10), the cost of mailing envelope400(e.g., $0.50) may be transferred310from, e.g., an account of a financial institution of user50(e.g., the first location, or the source), to an account of a financial institution (e.g., bank) of the post office (e.g., the second location, or the target).

In some implementations, the cost of mailing envelope400may have already been transferred310from the account of user50to, e.g., an acquirer account, an escrow account, a holding account, intermediate account, etc. This may occur, e.g., in response to transaction process10receiving300the first scan of identifier402, and/or user50“pre-paying” for a future financial transaction before it occurs, and/or if a minimum threshold balance for any of the above-noted accounts is required, as well as in response to other situations. For instance, the first scan and the second scan may be the same scan (e.g., only one scan may actually be captured), such that transaction process10may process306the financial transaction based upon, at least in part, receiving300/304either the first scan of identifier402and/or the second scan of identifier402. In this example, when the post office scans identifier402(and/or identifier402is received304by transaction process10), the cost of mailing envelope400(e.g., $0.50) may be transferred310from, e.g., the acquirer account, to the account of the financial institution of the post office. As such, the acquirer account may be considered the first location (or the source) and the second location (or the target) as appropriate.

Continuing with the above-recited example, the cost of mailing envelope400(e.g., $0.50) may be transferred310from, e.g., a credit card (or debit card) account of the financial institution of user50. In some implementations, if $0.50 is more money than is needed to mail envelope400(e.g., user50has paid too much to mail envelope400), at least a portion of the refund of the excess cost may be provided to any of the above-noted accounts (e.g., back to the account of the financial institution of user50, acquirer account, etc.).

In some implementations, some or all of the refund may be transferred310to another account (e.g., charity, company, friend/family, etc.) that may be designated, e.g., via transaction process10. For example, a company associated with, e.g., transaction process10, may, in exchange for refunding at least a portion of the excess cost that might not normally be identified and refunded, charge a “finder fee” of, e.g., 10% of the refunded cost and/or a flat fee of, e.g., $0.10 per refund.

In some implementations, user50may provide identifier402to another user (e.g., user52). For instance, assume for example purposes only that user50has forgotten a set of expensive headphones at the home of user52, and user50has asked user52to mail the headphones back to user50. In this example, rather than requiring user52to pay for the cost of mailing the headphones, user50(e.g., via client application26and/or transaction process10) may send (e.g., email, text, etc.) identifier402to user52for use when mailing the headphones. In this manner, transaction process10may receive300the first scan of identifier402, which may include transaction process10generating identifier402. Thus, in some implementations, receiving300the first scan may include the generation of identifier402and/or the capturing of identifier402via a scan of identifier402.

Additionally, upon delivery of the headphones to user50, a second scan of identifier402may be received304by transaction process10when, e.g., user50signs for the delivery. Upon receipt304of the second scan of identifier402, transaction process10may then process306the financial transaction, thereby charging user50for the cost of mailing the headphones (e.g., as opposed to user52).

Some implementations may enable identifier402to be associated302with more than one financial transaction (for more than one user) at a time. For instance, assume for example purposes only that a letter is being sent by, e.g., user50and user48, and they would like to split the cost of mailing envelope400. In this example, each user may scan identifier402(e.g., with different client electronic devices), resulting in two scans that may be received300by transaction process10. Further, transaction process10may associate302identifier402with each respective user's financial institution account as noted above, such that when transaction process10processes306the financial transaction, the cost of mailing envelope400is split evenly (or as evenly as possible; additionally/alternatively, each user may enter an amount that each desires to pay via the above-noted user interface700).

Such an implementation may be beneficial in many various situations, for example, where multiple users wish to split a bar tab, restaurant bill, rent, utilities, transportation, etc. In some implementations, as noted above, user50may (e.g., via user interface700of client application26) input the amount (e.g., percentage, number, etc.) that user50would like to be responsible for paying when the financial transaction is processed306. As a more specific example, such as the restaurant bill example, identifier402may be combined with a bill (e.g., restaurant bill500) or a receipt. Continuing with the restaurant bill example, scanning identifier402on restaurant bill500may (e.g., via transaction process10and/or client application26) render at least some of the contents of restaurant bill500on at least client electronic device42(e.g., via a display) (not shown). This may enable user50(e.g., via transaction process10and/or client application26) to select which items user50would like to pay for in the financial transaction. This may, for example, obviate the need for the server to split up the items.

In some implementations, the scan received300from user50(e.g., via client application26) may be the first scan of identifier402, and the scan received304from user48(e.g., via client application24) may be the second scan of identifier402. For example, the first scan of identifier402from user50may be such that user50wants to pay 40% of restaurant bill500, leaving 60% remaining for user48. In this example, the second scan of identifier402received304from user48may cause transaction process10to process306the financial transaction for user50to pay for 40% of restaurant bill500and/or user48to pay for 60% of restaurant bill500. This is not intended to be a limitation of the present disclosure however, as in some implementations, receiving the scan of identifier402from user50may cause transaction process10to process306payment by user50before the scan by user48is received.

In some implementations (similar to the example described with respect to restaurant bill500), each individual item on the menu may be associated with an identifier, such that user50scanning the appropriate identifier adds the cost of that menu item to the financial transaction to be processed306by transaction process10, as well as in some implementations, to send the items to a cook for preparation. In this example, the items sent to the cook may also identify who ordered the item (e.g., by name, table, etc.), whether the food was delivered to the table, as well as any other special instructions associated with the order that may be entered by, e.g., user50(e.g., no onions), e.g., via the above-noted user interface700. Additionally, e.g., when ordering alcoholic beverages, transaction process10(e.g., via client electronic device26) may automatically perform an age verification process to ensure user50is of legal age to purchase such a beverage.

Other implementations also exist. As another example, assume that user50is grocery shopping. In this example, user50may scan (e.g., four) items (each with their own respectively unique identifier), such that those four items are added to the cost of the financial transaction to be processed306by transaction process10. More specifically, the unique identifier may be associated with all of the same items (e.g., Brand X Canned Corn), and/or may be associated with an individual can of canned corn. This may, e.g., be beneficial for gathering produce restocking information.

Additionally/alternatively, transaction process10may gather information pertaining to the items for sales, marketing, or other purposes. For example, transaction process10may send targeted ads or coupons for, e.g., corn or other items, to user50(e.g., via mail or via client application26) based upon, at least in part, user50scanning the identifier (not shown) of canned corn and/or including the cost of the canned corn in the financial transaction. Transaction process10may also enable user50to opt-out of such information gathering.

As noted above, identifier402may be associated302with more than one financial transaction at a time. For instance, assume for example purposes only that an item is being sold on a television (e.g., smartTV; not shown) and identifier402appears on the TV display. In the example, user48and user50may each scan identifier402(e.g., with different client electronic devices), resulting in two scans that may be received300by transaction process10. Further, transaction process10may associate302identifier402with each respective user's financial institution account as noted above, such that when transaction process10processes306the financial transaction, the cost of purchasing the item may be processed for each user separately (e.g., each user may pay full price and purchase the item themselves).

In some implementations, as noted above, identifier402may be uniquely (e.g., exclusively) associated302with user50, such that the identifier that appears on the TV display for user50is different than the identifier that appears on the TV display for user48. That is, the above-example may be used, e.g., to bid on an item during a TV auction, where each user's scan may constitute the next bid. The increase in bid amount may be, e.g., entered manually by user50and/or may be pre-determined as an automatic increased amount. A preset maximum bidding amount may be used by transaction process10(and/or client application26) such that scanning identifier402does not constitute the next bid if the next bid amount would be greater than the preset maximum bidding amount.

In some implementations, the validity of the financial transaction may be authenticated312by transaction process10. For instance, the validity of the financial transaction may be authenticated312before transferring310the cost of mailing envelope400to the acquirer account and/or to the account of the financial institution of the post office. For example, authenticating312the validity of the financial transaction may include ensuring that user50(and/or someone else authorized to act on behalf of user50) is the person (or entity) authorized to start, e.g., the first scan of identifier402(e.g., via client application26) or authorized to commence any other activities that may result in processing306of the financial transaction by transaction process10.

In some implementations, authenticating312validity of the financial transaction may include transaction process10verifying314whether the first scan of identifier402matches the second scan of identifier402. For instance, assume for example purposes only that the first scan of identifier402is received300by transaction process10executing on computer12and stored, e.g., in the above-noted data store. Further assume that a different envelope (not shown) mailed by a different user includes a different identifier than identifier402, and that a scan of the different identifier is received by transaction process10. In this example, transaction process10may compare the first scan of identifier402(e.g., received300from client electronic device42and stored in the above-noted data store) with the second scan of the different identifier. Because the first scan of identifier402may not match the second scan of the different identifier, transaction process10may not authenticate312the validity of the financial transaction and therefore may prevent processing306from initiating, continuing, and/or completing (e.g., at least for one user).

Conversely, assuming for example purposes only that envelope400is eventually scanned and received by transaction process10, transaction process10may compare the first scan of identifier402with the second scan of identifier402. Based upon, at least in part, the first scan of identifier402matching the second scan of identifier402, transaction process10may authenticate312the validity of the financial transaction and may initiate, continue, or complete processing306.

In some implementations, the first scan may not need to be received300by transaction process10to process306each financial transaction. For example, as noted above, identifier402may include a signature (e.g., handwritten or otherwise). In this example, transaction process10may receive300a first scan of the signature of user50as a template from which to compare other signatures.

More specifically, assume for example purposes only that the first scan of the signature of user50is received300and stored in the above-noted data store. In this example, a different user may attempt to forge the signature of user50to obtain free postage. Thus, transaction process10may compare the first scan of the signature of user50with the second scan of the forgery. If the two signatures do not match (e.g., within some threshold difference), transaction process10may not authenticate312the validity of the financial transaction, and may prevent processing306from initiating, continuing, and/or completing.

Conversely, if the two signatures do match (e.g., within some threshold difference), transaction process10may authenticate312the validity of the financial transaction and may initiate, continue, or complete processing306of the financial transaction. Thus, in some implementations, user50may simply sign each envelope without sending (e.g., via client application26) a scan of each envelope's signature to transaction process10. Additionally/alternatively, the above example may apply equally to, e.g., other identifiers such as a QR code, such that a QR code exclusive to user50may be received as a template, and user50may simply use the exclusive QR code on each envelope without sending (e.g., via client application26) a scan of each envelope's QR code to transaction process10. This may also include the transmission of one or more QR codes to transaction process10together as a “package” of QR codes.

In some implementations, authenticating312validity of the financial transaction may include transaction process10sending316a notification to a user identifying the financial transaction. For instance, after at least one of the first and second scans is either captured (e.g., by client application26) and/or received300/304by transaction process10, transaction process10may send316a notification (e.g., mail, email, push notification, text message, telephone message/call, etc.) to user50(e.g., via client electronic device42) indicating, e.g., that the scan has occurred and/or that a financial transaction is pending (or has occurred). In some implementations, the notification may include at least a portion of the information from user interface700, e.g., to help identify the transaction from other transactions. Moreover, transaction process10may send316the notification to user50at other times without departing from the scope of the disclosure. Such a notification may be used, e.g., for record keeping, to alert user50to the attempted financial transaction, or other uses without departing from the scope of the present disclosure.

In some implementations, authenticating312validity of the financial transaction may include transaction process10receiving318a user-based confirmation. For example, to enable scanning (e.g., the first scan) of identifier402, transaction process10may require that user50(e.g., via client application26) log in with a username and/or a password (e.g., a pin). In this example, client application26may send a notification to transaction process10that the password was entered successfully to authenticate312the validity of the financial transaction.

Other examples of a user-based confirmation may also be used without departing from the scope of the disclosure. For example, user50may reply to the above-noted email notification, and/or may receive a phone call (e.g., from the financial institution of user50) to verify the financial transaction. In some implementations, the user-based confirmation may be requested and/or received318anytime before and/or after the first scan. For example, before the financial transaction is processed306, user50may be required to reply to the above-noted email confirmation. As another example, for instance, in the above example where user52is utilizing identifier402allegedly with permission from user50when mailing the headphones, the user-based confirmation may be requested and/or received318by user50after the second scan is received304. As another example, the user-based confirmation may be requested and/or received318by user52after the second scan is received304. In some implementations, the user-based confirmation by user52may include, e.g., a pin sent from user50(e.g., via client application26) to be entered by user52(e.g., via client application28).

While one or more implementations may be described using examples of “financial” transactions, transaction process10may be used for other types of transactions or events without departing from the scope of the disclosure. For example, identifier402may be combined and associated302with the transaction or event of issuing and/or filling pharmacy prescriptions, e.g., to help prevent forged prescriptions and maintain more accurate records of issued and/or filled prescriptions. In this example, the first scan of identifier402on the prescription may be required, e.g., by a doctor (e.g., when issuing the prescription) to be received300(e.g., by a computing device of a pharmacy) before a pharmacy (including, but not limited to, mail-order pharmacies) may be authorized to fill the prescription and/or before the pharmacy may accept payment for the prescription (including, e.g., alerting an insurance company as to the transaction or event for rendering payment (or reimbursement)).

Continuing with the above-stated example, identifier402(which may include an Rx number for the prescription) may be associated302with an object (e.g., the prescription), and/or any transaction/event (e.g., paying for the prescription, legitimizing, issuing and/or filling the prescription, etc.). More specifically, a scan of identifier402may be received300/304by transaction process10, thereby causing transaction process10to process306the above-noted transaction/event. In some implementations, identifier402may be combined with the prescription bottle, where, e.g., a scan of identifier402received300/304, e.g., by a pharmacy computing device (not shown), transaction process10may process306, e.g., the above-noted transaction/event and/or the transaction/event of refilling the prescription (e.g., if the prescription has refills available). This may be similar to the result of a user “calling in” to refill the prescription by phoning the pharmacy and providing the Rx number.

As another non-limiting example such as issuing a ticket (e.g., speeding ticket, parking ticket, etc.), a first scan may be received300at a first computing device, e.g., of a police station, e.g., from a “meter maid” with, e.g., a second computing device. Upon doing so, transaction process10may associate302identifier402with an object (e.g., the parking ticket, an illegally parked vehicle or registration of the illegally parked vehicle, etc.) and/or any transaction/event (e.g., paying for the parking ticket, issuing the parking ticket, etc.). Further, a second scan of identifier402may be received304from, e.g., the owner of the vehicle, thereby causing transaction process10to process306the above-noted transaction/event.

As an additional example, such as paying for parking, a first scan may be received300at a computing device, e.g., a parking meter, e.g., from the user parking the vehicle. Transaction process10may then associate302identifier402with an object (e.g., the parking meter, the parking meter receipt that may show the time when the parking receipt is valid, the parked vehicle or registration of the parked vehicle, etc.) and/or any transaction/event (e.g., paying for the parking receipt as discussed above (or paying for the meter itself where no parking receipts are issued)), renewing the parking receipt, issuing the parking receipt, sending an alert to a user when the meter expires, etc.). Further, a second scan of identifier402may be received304from, e.g., the owner of the vehicle, at the parking meter or via the receipt, thereby causing transaction process10to process306the above-noted transaction/event. This is not intended to be a limitation of the present disclosure, however, as in some implementations, an expired parking meter may result in issuing the above-noted parking ticket by, e.g., the meter maid scanning identifier402(e.g., on the meter and/or parking receipt similarly as described above). Accordingly, the “financial” transaction may, but need not, exclude other transaction/event types.

In another non-limiting example, identifier402may be combined with a “financial instrument” (e.g., check, traveler's check, credit card, debit card, pre-paid and/or refillable card, cash, “money grams”, bank deposit/withdrawal slips, and the like). For example, and prior to being put into circulation, e.g., by the Federal Reserve, a first scan of identifier402(e.g., printed on cash such as a dollar bill) may be required, e.g., by the U.S. Treasury Department, which may be responsible for printing the currency. To authenticate312the validity of the dollar bill, a user may scan identifier402(e.g., the second scan) on the dollar bill, which may send a request, e.g., to the U.S. Treasury Department, to provide verification of the dollar bill's circulation. In some implementations, a data store containing all first scanned identifiers may be searched in response to the second scan. This may reduce counterfeiting of the currency, and may assist in the tracking of the dollar bill. Other verification techniques may also be used without departing from the scope of the disclosure.

In some implementations, the first scan of identifier402(e.g., on check600) may be required to make it eligible for being deposited or cashed. This may obviate the need for using routing and account numbers on checks. For instance, scanning identifier402may (e.g., via client application26and/or transaction process10) cause transaction process10to associate302identifier402with, e.g., routing/account numbers, the check amount, the person to whom check600is made out, the date of check600, and/or other information typically printed on a check that may be used to effectuate a financial transaction. Such information may be stored and/or later accessed by transaction process10in the above-noted data store, e.g., for security purposes and/or to effectuate the financial transaction. The information may also be manually written to check600for convenience.

Additionally/alternatively, each identifier402may, but need not, differ from check to check. The data encoded within identifier402(or identifier402itself) may also be encrypted using, e.g., a data encryption standard (DES) algorithm for added security. Moreover, the location where the information may be stored and/or accessed to effectuate a financial transaction may be identified, at least in part, by identifier402. Other well known techniques for identifying the location where the information may be stored (and/or accessed) may also be used without departing from the scope of the disclosure. For example, the second scan of identifier402may cause, e.g., transaction process10, to read the associated information (e.g., from the above-noted data store) to effectuate the appropriate financial transaction.

In still further implementations, an ATM (not shown) may be the client electronic device performing the second scan (via transaction process10) and/or by, e.g., a scanning device used by a person behind a teller counter. Thus, in some implementations, e.g., when using payment via an electronic check, the above example may still apply, wherein identifier402may be rendered on a display of a computing device for scanning in addition to (or in place of) the bank account information received300/304to make the electronic check eligible for being used as a payment method. This may, e.g., reduce the chance that bank account information is discovered by computer hackers, since identifier402may replace the need to manually enter such bank account information. However, identifier402may be rendered on a computing device display (e.g., to be scanned) for use with any of the examples discussed throughout without departing from the scope of this disclosure.

As another example, a scan of identifier402(e.g., on a pre-paid and/or refillable “card” made from any material, such as plastic, paper, etc.) may be received300/304from user50, where transaction process10may associate302the bank account of user50with identifier402(and the card). In some implementations, the card may be printed by a printer of user50and need not be obtained from a store. For example, user50(or another user) may, e.g., via transaction process10, activate, fill, or refill the card with money from the bank account of user50(e.g., process306the financial transaction), e.g., by transaction process10receiving300/304a scan of identifier402as discussed above. The amount to put on the card may be entered (e.g., manually) by user50(e.g., via user interface700of client application26) and/or automatically (e.g., via transaction process10). In some implementations, receiving304the second scan (e.g., when using the card to purchase something) may cause transaction process10to process306the activation, filling, or refilling of the card. This may, e.g., obviate the need for user50to carry around means of payment such as cash and credit cards.

In some implementations, transaction process10may be used to “pre-withdraw” cash from an ATM. For instance, assume for example purposes only that, e.g., a debit card, of user50includes identifier402(and may replace card number information). Transaction process10may receive300a scan of identifier402(e.g., via client electronic application26) and associate302the identifier with the financial transaction of withdrawing cash from the ATM. In some implementations, identifier402may be located, e.g., on the ATM itself. Additionally/alternatively, associating302identifier402with the financial transaction may include transaction process10associating302information (e.g., ATM pin, amount of money (to withdraw, transfer, deposit, etc.)) at the ATM. The information may be entered (e.g., manually) by user50(e.g., via client application26) and/or automatically (e.g., via transaction process10as noted above), e.g., as default values in response to the scan. In this example, the second scan of identifier302(e.g., from the debit card), may be scanned by the ATM when being inserted into the ATM, which may cause transaction process10to process306the above-noted financial transaction and, e.g., (physically and/or electronically) transfer310an amount of money via the ATM to user50. This may, e.g., result in fewer lines accruing at ATMs, as well as reduce the chances that someone sees the pin being entered at the ATM. In some implementations, computing devices other than an ATM (e.g., a vending machine) may similarly be used to purchase an item from the vending machine.

In some implementations, more than one identifier may be combined with, e.g., envelope400. For instance, assume for example purposes only that envelope400includes two identifiers (not shown) that may be associated with one another. Each identifier may, but need not, be the same type of identifier. For example, a first identifier may be that which is first scanned and received300by transaction process10. Transaction process10may receive304a scan of the second identifier associated with the first identifier, thereby causing transaction process10to process306the financial transaction. In this example, while there may be two distinct identifiers, both identifiers may be considered as the same identifier. As such, the discussion of a single identifier being scanned more than once should be taken as an example only and not as a limitation on the scope of this disclosure.

Additionally/alternatively, the first and second scan may be received in any order. For example, transaction process10may receive300the first scan of identifier402from the post office (e.g., via computer12). In this example, the second scan may be received304from client electronic device42. This may be useful, e.g., if a given user wished to utilize, e.g., the post office as a type of escrow agent. That is, assuming that the user wished to, e.g., provide a check to the post office but not have it mailed until receipt of, e.g., a purchased item, transaction process10may notify the seller of the item that a letter/check had been acquired by the post office. Then, after notifying the user (buyer) that the purchased item had been mailed, the user (buyer) could scan identifier402(e.g., such that transaction process10received300the first scan of identifier402) and thereafter effectuate the mailing of the letter/check (e.g., by processing306the transaction). Therefore, any particular order of scanning and/or receiving300/304identifier402should be taken as an example only and not as a limitation on the scope of this disclosure.

Still further, receiving300/304a scan of identifier402(e.g., sent from one or more of the above-noted computing devices) may, but need not, include identifier402(as seen by the human eye). For example, and for ease of illustration, conventional QR codes may be encoded with data (e.g., numeric, alphanumeric, byte/binary, Kanji, etc.). Such data may be determined (e.g., via client application26) to be sent and received300/304by transaction process10in place of or in addition to the actual QR code (e.g., as seen by the human eye).