US 11,853,302 B1
Automatically starting activities upon crossing threshold
Nikki Nash, Seattle, WA (US); Gregory T. Kavounas, Bellevue, WA (US); Stefan Kim, Maple Valley, WA (US); Aaron Lee Robles, Bainbridge Island, WA (US); Robert Erdman, Bremerton, WA (US); Mark Alan Withers, Bainbridge Island, WA (US); and Tim Diekmann, San Jose, CA (US)
Filed by Avalara, Inc., Seattle, WA (US)
Filed on Jun. 3, 2021, as Appl. No. 17/338,220.
Claims priority of provisional application 63/055,825, filed on Jul. 23, 2020.
Int. Cl. G06F 16/2455 (2019.01); G06F 16/248 (2019.01); G06F 16/28 (2019.01)
CPC G06F 16/24568 (2019.01) [G06F 16/248 (2019.01); G06F 16/24564 (2019.01); G06F 16/288 (2019.01)] 15 Claims
OG exemplary drawing
 
1. A computer system including:
one or more processors; and
a non-transitory computer-readable storage medium having stored thereon instructions which, when executed by the one or more processors, cause the computer system to perform:
receiving, from a client device associated with a seller comprising a primary entity, instructions via an automatic collection of sales tax option selection, in which the instructions received from the client device cause a tax engine of an online service provider to detect exactly when an economic nexus threshold is crossed based on relationship instances representing transactions of the seller and digital tax rules;
in response to detecting that the economic nexus threshold is crossed, automatically producing a resource representing a sales tax amount, in which the producing the resource representing the sales tax amount in response to detecting that the economic nexus threshold is crossed includes:
receiving a dataset on behalf of the primary entity, in which the dataset includes data regarding a relationship instance associated with the primary entity and that represents a transaction of the primary entity;
determining a domain associated with the relationship instance;
parsing from the dataset a base value associated with the dataset representing a value of the transaction;
accessing an electronic true or false flag associated with the primary entity and with the domain;
checking a flag status of the true or false flag; and
determining that the flag status is false, and in response to such determination, performing a first set of operations; or
determining that the flag status is true, and in response to such determination, performing a second set of operations;
in which the first set of operations includes:
looking up a first threshold associated with the domain and a second threshold associated with the domain;
accessing a first counter associated with the primary entity and the domain;
incrementing the first counter responsive to receiving the dataset;
determining that the first counter meets or exceeds the first threshold after the incrementing, and in response to such determination, setting the flag status to true;
accessing a second counter representing a present base value associated with the primary entity and the domain;
updating the second counter responsive to and based on the parsed base value;
determining that the second counter meets or exceeds the second threshold after updating the second counter, and in response to such determination, setting the flag status to true; and
checking the flag status of the true or false flag;
determining that the flag status is true, and in response to such determination, producing a resource representing a sales tax amount having a non-zero value and that is associated with the relationship instance; and
in which the second set of operations includes:
looking up a rate applicable to the dataset based on the domain;
producing, based on the rate and the parsed base value, a resource representing a sales tax amount having a nonzero value and that is associated with the relationship instance; and
transmitting, to the client device associated with the seller comprising the primary entity, a notification regarding the resource associated with relationship instance.