Payment Processing Primary Data Center Designation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In point-of-sale electronic credit card transactions, existing systems face challenges in coordinating payment authorizations and transaction captures across multiple data centers, leading to issues with data center unavailability and potential duplicate transactions.
Innovation Solution
A payment processing system designates a primary data center for each transaction, ensuring that all subsequent requests, including authorization and capture requests, are routed through this center to prevent duplicate authorizations and captures, even if the initial request is sent to a different data center.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If multiple data centers process transactions independently, then system availability and redundancy are improved, but duplicate transactions and data inconsistency occur
Solution Approach 1:
A primary data center is designated as the intermediary for capture requests. When a non-primary data center receives a capture request, it forwards the request to the primary data center, which then executes the capture. This mediator approach ensures that only one data center processes captures for a given transaction, preventing duplicates while maintaining the ability to route through multiple centers for availability.
Solution Approach 2:
The system segments transaction processing roles between data centers: the primary data center handles captures and authoritative transaction state, while secondary data centers handle authorization requests and forwarding. This segmentation allows multiple centers to operate simultaneously without conflict, improving availability while maintaining consistency through clear role division.
2Productivity
If transaction requests are routed to any available data center, then processing speed and load distribution are improved, but duplicate authorizations and captures occur
Solution Approach 1:
The system performs preliminary routing to establish a primary data center before capture processing. The primary data center is identified early in the transaction flow, and all subsequent capture requests are directed to this predetermined center. This preliminary establishment of authority prevents duplicate captures while maintaining efficient routing through multiple centers for authorization.
Solution Approach 2:
Data centers provide feedback about transaction state and primary center identity. When a non-primary data center receives a capture request, it checks its knowledge of the primary center and forwards the request appropriately. This feedback mechanism ensures accurate routing decisions that prevent duplicates while maintaining processing efficiency.
3Loss of information
If a single data center processes all transactions, then transaction consistency is maintained, but system availability and fault tolerance decrease
Solution Approach 1:
The primary data center acts as an intermediary that centralizes capture authority while allowing multiple data centers to participate in authorization and request handling. This intermediary approach maintains consistency (like a single center) while distributing workload and availability (like multiple centers).
Solution Approach 2:
The system segments functions so that authorization can be distributed across multiple data centers while capture processing remains centralized at the primary data center. This segmentation enables fault tolerance through distributed authorization capability while maintaining consistency through centralized capture control.
4Device complexity
If data centers operate autonomously without coordination, then system complexity is reduced, but duplicate transactions and data inconsistency increase
Solution Approach 1:
All data centers implement the same universal logic for handling capture requests: identify the primary data center and forward requests accordingly. This multi-functional approach allows any data center to handle any request type while maintaining consistency through the universal primary-center-forwarding rule, reducing the need for complex specialized coordination protocols.
Data Source
AI summary
A payment service is configured to support purchase transactions generated by merchant point-of-sale (POS) devices, wherein each purchase transaction may comprise multiple transaction requests such as authorization requests and capture requests. Each transaction request may be sent to a different one of multiple data centers of the payment service. Upon successfully receiving an acknowledgement from one of the data centers for a transaction request, the POS device designates that data center as the primary data center. Subsequently, all transaction requests for that transaction identify the primary data center, even when the transaction requests are sent to other data centers. At the payment service, the data centers synchronize requests such that the primary data center is informed of all authorizations and is made responsible for performing the capture of the transaction. This allows the primary data center to detect duplicate authorizations and to prevent duplicate captures.


