# Data types We maintain a consistent format for currencies, amounts, and dates across all Kustom APIs. #### CURRENCY We use the [`ISO 4217`](https://en.wikipedia.org/wiki/ISO_4217) standard for defining currencies. Examples are *USD*, *GBP*, *EUR* or *SEK*. ```text { "purchase_currency": "USD" } ``` #### AMOUNT We express amounts in minor units according to the [`ISO 4217`](https://en.wikipedia.org/wiki/ISO_4217) standard. That means they are expressed in the smallest unit of currency. Examples are USD with 1000 representing $10, GBP with 500 representing £5, EUR with 50 representing €0.50 and SEK with 100 representing 1kr. #### STRINGS Strings may be up to 255 characters, unless otherwise noted in the field description. #### DATES Dates are expressed according to the [`ISO 8601`](https://en.wikipedia.org/wiki/ISO_8601) standard with combined date, time and timezone. The exception to this are `date_of_birth` fields where we accept values in the `YYYY-MM-DD` format. **Examples** - `2015-08-10T07:45:00Z` representing the 10th of August 2015 at 07:45:00 and the UTC timezone. - `2015-08-10T07:45:00.098Z` representing the 10th of August 2015 at 07:45:00, with factional seconds 98 (98 milliseconds) and the UTC timezone. #### LOCALE & COUNTRY Locales should be formatted as a language tag consisting of a two-letter language code combined with a two-letter country code according to [`RFC 5646`](https://en.wikipedia.org/wiki/IETF_language_tag). Examples are *en-us* for US English, *en-gb* for British English and *sv-se* for Swedish (in Sweden). Countries are handled as two-letter country codes according to [`ISO 3166 alpha-2`](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2). Examples are *us* for the United States, *gb* for Great Britain and *se* for Sweden. ```text { "locale": "en-us", "purchase_country": "US" } ``` #### ENCODING We expect all data that is sent to Kustom's APIs to be UTF-8 encoded. #### IDENTIFIERS Only identifiers generated by Kustom will be exposed through properties suffixed with `_id`. Identifiers generated by partners will be accepted through properties suffixed with `_reference`.