Error Library / AEP
XDM error: number field received text (currency symbols, commas)
What you see
Field 'price' expected type 'number' but got '₹1,299.00'Numeric XDM fields only accept numbers. Values formatted for people — currency symbols, thousands separators, units — arrive as text and fail validation.
Why it happens
- Exports from commerce and finance tools often format prices as "₹1,299.00", "$12.50" or "12.5 USD".
- European formats use a comma as the decimal separator ("12,50"), which is easy to misread as twelve thousand fifty.
- Integer fields also reject decimals: a quantity of "2.0" or "2.5" does not fit an integer.
How to fix it
- Strip currency symbols, spaces and thousands separators, then send the bare number: 1299.00.
- Put the currency in its own field (for example commerce.order.currencyCode = "INR") instead of inside the amount.
- Round or cast quantities to whole numbers when the field is an integer, and check why a fractional quantity appeared at all.
- Test a batch that includes your largest and smallest values, plus any refunds (negative amounts).
Before and after
Fails
{ "price": "₹1,299.00", "quantity": "2.0" }Works
{ "price": 1299.00, "quantity": 2, "currencyCode": "INR" }Common questions
Should revenue be a number or a string?
A number, with the currency in a separate code field. Strings can't be summed or compared in reporting.
Practise the fix
Build the Customer Profile
Reproduce this error in your own AEP practice workspace, fix it, and earn a verifiable credential for the skills involved: XDM schema design, Identity descriptors, Real-Time Customer Profile enablement, Dataset configuration.
Related errors
XDM error: invalid date-time format in timestamp fields
XDM error: boolean field got "yes", "Y" or "1"
AdsBot is an independent training provider, not affiliated with Adobe. Behaviour can differ between ingestion methods and product versions; always test with a small batch first.