IP Library Granted Patent US 9,430,759
Granted Patent B2
US 9,430,759 · App. 14/480,538 · Granted Aug 30, 2016

Fees and foreign currency exchange calculation

Inventors: Vinit Agarwal (Sunnyvale, CA); Ravi Devesetti (Fremont, CA); Nicholas Peddy (Mountain View, CA); Steven Todd Black (Menlo Park, CA); Tyler C. Grant (East Palo Alto, CA); Kristian Widjaja (Union City, CA)
Assignee: PAYPAL, INC.
G06Q20/085G06Q20/381G06Q40/00G06Q40/02G06Q40/025G06Q40/04G06Q40/06
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,430,759
App. No.
14/480,538
Granted
Aug 30, 2016
Kind
B2
Abstract

Various methods, apparatus, and systems are disclosed for calculating a fee linked to an online financial transaction, with improved flexibility and availability through caching and refreshing of fee calculation data. In one embodiment, a method includes extracting fee calculation data into a data cache associated with control data that is updated in response to refreshing of the data cache; receiving a fee calculation request linked to an online transaction associated with a fee type, a country code, and a client identifier; and then selecting, by looking up the data cache, a base fee from either a default fee determined by the fee type and the country code or from an overriding fee associated with the client identifier. The method further includes calculating a transaction fee for the online transaction based at least in part on the base fee; and verifying the control data to transmit the calculated transaction fee.

Claims (48)

1. A method of calculating a fee for an online transaction comprising:

extracting fee calculation data from a database into a data cache comprising at least one writer view and at least one reader view identified by control data, wherein the at least one writer view stores the extracted fee calculation data;

swapping the at least one writer view with the at least one reader view by updating the control data, wherein the extracting and the swapping are periodically performed to refresh the data cache;

receiving a fee calculation request linked to an online transaction associated with a fee type, a country code, and a client identifier;

determining a current reader view based on the control data;

accessing, by a hardware processor using the client identifier, the current reader view to determine whether a default fee or an overriding fee applies to the online transaction;

retrieving, from the current reader view based on the fee type and the country code, the default fee to use as a base fee in response to determining that the default fee applies;

calculating, by the hardware processor, a transaction fee for the online transaction based at least in part on the base fee;

determining whether the current reader view has changed due to the periodic performing of the extracting and the swapping;

transmitting, in response to determining that the current reader view has not changed, a fee calculation response indicative of the calculated transaction fee; and

repeating the accessing, the retrieving, and the calculating in response to determining that the current reader view has changed.

2. The method of claim 1 , wherein the initial base fee comprises a sum of a transaction percentage component and a fixed amount component.

3. The method of claim 1 , wherein the calculating the transaction fee comprises applying at least one adjustment to the base fee, the at least one adjustment being applied when one or more associated conditions are met.

4. The method of claim 3 , wherein:

the at least one adjustment comprises a discount corresponding to a dynamic volume tier; and

the one or more associated conditions comprise whether the client identifier is associated with the dynamic volume tier.

5. The method of claim 4 , wherein the dynamic volume tier is determined by a monthly total payment volume.

6. The method of claim 3 , wherein the at least one adjustment is applied to a transaction percentage component of the base fee based on a dynamic volume tier associated with the client identifier.

7. The method of claim 1 , wherein the fee type comprises one of a receiver fee, a personal payment fee, a withdrawal fee, a withdrawal return fee, an automatic teller machine cash advance fee, or a currency exchange fee.

8. The method of claim 1 , wherein:

the control data is an integer that is incremented in response to the swapping of the at least one writer view with the at least one reader view of the data cache; and

the determining of the current reader view based on the control data comprises comparing the control data with an integer value corresponding to the control data stored prior to the determining whether the default fee or the overriding fee applies.

9. A system comprising:

a communication interface configured to receive a fee calculation request linked to an online financial transaction associated with a fee type, a country code, and a client identifier;

a database configured to store a plurality of overriding base fees each linked to a client identifier, and a plurality of default base fees each linked to a fee type and a country code;

a data cache comprising at least one writer view and at least one reader view identified by control;

a non-transitory memory storing machine-readable instructions; and

a processor communicatively coupled to the communication interface, the database, and the data cache, wherein the processor is configured to read instructions from the non-transitory memory to cause the system to perform operations comprising:

extracting fee calculation data from the database into the data cache, wherein the at least one writer view stores the extracted fee calculation data;

swapping the at least one writer view with the at least one reader view by updating the control data, wherein the extracting and the swapping are periodically performed to refresh the data cache;

determining a current reader view based on the control data;

accessing, using the client identifier, the current reader view to determine whether a default fee or an overriding fee applies to the online transaction;

retrieving, from the current reader view based on the fee type and the country code, the default fee to use as a base fee in response to determining that the default fee applies;

calculating a transaction fee for the online transaction based at least in part on the base fee;

determining whether the current reader view has changed due to the periodic performing of the extracting and the swapping;

transmitting, via the communication interface, in response to the determining that the current reader view has not changed, a fee calculation response indicative of the calculated transaction fee; and

repeating the accessing, the retrieving, and the calculating in response to determining that the current reader view has changed.

10. The system of claim 9 , wherein the initial base fee comprises a sum of a transaction percentage component and a fixed amount component.

11. The system of claim 9 , wherein the calculating the transaction fee comprises applying at least one adjustment to the base fee, the at least one adjustment being applied when one or more associated conditions are met.

12. The system of claim 11 , wherein:

the at least one adjustment comprises a discount corresponding to a dynamic volume tier; and

the one or more associated conditions comprise whether the client identifier is associated with the dynamic volume tier.

13. The system of claim 12 , wherein the dynamic volume tier is determined by a monthly total payment volume.

14. The system of claim 9 , wherein:

the control data is an integer that is incremented in response to the swapping of the at least one writer view with the at least one reader view of the data cache; and

the determining of the current reader view based on the control data comprises comparing the control data with an integer value corresponding to the control data stored prior to the determining whether the default fee or the overriding fee applies.

15. The method of claim 11 , wherein the at least one adjustment is applied to a transaction percentage component of the base fee based on a dynamic volume tier associated with the client identifier.

16. The system of claim 9 , wherein the fee type comprises one of a receiver fee, a personal payment fee, a withdrawal fee, a withdrawal return fee, an automatic teller machine cash advance fee, or a currency exchange fee.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 23, 2015
From: EBAY INC.
To: PAYPAL, INC.
Reel/Frame 036171/0221 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 18, 2015
From: AGARWAL, VINIT; BLACK, STEVEN TODD; DEVESETTI, RAVI; GRANT, TYLER C.; PEDDY, NICHOLAS; WIDJAJA, KRISTIAN
To: EBAY INC.
Reel/Frame 035026/0037 →
Continuity (2)
Continuation 12828013 · Jun 30, 2010
Related Publication 20140379543A1 · Dec 25, 2014