There are a range of code lists in IATI that should be used when reporting data. These ensure a standardised approach which enables data to be searched quickly and easily by users in order to extract specific information or to aid with comparisons across reporting organisations, countries, sectors, etc.
When you are reporting against an element, if that element provides a code list your data will be expected to contain a valid code from that list. Some of the code lists can be used in default settings, such as language and currency, and then only need to be amended if there is a change from the default at any point in the reporting.
Only codes present on the lists can be used and must be in the same format as shown in the lists. For example, language codes are two letter codes in lower case and country codes are two letter codes in upper case.
If something that should have a code is not listed (this has been relevant to the country code list in the past) the support function should be accessed and organisations should not try to create there own codes.
The only exception for not using codes in the code lists is organisation identifiers. If an organisation does not appear in the organisation identifier code list they can generate their own identifier. This follows a specified format and more information can be found at: http://support.iatistandard.org/entries/20603957-generating-a-unique-organisation-identifier
All of the code lists can be found under code lists section of this site.