Experimental: This is an experimental technology
Check the Browser compatibility table carefully before using this in production.

The PaymentRequestEvent interface of the Payment Request API is the object passed to a payment handler when a PaymentRequest is made.



Creates a new PaymentRequestEvent object.


instrumentKeyRead only

Returns a PaymentInstrument object reflecting the payment instrument selected by the user or an empty string if the user has not registered or chosen a payment instrument.

methodDataRead only

Returns an array of PaymentMethodData objects containing payment method identifiers for the payment methods that the web site accepts and any associated payment method specific data.

modifiersRead only

Returns an array of objects containing changes to payment details.

paymentRequestIdRead only

Returns the ID of the PaymentRequest object.

paymentRequestOriginRead only

Returns the origin where the PaymentRequest object was initialized.

topOriginRead only

Returns the top-level origin where the PaymentRequest object was initialized.

totalRead only

Returns the total amount being requested for payment.



Opens the specified URL in a new window, if and only if the given URL is on the same origin as the calling page. It returns a Promise that resolves with a reference to a WindowClient.


Prevents the default event handling and allows you to provide a Promise for a PaymentResponse object yourself.


Payment Handler API
# the-paymentrequestevent

Browser compatibility

BCD tables only load in the browser