We are working on an Apache Cordova plugin based on remote-pay-android-go SDK that will allow Ionic/Cordova applications to integrate with the Clover Go device.
Here is the link to the plugin. We have implemented basic methods to init, connect, disconnect and make a sale. We are getting the error message "Transaction Declined. Please use another form for Payment" with reason "charge_declined", whenever we perform sale through the device.
I tried the example code in the remote-pay-android-go SDK and the code gives the same error for sale from the device and works well for the manual transaction.
Can someone help me understanding where we may be missing?
Thanks in advance!
I was able to get past this by following a recent answer by David Marginian on the Clover forum.
I believe there is something going on with the gateway emulator on sandbox, we are looking into it. In the meantime try transactions > 50 dollars, they should go through fine.
I think as the default currency is set to cents, the values I tried always remained below 50 dollars.
Related
The documentation link: https://developer.squareup.com/docs/pos-api/build-mobile-web#step-5-test-your-code suggest straight forward code like this:
<a href="intent:#Intent;
action=com.squareup.pos.action.CHARGE;
package=com.squareup;
S.browser_fallback_url=https://my.website.com/index.html;
S.com.squareup.pos.WEB_CALLBACK_URI=https://my.website.com/index.html;
S.com.squareup.pos.CLIENT_ID=sq0ids-yourClientId;
S.com.squareup.pos.API_VERSION=v2.0;
i.com.squareup.pos.TOTAL_AMOUNT=100;
S.com.squareup.pos.CURRENCY_CODE=USD;
S.com.squareup.pos.TENDER_TYPES=com.squareup.pos.TENDER_CARD,com.squareup.pos.TENDER_CASH;
end">Start Transaction</a>
I tested it and it does not open any link, my devide already have app installed.
When I try this code:
Take a QR code 2
It open play store app with squareup pos app information, I need to directly open the app and not play store screen of the app, is there any way?
*UPDATE:
I got transactions to work after adding S.com.squareup.pos.LOCATION_ID={{ my_location_id }}. The location ID can be found in Square Developer Portal > Locations. Also if the POS app is passcode protected, you have to open and login with passcode before sending transaction.
*END UPDATE
I've been working through this same issue. I still haven't gotten a transaction to work, but have at least gotten the app to open.
Make sure the CLIENT ID is your production application ID. NOT sandbox.
The WEB_CALLBACK_URI needs to match the Web Callback URL defined in your Square Developer Portal > Point Of Sale API.
I hope this helps. If you do figure this out and get transactions to work, please post your solution for me and others who are sure to run into this issue since the documentation is lacking.
Unable to receive crash reports on my Test flight account even though application gets crashed.
I integrated the SDK in my application. I did following steps -
1. Integrated SDK in code
2. Used proper Application ID
3. Started session using TestFlight.startSession();
4. Called TestFlight.sendCrash(121213, "XXX", "YYY"); method
4. Ended session using TestFlight.endSession(); in one of my destroy() method.
Let me know if I am doing anything wrong or missing anything.
Thanks in advance, your answers will be much appropriated.
Crash sessions should be sent back to TestFlight automatically. There is no need to specify startSession, sendCrash, and endSession. Please contact TestFlight support here (http://help.testflightapp.com/customer/portal/emails/new) so we can further investigate. Please include the URL to the build's permissions page in the email.
Thanks,
Justin (TestFlight Support)
I've been setting up Android in app billing v3, using the IABHelper class, and following the example code provided by Google. I have it mostly working all the way through purchase (with signed apk and real credit card charge).
However, in the course of testing today I started to get a new error in my QueryInventoryFinishedListener from the queryInventoryAsync() method:
IABResult message: "Error refreshing inventory (querying prices of items)"
IABResult response: 5:Developer Error
Weird thing #1 is that this occurs after the onIabSetupFinished() callback returns (with the customary "Hooray" message). Weird thing #2 is that I can subsequently & successfully process an in app purchase (using the launchPurchaseFlow() method).
I found a patch here that addresses the same symptoms I'm experiencing, but it didn't work for me.
I've tried using different devices, using different gmail accounts, and building a new product from scratch. I even getting the error on earlier versions of my app that ran correctly (what?!).
My question is: Why can't I query the product inventory, even after IABHelper has confirmed the set up was successful? What could be causing this error, and how can I fix it?
Thank you for any insight.
UPDATE
I was able to get the inventory query transactions to work again by ditching the account I was testing with, and switching to a new account. No code change.
My tentative conclusion is that something got corrupted in the user account I was using (?). During testing, I had hit it pretty hard with a lot of purchases of different in-app products -- but I still need to find out what happened, and make sure this doesn't happen to any of my users.
Please let me know if you have any experience with this. Thanks!
We had the same problem in one of our apps under test mode. Later, we figured out that, we had to clear the Cache of the Google Play Store app.
So you can try this -
Go your device's Settings menu.
Go to Applications (may also be labeled Application Manager).
Tab over to All Applications.
Search for and open the Google Play Store app. Tap on it, application settings will show
Tap on Clear Data and Clear Cache.
Now go back to your app and try to load inventory. It solved our problem.
I found by trial and error that if you query more than 20 items at once, it will fail with this error.
I submitted a patch for IabHelper.java that splits the list of SKUs into packets of 20 items each and does the query.
You can grab it there: https://code.google.com/p/marketbilling/issues/detail?id=123
I have the same issue with this log :
"InAppBillingManager.getSkuDetails: Input Error: skusBundle array associated with key ITEM_ID_LIST cannot contain more than 20 items."
this note had mentioned in IInAppBillingService.aidl file, see the documentation of the method getSkuDetails(..) .
So you should make the same process for each 20 items every time
I face same error but my issue is Date Time change
Go to setting and check your date time is accurate
Hi all i have integrated GA into my phonegap 1.9 project. I got it working about 3 days ago when i saw sessions in my GA account. However, it does not seem to show any more sessions or active users. Can someone tell me what is the repairing timeframe to show stats 48hrs? also how do i get it working to show realtime usage. thanks.
ps. in my LogCat i see its being started successfully and appears to be tracking...
window.plugins.analytics.start("UA-XXXXXXXX-1", function(){console.log("Analytics: start success");}, function(){console.log("Analytics: start failure");})
window.plugins.analytics.trackPageView("index.html", function(){console.log("Track: start success");}, function(){console.log("Track: failed");});
Thanks in advance!!!!
If you see the logs you have in your code, you should see the statistics right away. Go to your analeptics home page, Click on Home next to the "Standard Reporting", then click on Real-Time, the click on Overview. If you wrote the UA-ID and everything properly, you should see the usages right away ...
In iOS and Titanium, there is 20 seconds delay because of API implementation, but I am not sure about PhoneGap.
I try since a few days to connect one of my android app to an oauth service. I have found a few really good articles like http://blog.doityourselfandroid.com/2011/04/12/oauth-android-google-apis-client-library-java/ or marakana.com/forums/android/examples/312.html but even with those papers I can't manage to make It work.
Well, here is my current code packaged in a tar archive : http://braindead.fr/oauth-warrior.tar.gz
So the problem is that each time I attempt to retrieve an access token I got an OAuthCommunicationException (respectively line 26 and 39 of OAUthTokenValidator.java) after user validation on oauth server and url callback.
I anybody know why signopost/oauth does not accept to make this last call I'll be really grateful :)
Sincerely, Daroth
this might be a bit late to answer, but still.. for folks still searching:
check your menu->settings->date/time, sometimes an emulator's timezone won't match the real timezone. thus, the server denies it. they usually have a 3-10 minute variance.
check your manifest for INTERNET permission ;)
another tip: not many elder wizards would unpack a tar from an unknown source.. you should use a pastebin service, or an open git/svn/hg repo.