This is an experimental technology
Check the Browser compatibility table carefully before using this in production.
The id
read-only attribute of the PaymentRequest
interface returns a unique identifier for a particular PaymentRequest
instance.
When constructing an instance of the PaymentRequest
, you are able to supply an custom id via PaymentDetailsInit
dictionary's id
member. If none is provided, the browser automatically sets the id value to a UUID.
Example
This example shows how to give a PaymentRequest
instance a custom id.
const details = { id: "super-store-order-123-12312", total: { label: "Total due", amount: { currency: "USD", value: "65.00" }, }, }; const request = new PaymentRequest(methodData, details); console.log(request.id); // super-store-order-123-12312
The id
is then also available in the PaymentResponse
returned from the show()
method, but under the requestId
attribute.
const response = await request.show(); console.log(response.requestId === request.id); // And in serialized form too const json = response.toJSON(); console.log(json.requestId,response.requestId, request.id);
Syntax
var id = paymentRequest.id
Value
A DOMString
.
Specifications
Specification | Status | Comment |
---|---|---|
Payment Request API The definition of 'id' in that specification. |
Candidate Recommendation | Initial definition. |
Browser Compatibility
The compatibility table on this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
id | Chrome Full support 61 | Edge Full support 16 | Firefox
Full support
55
| IE No support No | Opera No support No | Safari Full support 11.1 | WebView Android No support No | Chrome Android Full support 60 | Firefox Android
Full support
55
| Opera Android No support No | Safari iOS Full support 11.3 | Samsung Internet Android Full support 8.0 |
Legend
- Full support
- Full support
- No support
- No support
- See implementation notes.
- See implementation notes.
- User must explicitly enable this feature.
- User must explicitly enable this feature.