## Generic parsing errors
|MalformedJson||Malformed JSON or the mandatory elements are missing. The exception message includes complete information about the structural errors or JSON parsing errors.|
## Missing elements
The following list shows error codes for the mandatory elements missing per page type. The mandatory nature of these elements is conditional to the type property of the message. Therefore, these elements are marked as [Optional], but must be included for certain message types.
These error codes cover situations where elements were expected but not found, either because the element was missing, misspelled, or had a different type, structure, or incorrect child elements.
|MalformedJson||This is the generic parsing when there is malformed JSON or the mandatory elements (the ones _not_ marked as optional) are missing. The exception message includes complete information about the structural or JSON parsing error.|
|MissingOrMalformedCategory||No category element found.|
|MissingOrMalformedProduct||No product element found.|
|MissingOrMalformedBasket||No basket element found or malformed basket contents.|
|MissingOrMalformedOrderNo||No orderNo element found.|
|MissingOrMalformedCurrency||No currency element found.|
|MissingOrMalformedSubtotal||No subtotal element found.|
|MissingOrMalformedShipping||No shipping element found.|
|MissingOrMalformedTotal||No total element found.|
## Business logic errors
The following error codes cover well-formed JSON constraints in the business logic, such as the product ID is not found in the database, or the values are not recognized as valid.
|TypeNotRecognized||Message type not recognized.|
|CategoryNotRecognized||category value not recognized.|
|SiteNotRecognized||site value not recognized.|
|LocationNotRecognized||lang value not recognized. Language code is not valid. See [Language codes](🔗) for the correct values to use.|
|RecContentNotRecognized||recContent value not recognized. It should be either full or refCodeOnly.|