CanMakePaymentEvent
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Experimental: This is an experimental technology
Check the Browser compatibility table carefully before using this in production.
Note: This feature is only available in Service Workers.
The CanMakePaymentEvent
interface of the Payment Handler API is the event object for the canmakepayment
event, fired on a payment app's service worker to check whether it is ready to handle a payment. Specifically, it is fired when the merchant website calls the PaymentRequest()
constructor.
Constructor
CanMakePaymentEvent()
Experimental-
Creates a new
CanMakePaymentEvent
object instance.
Instance methods
respondWith()
Experimental-
Enables the service worker to respond appropriately to signal whether it is ready to handle payments.
Examples
self.addEventListener("canmakepayment", (e) => {
e.respondWith(
new Promise((resolve, reject) => {
someAppSpecificLogic()
.then((result) => {
resolve(result);
})
.catch((error) => {
reject(error);
});
}),
);
});
Specifications
Specification |
---|
Payment Handler API # the-canmakepaymentevent |
Browser compatibility
Report problems with this compatibility data on GitHubdesktop | mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
CanMakePaymentEvent | ||||||||||||
CanMakePaymentEvent() constructor | ||||||||||||
methodData | ||||||||||||
modifiers | ||||||||||||
paymentRequestOrigin | ||||||||||||
respondWith | ||||||||||||
topOrigin |
Legend
Tip: you can click/tap on a cell for more information.
- Full support
- Full support
- No support
- No support
- Experimental. Expect behavior to change in the future.
- Non-standard. Check cross-browser support before using.
- Deprecated. Not for use in new websites.
- See implementation notes.