- Knowledgebase
- ISO 20022 Messages
- ISO 20022 business rules
-
Glossary
-
XML / ISO 20022 Standard
-
ISO 20022 Messages
-
XML Schema
- Miscellaneous
- Attribute
- Closing Tag
- Comment
- Content
- Cvc-complex-type
- Cvc-elt
- Cvc-id
- Cvc-identity-constraint
- Cvc-minexclusive-valid
- Cvc-mininclusive-valid
- Cvc-type
- Cvc-totaldigits-valid
- Cvc-attribute
- Cvc-datatype-valid
- Maximum Length
- Cvc-enumeration-valid
- Cvc-fractiondigits-valid
- Cvc-length-valid
- Cvc-maxexclusive-valid
- Cvc-maxinclusive-valid
- Cvc-maxlength-valid
- Cvc-minlength-valid
- Cvc-pattern-valid
- Element Value
- Encoding
- Length
- Mandatory element
- Missing
- Missing Tag
- Missing Child Element
- MIXD
- Root
- Unsupported Characters
- UTF-8
- Value
- Wrong Declaration
-
EPC SEPA
-
CGI-MP
-
US ACH (Nacha)
-
SWIFT MT
-
Finvoice
-
Bank-Specific
-
XMLdation Service Guides
-
Studio Guide
-
Simulator
Currency Decimals
Currency Decimals
Overview
When declaring amounts in ISO 20022 payment files, the maximum number of digits after a decimal separator depends on the currency in question.
Currency Codes and maximum number of digits are defined in ISO 4217
The vast majority of currencies limit maximum digits in decimal to 2. Examples of these currencies inlcude: USD, EUR, CAD, GBP, NOK
Behaviour in validation
When a payment file contains too many digits after a decimal separator, following type of an error is given:
"Too many decimal digits given. Maximum of 2 may be present for the given currency.”
Valid examples:
<InstdAmt Ccy="EUR">10.21</InstdAmt>
<InstdAmt Ccy="EUR">10.2</InstdAmt><InstdAmt Ccy="EUR">10</InstdAmt>
Invalid examples (Returns error)
<InstdAmt Ccy="EUR">10.403</InstdAmt>
Further reading
ISO 4217: https://www.iso.org/iso-4217-currency-codes.html
Wikipedia: en.wikipedia.org/wiki/ISO_4217