What happened?
Description
The value field in PaymentCurrencyAmount is currently defined as a numeric type (float in Python, float64 in Go, Double in Kotlin), but the W3C Payment Request API specification defines it as a DOMString (string type).
This inconsistency may cause issues with cross-language interoperability and deviates from the standard that the codebase explicitly references in its docstrings.
Affected files
src/ap2/types/payment_request.py — value: float
samples/go/pkg/ap2/types/payment_request.go — Value float64
samples/android/.../data/ShoppingAgentTypes.kt — val value: Double
Proposed fix
Change value to a string type across all languages to align with the W3C spec.
See PR: #191
Relevant log output
Code of Conduct