New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 715577 link

Starred by 3 users

Issue metadata

Status: Fixed
Owner:
Closed: Apr 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Android
Pri: 3
Type: Feature



Sign in to add a comment

Add support for 'interledger' short string

Project Member Reported by rouslan@chromium.org, Apr 26 2017

Issue description

Ripple have been working on spec for Interledger [1] and needs to expose it to some developers to play with at a hackathon.

[1] https://w3c.github.io/webpayments/proposals/interledger-payment-method.html
 

Comment 1 by zkoch@chromium.org, Apr 26 2017

Any reason this isn't just a URL?

Comment 2 by adr...@ripple.com, Apr 26 2017

This is coming from the W3C Interledger Community group (not Ripple). There is no entity to host a manifest nor a desire to have a manifest for this payment method.

Comment 3 by zkoch@chromium.org, Apr 26 2017

Isn't there an interledger.org? Could we use that? This would unblock you quicker than waiting on us, probably.

Comment 4 by adr...@ripple.com, Apr 26 2017

There is an interledger.org but it's just a static site hosted on Github. We wouldn't be able to host the manifest properly using the custom HEAD behaviour (and we don't want to use the manifest mechanism anyway).


Comment 5 by zkoch@chromium.org, Apr 26 2017

I see I see. Curious, what's wrong with the manifest mechanism in this case?

Comment 6 by adr...@ripple.com, Apr 26 2017

Nothing wrong with it we just don't want the browser to bother trying to fetch it if it  will never exist.

The nature of how the payment method works is that there will never be a limit on payment apps or who can implement the payment method. Security of the participants is part of the protocol.

Comment 7 by zkoch@chromium.org, Apr 26 2017

Well, I guess the idea is that it should exist, it would just look like:

supported_origins: "*"


Comment 8 by adr...@ripple.com, Apr 26 2017

Right, but we don't have the resources to host that appropriately in a reliable way. 

Also, as soon as you do that there is SOMEBODY in control of the whole ecosystem (the person that controls that domain and can replace that manifest) which is against the whole principal of the way the payment method is designed to work.
Project Member

Comment 9 by bugdroid1@chromium.org, Apr 26 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/77b88c692df6e8617eabe390dee6c2f7a93e4367

commit 77b88c692df6e8617eabe390dee6c2f7a93e4367
Author: rouslan <rouslan@chromium.org>
Date: Wed Apr 26 23:45:23 2017

Enable supporting arbitrary short string payment method names.

Before this patch, support for "basic-card" in 3rd party Android payment
apps was hard-coded. Adding support for a new short string payment
method name would require large changes in AndroidPaymentAppFinder.java.

This patch removes custom handling for "basic-card" and instead
introduces a list of supported short string payment method names. So
far, the list contains only "basic-card".

After this patch, adding support for a new short string payment method
name is done trivially by appending it to the list of supported names.
Note that, for short string payment method names, only the names that
are published by W3C should be supported.

3rd party Android payment apps are behind a flag:
  chrome://flags/#android-payment-apps

Design:
https://docs.google.com/document/d/1izV4uC-tiRJG3JLooqY3YRLU22tYOsLTNq0P_InPJeE

BUG= 715577 

Review-Url: https://codereview.chromium.org/2838403002
Cr-Commit-Position: refs/heads/master@{#467515}

[modify] https://crrev.com/77b88c692df6e8617eabe390dee6c2f7a93e4367/chrome/android/java/src/org/chromium/chrome/browser/payments/AndroidPaymentAppFinder.java

Status: Fixed (was: Started)
Adrian, download Chrome Canary from https://play.google.com/store/apps/details?id=com.chrome.canary in a couple of days, enable chrome://flags/#android-payment-apps flag, and put this in AndroidManifest.xml of your payment app:

<activity android:name=".PaymentActivity" android:exported="true">
  <intent-filter>
    <action android:name="org.chromium.intent.action.PAY" />
  </intent-filter>
  <meta-data android:name="org.chromium.default_payment_method_name"
             android:value="interledger" />
</activity>

For more details, check out the information in this doc:
https://docs.google.com/document/d/1izV4uC-tiRJG3JLooqY3YRLU22tYOsLTNq0P_InPJeE
Components: -UI>Browser>Autofill>Payments UI>Browser>Payments

Sign in to add a comment