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 impact our ability to view your data and provide you with the necessary support should the need arise. Additionally, if you had to view transactions using the incorrect naming convention 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.