diff --git a/index.html b/index.html index b70f0ad2..61c796ae 100644 --- a/index.html +++ b/index.html @@ -616,6 +616,13 @@

"AbortError" DOMException.

+

+ The following algorithm provides an extension point: other + specifications that define more specific algorithms for matching the + available payment apps to the provided payment methods + are encouraged to hook themselves into this specification at this + point in the algorithm. +

The show() method MUST act as follows:

@@ -665,17 +672,22 @@

  • Return acceptPromise and perform the remaining steps in parallel.
  • -
  • For each paymentMethod in - request.[[\serializedMethodData]]: -
      -
    1. Determine which payment apps support any of the - payment method identifiers given by the first element of - the paymentMethod tuple. For each resulting payment - app, if payment method specific capabilities supplied by the - payment app match those provided by the second element of the - tuple, the payment app matches. -
    2. -
    +
  • +

    + Extension point: process algorithms for determining the + available methods of paying at this point. +

    +

    + The algorithms should process each item in + request.[[\serializedMethodData]] and determine + the set of payment apps, with the appropriate + capabilities, that is available to fulfill the payment request. +

    +

    + The output of executing these algorithms is a list of payment + apps, and any other methods of paying, able to fulfill the + payment request. +

  • If this consultation produced no supported method of paying, then reject acceptPromise with a "NotSupportedError" @@ -685,12 +697,11 @@

  • Otherwise, show a user interface to allow the user to interact - with the payment request process, using those payment apps - and payment methods which the above step identified as - feasible. The user agent MAY show payment methods in the order - given by supportedMethods, but SHOULD prioritize the - preference of the user when presenting payment methods and - applications. + with the payment request process, using those methods of paying + which the above step identified as supported. The user agent MAY + show these methods of paying in the order given by + supportedMethods, but SHOULD prioritize the preference + of the user.

    The payment app should be sent the appropriate data from