TaxJar API: The Impact of Special Characters

The naming convention of order numbers (transaction_id) should only include alphanumeric characters, underscores, and dashes. 

Dots/Periods and other special characters will not only adversely impact our ability to view the data and provide you with the necessary support should the need arise but also, if you were ever attempt to view these transactions via TaxJar's API a 404 error will most likely be returned because unsupported special characters negatively impacts the URL of the API request. 

Example:

GET  https://api.taxjar.com/v2/transactions/orders/ACF.237892

The reason for this is because some characters cannot be part of a URL (for example, the space) and some other characters have a special meaning in a URL. In HTML forms, for example, the character = is used to separate a name from a value. The URI generic syntax uses URL encoding to deal with this problem, while HTML forms make some additional substitutions rather than applying percent encoding for all such characters.

We need to translate special characters because all URLs need to conform to the syntax specified by the Uniform Resource Identifier (URI) specification. In effect, this means that URLs must contain only a special subset of ASCII characters: the familiar alphanumeric symbols, and some reserved characters for use as control characters within URLs. 

Some of these special characters are also considered delimiters, meaning they signal a break in the data. As such, if a special character is found, the TaxJar API will assume that a break in the data is being specified and will start trying to match the remainder of the request URL.