Push provisioning API (TapAndPay lib) return Calling package not verified

4.7k views Asked by At

I am implementing add a card to google pay. I download the demo project and install the demo app. And I basically copy code from that demo to my project but almost all functions return the error Calling package not verified. I can not find anything for package verifies.

UPDATE (probable solution):

I found how to generate SHA-256 key in doc.

# Function to display your SHA-256
$ keytool -printcert -jarfile my-push-provisioning-app.apk | grep SHA256

and send the result of this command to google via the form in doc... I did it and now I am waiting for some response. It could take them 2 weeks...

I am just wondering if they send me an acceptance email or if it just starts work ...

3

There are 3 answers

0
Yamashiro Rion On

For me the issue was:

com.google.android.gms.common.api.ApiException: 15009: Calling package not verified

I've realized that it only reproduced on the debug build type. After I switched to release, the issue was resolved.

0
user2819465 On

2 points for debug env:

  • provide to google your SHA-256 of your key (wrote above)
  • add special file to downloads to switch on sandbox mode

adb shell touch /sdcard/Download/android_pay_env_override_sandbox

0
nold On

ok for someone that is encountering this issue... hope this help someone

com.google.android.gms.common.api.ApiException: 15009: Calling package not verified

the 15009 is an error https://developers.google.com/pay/issuers/apis/push-provisioning/android/support/troubleshooting#debugging_tapandpay_unavailable_15009_errors

basically what it says , the apk build you have is not whitelisted push provisioning at google

you need to request a form to allow to whitelist it

what you need is get your SHA-256 of your key and request it to allow, follow the link below for more info: https://developers.google.com/pay/issuers/apis/push-provisioning/android/allowlist#allowlisting_internal_builds_of_your_app

if your build is in playstore or google console, the fingerprint can be grab automatically by them so no need to request ....but if you have a apk build that is created from a CI Pipeline that uses an upload key not app signing key , then you had to manually request it using the Sha-256 of upload key

this is why for the commenter above the release build work for them because it gets the SHa-256 from google console (App signing key) automatically