Backend architecture method and system for aggregate payment, computer device, and storage medium
A backend architecture method includes: acquiring transaction information from a client, wherein the transaction information includes location information of the client; assigning, based on the location information, the transaction information to a transaction node that has jurisdiction over the location information, wherein the transaction node is a transaction center within a specified region in a distributed transaction system; matching, according to the transaction node, a channel gateway in a channel docking layer that pre-establishes a connection relationship with the transaction node, and sending a transaction request in the transaction information to a transaction object over the matched channel gateway such that the transaction object processes the transaction request; and acquiring a processing result from the transaction object, and transmitting information of the processing result to the client.
1. A method for an aggregating payment method for merchants, comprising:
providing a computerized aggregate payment architecture for carrying out the method, wherein the method provides an aggregated plurality of payment channels between the merchants and third-party payers comprising a unified interface for processing customer payment transactions, wherein the payment architecture is in electronic communication with a plurality of third-party payers, each comprising a transaction object;
wherein the payment architecture comprises a multiple layer server/client configuration wherein the merchants comprise a plurality of client POS terminals in electronic communication with a server of the payment architecture;
wherein the payment architecture comprises a back end for a plurality of third payment platforms established by the third-party payers and each providing a specific payment method or payment service type;
wherein the payment architecture comprises at least three independent software service layers which are in communication with one another in the payment architecture, comprising:
a first front end service access layer comprising a relay server;
a second core service layer comprising a plurality of servers, each comprising a plurality of transaction nodes, wherein the plurality of transaction nodes are distributed globally in various political regions around a world; and
a third channel docking layer for providing a plurality of electronic channel gateways in communication with respective ones of the transaction objects, wherein each channel comprises a pre-established application interface with a respective one of the transaction objects;
wherein the plurality of channels are connected to and in communication with the plurality of transaction nodes via a scheduling interface, wherein a specific channel is assigned to process a transaction in accordance with a specific transaction node, wherein the scheduling interface matches each channel with a specific third-party payer platform in accordance with an application protocol for that platform;
wherein each channel is logically independent of every other channel and shielded from an upstream transaction node to maintain unified, consistent transaction processing despite changes to other channels;
wherein the relay server of the payment architecture is configured to provide transaction node redundancy in processing a transaction, wherein if a specific transaction node is not available to transfer a transaction to a matched channel in the channel gateway, the relay server transfers the processing of the transaction to another transaction node based on a stored data structure comprising a mapping table and based on transaction node assignment rules;
wherein the payment architecture executes the steps of the method as follows:
acquiring, by the access frontend, transaction information from a client, wherein the transaction information comprises location information of the client or the location information of the server of a specific third-party payer which is the transaction object;
assigning, by the relay server, based on the location information, the transaction information to a transaction node that has jurisdiction over payment transactions of the location information by: matching, based on a service type of the transaction information, an assignment rule in the mapping table, such that requests for the same service type from the same client are processed by the same transaction node,
wherein the transaction node is deployed in the core service layer performing transaction service processing, and wherein the transaction node is classified as one of a plurality types of transaction nodes according to a location of a transaction object,
wherein the transaction object is a third party payment platform, and wherein the transaction node is assigned according to whether the transaction object is a bank in a domestic country or a bank in a foreign country, or is a non-bank third party payment platform in a domestic country or a non-bank third party payment platform in a foreign country;
acquiring, according to the assignment rule, information of a usage state of a matched transaction node, wherein the usage state comprises a predetermined transaction traffic ratio of the assigned transaction node;
in response to the usage state of the transaction node meeting a first predetermined condition, assigning, based on the location information, the transaction information to the transaction node that has jurisdiction over the location information;
matching, according to the transaction node, a channel gateway in a channel docking layer that pre-establishes an electronic connection relationship via an application interface with the transaction node, and
sending a transaction request in the transaction information to a transaction object over the matched channel gateway such that the transaction object processes the transaction request, wherein the transaction object is identified based on the transaction information, and wherein the channel gateway communicates with the transaction node by the scheduling interface, and the channel gateway and the scheduling interface form a communication interface,
wherein the scheduling interface is configured to shield interaction details to enable a connection of the transaction node with different transaction objects through a unified scheduling interface and maintain a consistent transaction process for different transaction objects; and
acquiring, by the transaction node, a processing result from the transaction object, and transmitting information of the processing result to the client,
wherein the client is configured to maintain one set of processes for interacting with the aggregated payment architecture having different transaction nodes through the unified scheduling interface.
2. The method according to claim 1 , wherein before assigning, by the relay server, based on the location information, the transaction information to the transaction node that has jurisdiction over the location information, the method further comprises:
verifying verification information of the transaction information, wherein the verification information is set using an encryption communication protocol;
acquiring identity information of the client sending the transaction information and the service type by parsing the transaction information that has passed the verification;
matching in an identity authority list based on the acquired identity information and the service type for authentication; and
assigning the transaction node to the transaction information that has passed the authentication.
3. The method according to claim 2 , wherein before assigning the transaction node to the transaction information that has passed the authentication, the method further comprises:
acquiring a traffic value of transaction information that has passed the authentication in a first predetermined time period; and
allowing assignment of transaction information of which the traffic value is less than or equal to a first predetermined threshold.
4. The method according to claim 1 , wherein in response to the usage state of the transaction node not meeting the first predetermined condition, the assignment rule is re-matched to re-determine the transaction node.
5. The method according to claim 1 , wherein processing the transaction request by the transaction object comprises:
creating a unique order number based on the transaction request;
processing, in the transaction object, the transaction request corresponding to the order number by calling a communication interface;
writing processing data of the transaction request, as an asynchronous task, into an asynchronous task queue for buffering;
performing a retry in response to an exception of an asynchronous task in the asynchronous task queue during processing; and
deleting, in response to all asynchronous tasks in the asynchronous task queue being completed, all the asynchronous tasks in the asynchronous task queue.
6. The method according to claim 5 , further comprising:
acquiring a retry count; and
deleting the asynchronous task in response to the retry count reaching a second threshold, and feeding back exception information to the client.
7. A non-transitory storage medium storing at least one computer-readable instruction, wherein the at least one computer-readable instruction, when executed by one or more processors, causes the one or more processors to perform the aggregating payment method for merchants as defined in claim 1 .
8. The non-transitory storage medium according to claim 7 , wherein before assigning, based on the location information, the transaction information to the transaction node that has jurisdiction over the location information, the method further comprises:
verifying verification information of the transaction information, wherein the verification information is set using an encryption communication protocol;
acquiring identity information of the client sending the transaction information and the service type by parsing the transaction information that has passed the verification;
matching in an identity authority list based on the acquired identity information and the service type for authentication; and
assigning the transaction node to the transaction information that has passed the authentication.
9. The non-transitory storage medium according to claim 8 , wherein before assigning the transaction node to the transaction information that has passed the authentication, the method further comprises:
acquiring a traffic value of transaction information that has passed the authentication in a first predetermined time period; and
allowing assignment of transaction information of which the traffic value is less than or equal to a first predetermined threshold.
10. The non-transitory storage medium according to claim 7 , wherein in response to the usage state of the transaction node not meeting the first predetermined condition, the assignment rule is re-matched to re-determine the transaction node.
11. The non-transitory storage medium according to claim 7 , wherein processing the transaction request by the transaction object comprises:
creating a unique order number based on the transaction request;
processing, in the transaction object, the transaction request corresponding to the order number by calling a communication interface;
writing processing data of the transaction request, as an asynchronous task, into an asynchronous task queue for buffering;
performing a retry in response to an exception of an asynchronous task in the asynchronous task queue during processing; and
deleting, in response to all asynchronous tasks in the asynchronous task queue being completed, all the asynchronous tasks in the asynchronous task queue.
12. The non-transitory storage medium according to claim 11 , wherein the method further comprises:
acquiring a retry count; and
deleting the asynchronous task in response to the retry count reaching a second threshold, and feeding back exception information to the client.
13. The method according to claim 1 , wherein a first type of a transaction node includes a group of larger banks in the domestic country, a second type of transaction node includes a group of smaller banks in the domestic country, a third type of transaction node includes a group of banks in the foreign countries, a fourth type of transaction node includes non-bank third party payment platforms in the domestic countries, and a fifth type of transaction node includes non-bank third party payment platforms in the foreign countries.
14. A backend architecture system for aggregate payment, the system has a computerized aggregated payment architecture for carry out an aggregating payment method, and provides an aggregated plurality of payment channels between the merchants and third-party payers comprising a unified interface for processing customer payment transactions, wherein the system is in electronic communication with a plurality of third-party payers, each comprising a transaction object;
wherein the system comprises a multiple layer server/client configuration wherein the merchants comprise a plurality of client POS terminals in electronic communication with a server of the payment architecture;
wherein the system comprises a back end for a plurality of third payment platforms established by the third-party payers and each providing a specific payment method or payment service type;
wherein the system comprises at least three independent software service layers which are in communication with one another in the payment architecture, comprising:
a first front end service access layer comprising a relay server;
a second core service layer comprising a plurality of servers, each comprising a plurality of transaction nodes, wherein the plurality of transaction nodes are distributed globally in various political regions around a world; and
a third channel docking layer for providing a plurality of electronic channel gateways in communication with respective ones of the transaction objects, wherein each channel comprises a pre-established application interface with a respective one of the transaction objects;
wherein the plurality of channels are connected to and in communication with the plurality of transaction nodes via a scheduling interface, wherein a specific channel is assigned to process a transaction in accordance with a specific transaction node, wherein the scheduling interface matches each channel with a specific third-party payer platform in accordance with an application protocol for that platform;
wherein each channel is logically independent of every other channel and shielded from an upstream transaction node to maintain unified, consistent transaction processing despite changes to other channels;
wherein the relay server of the system is configured to provide transaction node redundancy in processing a transaction, wherein if a specific transaction node is not available to transfer a the transaction to a matched channel in the channel gateway, the relay server transfers the processing of the transaction to another transaction node based on a stored data structure comprising a mapping table and based on transaction node assignment rules;
the system further comprising:
an access frontend, configured to acquire transaction information from a client, wherein the transaction information comprises location information of the client or the location information of the server of a specific third-party payer which is the transaction object;
the relay server is further configured to assign, based on the location information, the transaction information to a transaction node that has jurisdiction over the location information by: matching, based on a service type of the transaction information, an assignment rule in the mapping table, such that requests for a same service type from a same client are processed by a same transaction node; acquiring, according to the assignment rule, information of a usage state of a matched transaction node, wherein the usage state comprises a predetermined transaction traffic ratio of the assigned transaction node; in response to the usage state of the transaction node meeting a first predetermined condition, assigning, based on the location information, the transaction information to the transaction node that has jurisdiction over the location information, wherein the transaction node is a transaction center within a specified region in a distributed transaction system; and
the transaction node is configured to match, according to the transaction node, a channel gateway in a channel docking layer that pre-establishes a connection relationship with the transaction node, send a transaction request in the transaction information to a transaction object over the matched channel gateway such that the transaction object processes the transaction request, acquire a processing result from the transaction object, and transmit information of the processing result to the client, and wherein the transaction node is classified as one of a plurality types of transaction nodes according to a location of a transaction object, wherein the transaction object is a third party payment platform, and wherein the transaction node is classified according to whether the transaction object is a bank in a domestic country or a bank in foreign countries, or is a non-bank third party payment platform in a domestic country or a non-bank third party payment platform in foreign countries, wherein the client is configured to maintain one set of processes for interacting with an aggregated payment architecture having different transaction nodes through a unified scheduling interface, and
wherein the transaction object is identified based on the transaction information, and wherein the channel gateway communicates with the transaction node by a scheduling interface, and the channel gateway and the scheduling interface form a communication interface, wherein the scheduling interface is configured to shield interaction details to enable a connection of the transaction node with different transaction objects through the unified scheduling interface and maintain a consistent transaction process for different transaction objects.
15. A computer device, comprising a memory and a processor, wherein the computer device provides a computerized aggregate payment architecture, wherein the payment architecture provides an aggregated plurality of payment channels between the merchants and third-party payers comprising a unified interface for processing customer payment transactions, wherein the payment architecture is in electronic communication with a plurality of third-party payers, each comprising a transaction object;
wherein the payment architecture comprises a multiple layer server/client configuration wherein the merchants comprise a plurality of client POS terminals in electronic communication with a server of the payment architecture;
wherein the payment architecture comprises a back end for a plurality of third payment platforms established by the third-party payers and each providing a specific payment method or payment service type;
wherein the payment architecture comprises at least three independent software service layers which are in communication with one another in the payment architecture, comprising:
a first front end service access layer comprising a relay server;
a second core service layer comprising a plurality of servers, each comprising a plurality of transaction nodes, wherein the plurality of transaction nodes are distributed globally in various political regions around a world; and
a third channel docking layer for providing a plurality of electronic channel gateways in communication with respective ones of the transaction objects, wherein each channel comprises a pre-established application interface with a respective one of the transaction objects;
wherein the plurality of channels are connected to and in communication with the plurality of transaction nodes via a scheduling interface, wherein a specific channel is assigned to process a transaction in accordance with a specific transaction node, wherein the scheduling interface matches each channel with a specific third-party payer platform in accordance with an application protocol for that platform;
wherein each channel is logically independent of every other channel and shielded from an upstream transaction node to maintain unified, consistent transaction processing despite changes to other channels;
wherein the relay server of the payment architecture is configured to provide transaction node redundancy in processing a transaction, wherein if a specific transaction node is not available to transfer a the transaction to a matched channel in the channel gateway, the relay server transfers the processing of the transaction to another transaction node based on a stored data structure comprising a mapping table and based on transaction node assignment rules;
wherein the memory stores at least one computer-readable instruction, wherein the at least one computer-readable instruction, when executed by the processor, causes the processor to:
acquire transaction information from a client, wherein the transaction information comprises location information of the client or the location information of the server of a specific third-party payer which is the transaction object;
assign, based on the location information, the transaction information to a transaction node that has jurisdiction over the payment transaction of the location information by: matching, based on a service type of the transaction information, an assignment rule in the mapping table, such that requests for a same service type from a same client are processed by a same transaction node, and wherein the transaction node is deployed in the core service layer performing transaction service processing, and is classified as one of a plurality types of transaction nodes according to a location of a transaction object, wherein the transaction object is a third party payment platform, and wherein the transaction node is assigned according to whether the transaction object is a bank in a domestic country or a bank in foreign countries, or is a non-bank third party payment platform in a domestic country or a non-bank third party payment platform in a foreign country;
acquiring, according to the assignment rule, information of a usage state of a matched transaction node, wherein the usage state comprises a predetermined transaction traffic ratio of the assigned transaction node; in response to the usage state of the transaction node meeting a first predetermined condition, assigning, based on the location information, the transaction information to the transaction node that has jurisdiction over the location information;
match, according to the transaction node, a channel gateway in a channel docking layer that pre-establishes an electronic connection relationship via an application interface with the transaction node, and sending a transaction request in the transaction information to a transaction object over the matched channel gateway such that the transaction object processes the transaction request; and
acquire a processing result from the transaction object, and transmitting information of the processing result to the client,
wherein the transaction object is identified based on the transaction information, and wherein the channel gateway communicates with the transaction node by a scheduling interface, and the channel gateway and the scheduling interface form a communication interface, wherein the scheduling interface is configured to shield interaction details to enable a connection of the transaction node with different transaction objects through a unified scheduling interface, and maintain a consistent transaction process for different transaction objects, and
wherein the client is configured to maintain one set of processes for interacting with an aggregated payment architecture having different transaction nodes through the unified scheduling interface.
16. The computer device according to claim 15 , wherein before assigning, based on the location information, the transaction information to the transaction node that has jurisdiction over the location information, the at least one computer-readable instruction, when executed by the processor, further causes the processor to:
verify verification information of the transaction information, wherein the verification information is set using an encryption communication protocol;
acquire identity information of the client sending the transaction information and the service type by parsing the transaction information that has passed the verification;
match in an identity authority list based on the acquired identity information and the service type for authentication; and
assign the transaction node to the transaction information that has passed the authentication.
17. The computer device according to claim 16 , wherein before assigning the transaction node to the transaction information that has passed the authentication, the at least one computer-readable instruction, when executed by the processor, further causes the processor to:
acquire a traffic value of transaction information that has passed the authentication in a first predetermined time period; and
allow assignment of transaction information of which the traffic value is less than or equal to a first predetermined threshold.
18. The computer device according to claim 15 , wherein in response to the usage state of the transaction node not meeting the first predetermined condition, the assignment rule is re-matched to re-determine the transaction node.
19. The computer device according to claim 15 , wherein processing the transaction request by the transaction object comprises:
creating a unique order number based on the transaction request;
processing, in the transaction object, the transaction request corresponding to the order number by calling a communication interface;
writing processing data of the transaction request, as an asynchronous task, into an asynchronous task queue for buffering;
performing a retry in response to an exception of an asynchronous task in the asynchronous task queue during processing; and
deleting, in response to all asynchronous tasks in the asynchronous task queue being completed, all the asynchronous tasks in the asynchronous task queue.
20. The computer device according to claim 19 , wherein the at least one computer-readable instruction, when executed by the processor, further causes the processor to:
acquire a retry count; and
delete the asynchronous task in response to the retry count reaching a second threshold, and feeding back exception information to the client.