Order system payment routing
First Claim
1. A computer storage medium having stored computer-executable instructions comprising an application for routing a plurality of payment methods to a plurality of payment processors, wherein when executed, the computer-executable instructions perform a method comprising the following:
- receiving input from a user that specifies that payment objects corresponding to a first payment method are to be sent to a first payment processor;
receiving input from the user specifying that payment objects corresponding to a second payment method are to be sent to a second payment processor;
storing the first and second inputs in a database table, wherein the database table includes a payment method column and a payment processor column such that each payment method listed in the database table is associated with a payment processor defined in the same row as the payment method such that the payment processor to which a corresponding payment method is sent is updatable by modifying the value of the payment processor in the corresponding row of the database table without requiring the recoding of the application and such that by modifying the payment processor value in the same row as the payment method, a corresponding payment method is sent to a different payment processor corresponding to the modified payment processor value;
receiving input from a second user regarding a set of one or more goods to purchase in a single purchase transaction;
receiving input from the second user regarding a plurality of payment methods by which the set of one or more goods are to be purchased;
creating a collection of payment objects wherein the collection contains an object for each payment method, wherein each object indicates the associated payment method and an amount to pay using the payment method for which the object was created;
receiving the collection of payment objects at a payment router, wherein each of the payment objects is associated with other information that includes information about a shopping cart in the form of an OrderForm dictionary, and configuration information needed to execute a pipeline in the form of a Context dictionary;
the payment router accessing each payment object in the collection of payment objects to determine the associated payment method for each payment object;
the payment router using the associated payment method for each payment object to retrieve the corresponding payment processor from the database table; and
the payment router sending data derived from each payment object to the corresponding payment provider to request payment in the amount specified in the payment object.
2 Assignments
0 Petitions
Accused Products
Abstract
Aspects of the subject matter described herein relate to processing payment requests. In aspects, a user of an online system is allowed to pay for goods or services using a combination or one or more payment types including credit card, cash card, gift certificate, purchase order, money order, other payment types, and the like. A payment router determines which payment processor(s) needs to be involved to satisfy each payment request and routes payment requests to each payment processor as needed. Adding new payment methods and changing existing payment methods may be accomplished by changing a table or the like that associates payment methods with payment processors.
-
Citations
11 Claims
-
1. A computer storage medium having stored computer-executable instructions comprising an application for routing a plurality of payment methods to a plurality of payment processors, wherein when executed, the computer-executable instructions perform a method comprising the following:
-
receiving input from a user that specifies that payment objects corresponding to a first payment method are to be sent to a first payment processor; receiving input from the user specifying that payment objects corresponding to a second payment method are to be sent to a second payment processor; storing the first and second inputs in a database table, wherein the database table includes a payment method column and a payment processor column such that each payment method listed in the database table is associated with a payment processor defined in the same row as the payment method such that the payment processor to which a corresponding payment method is sent is updatable by modifying the value of the payment processor in the corresponding row of the database table without requiring the recoding of the application and such that by modifying the payment processor value in the same row as the payment method, a corresponding payment method is sent to a different payment processor corresponding to the modified payment processor value; receiving input from a second user regarding a set of one or more goods to purchase in a single purchase transaction; receiving input from the second user regarding a plurality of payment methods by which the set of one or more goods are to be purchased; creating a collection of payment objects wherein the collection contains an object for each payment method, wherein each object indicates the associated payment method and an amount to pay using the payment method for which the object was created; receiving the collection of payment objects at a payment router, wherein each of the payment objects is associated with other information that includes information about a shopping cart in the form of an OrderForm dictionary, and configuration information needed to execute a pipeline in the form of a Context dictionary; the payment router accessing each payment object in the collection of payment objects to determine the associated payment method for each payment object; the payment router using the associated payment method for each payment object to retrieve the corresponding payment processor from the database table; and the payment router sending data derived from each payment object to the corresponding payment provider to request payment in the amount specified in the payment object. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method performed by an application that is executed by a processor of a computer, the method comprising:
-
receiving input to the computer from a user that specifies that payment objects corresponding to a first payment method are to be sent to a first payment processor; receiving input to the computer from the user specifying that payment objects corresponding to a second payment method are to be sent to a second payment processor; storing the first and second inputs in a database table which is stored in a computer storage medium of the computer, wherein the database table includes a payment method column and a payment processor column such that each payment method listed in the database table is associated with a payment processor defined in the same row as the payment method such that the payment processor to which a corresponding payment method is sent is updatable by modifying the value of the payment processor in the corresponding row of the database table without requiring the recoding of the application and such that by modifying the payment processor value in the same row as the payment method, a corresponding payment method is sent to a different payment processor corresponding to the modified payment processor value; receiving input to the computer from a second user regarding a set of one or more goods to purchase in a single purchase transaction; receiving input to the computer from the second user regarding a plurality of payment methods by which the set of one or more goods are to be purchased; creating a collection of payment objects in memory of the computer wherein the collection contains an object for each payment method, wherein each object indicates the associated payment method and an amount to pay using the payment method for which the object was created; receiving the collection of payment objects at a payment router that is being executed by the processor of the computer, wherein each of the payment objects is associated with other information that includes information about a shopping cart in the form of an OrderForm dictionary, and configuration information needed to execute a pipeline in the form of a Context dictionary; the payment router accessing each payment object in the collection of payment objects to determine the associated payment method for each payment object; the payment router using the associated payment method for each payment object to retrieve the corresponding payment processor from the database table; and for each payment object; the payment router copying data derived from the payment object to the associated Context dictionary with a payment-to-process key; and the payment router routing a payment request corresponding to the payment object to the corresponding payment provider to request payment in the amount specified in the payment object by executing the pipeline using the Context dictionary and OrderForm dictionary. - View Dependent Claims (9, 10, 11)
-
Specification