Skip to main content

         This documentation site is for previous versions. Visit our new documentation site for current releases.      

Parsing Amounts

Updated on March 4, 2022
Pega Smart Investigate for Payments Implementation Guide

The rules defined in this section apply to Transaction Amount.


The parser recognizes amounts in the following formats:

  • CCC.999999999999999,9999
  • CCC999999999999999,
  • 9999 999999999999999,9999/CCC
  • CCC. 999999999999999,9999
  • 999999999999999,9999 CCC


  • CCC is a valid ISO currency code such as USD, GBP, or EUR.
  • The decimal point is a decimal comma or a period separating the whole number from the fraction.
  • The whole number string is 15 digits maximum, including punctuation if present; if present, the 000 separator can be a period or a comma.
  • The decimal fraction is four digits maximum and if zero can be represented as follows:
  • If a 000 separator is present, and a separator for the whole numbers and fractions is also present, they will be different; for example, 1,000.00 or 1.000,00.

Sample Amounts

Each of the following examples is recognized as one million Japanese yen:

  • JPY1000000, JPY1.000.000, JPY1.000.000 JPY 1,000,000 JPY1000000,- JPY 1000000.- 1,000,000/JPY

Each of the following examples is recognized as fifteen hundred Australian dollars:

  • AUD1,500.00 AUD 1,500 AUD1500 AUD1.500, AUD1.500,00 AUD1.500,- AUD1,500.- AUD 1500.00 1500.00/AUD

One of the following words may optionally appear in the preceding n characters:


Manipulate/Translate Step

If an amount is found, it is converted to the Pega 8 standard Amount With Currency format.

Test/Validate Step

The following test conditions are possible as part of a When rule:

Is{Located Amount} < {.AmountProperty} Is {Located Amount} = {.AmountProperty} Is {Located Amount} <= {.AmountProperty} Is {Located Amount} > {.AmountProperty} Is {Located Amount} >= {.AmountProperty} Is {Located Amount} < “LiteralAmount”

Is{Located Amount} = “LiteralAmount” Is {Located Amount} <= “LiteralAmount” Is {Located Amount} > “LiteralAmount” Is {Located Amount} >= “LiteralAmount”

Iscurrency of {Located Amount} = “XXX” or “XXX” or “XXX” (where XXX= ISO currency)

Map/Output Step

If the Test/Validate step returns TRUE, or no test/validate step is used and data has been successfully located, the output is saved as a property.

Have a question? Get answers now.

Visit the Support Center to ask questions, engage in discussions, share ideas, and help others.

Did you find this content helpful?

Want to help us improve this content?

We'd prefer it if you saw us at our best. is not optimized for Internet Explorer. For the optimal experience, please use:

Close Deprecation Notice
Contact us