diff --git a/specs/paymentrequest.html b/specs/paymentrequest.html index d5160f90..89a19834 100644 --- a/specs/paymentrequest.html +++ b/specs/paymentrequest.html @@ -311,7 +311,7 @@

PaymentRequest constructor

             {
-              "requestShipping": true
+              "requestedData": ['shipping-address']
             }
           
@@ -648,7 +648,7 @@

PaymentDetails dictionary

PaymentOptions dictionary

 dictionary PaymentOptions {
-  boolean requestShipping = false;
+  sequence<RequestedData> requestedData;
 };
       
@@ -660,17 +660,26 @@

PaymentOptions dictionary

The following fields MAY be passed to the PaymentRequest constructor:

-
requestShipping
+
requestedData
- This boolean value indicates whether the user agent should collect and return - a shipping address as part of the payment request. For example, this would be set to - true when physical goods need to be shipped by the merchant to the user. - This would be set to false for an online-only electronic purchase transaction. - If this value is not supplied then the the PaymentRequest behaves as - if a value of false had been supplied. + A sequence containing one or more RequestedData values that the user agent should collect and return as part of the payment request. For example, if a merchant needs to collect shipping address and email, they can request both shipping-address and email
+ +
+

RequestedData Registry

+
+        enum RequestedData {
+          "shipping-address",
+          "email",
+          "phone-number"
+        };
+      
+

+ The RequestedData enum defines the list of known values that can be requested as part of the payment request. +

+

PaymentItem dictionary

@@ -722,7 +731,7 @@

ShippingAddress interface

};

- If the requestShipping flag was set to true in the PaymentOptions + If shipping was requested as part of RequestedData in the PaymentOptions passed to the PaymentRequest constructor, then the user agent will populate the shippingAddress field of the PaymentRequest object with the user's selected shipping address. @@ -1105,7 +1114,7 @@

User accepts the payment request algorithm

The user agent user interface should ensure that this never occurs.
  • - If the requestShipping value of request@[[\options]] + If requestedData contains shipping-address in request@[[\options]] is true, then if the shippingAddress attribute of request is null or if the shippingOption attribute of request is null, then terminate this algorithm and take no further action. This should