iTunes connect: Set Extra price for update for existing user of application - app-store-connect

I already submit a application on app store which have price $6.99. Now I am submitting new version of this app. Here I want that iPhone user, which already installed this application, should pay $.99 for this update and new user should pay $6.99
Is it possible to charge extra amount for existing user for update ? Please suggest

No. Updates from the App Store are always free. If you wish to charge for additional content, you can use the In-App purchasing system.
Otherwise, your only option is to create an entirely new App for major updates if you wish to get more money from your users.

Related

In-App Payment, is it possible to save a list of user's credit card in Android App

I'm trying to build up an android platform that takes in user credit card info and charge it on use without inserting the credit card details after saving one. But I don't seem to actually see any possible work ways in the "In-App Payment" SDK and I think I see it under Square's java SDK. But as researched in github, their official reply is that I'm unable to use java SDK in android app.
So I'm trying to figure out has anyone done this before or face the same issue?
In-App Payments SDK is solely meant for generating a card nonce on your mobile application. All other API endpoints must be done on a server or service due to security reasons (you don't want to store your personal access token within your application). Once you have that nonce, you need a server or service running that your mobile application will talk to. Ie the most basic is passing the nonce to the Charge endpoint to charge a customer.
On that same note, we have another endpoint called CreateCustomerCard, which you can pass the nonce as well as customer_id to in order to save the card to this particular customer's profile. So, at the very least you'll need to create a customer in order to have their id.
For info around saving cards on file, see this post: Hot to generate card nonce for repeated transactions without making users to enter card details?

Whats next after adding stripe ? I want to charge for a pro version, and give paid users extra features

I am using express and mongodb.
I have succesfully added stripe, and i can make a test payment succesfully, i followed this tutorial: https://stripe.com/docs/checkout/express
So, my question is, what would be the steps to take, so that when a user pays, he gets a flag of "pro user" and then he can accces certain features.
what is normally the process here? are there any tuts or guidelines i can check ? thx!
Its not about stripe, you need to add the features for the paid users. Consider i have an option to show feature listing in my application which can be accessed only by paid users. If this case, you can make a flag in db for paid users when they completed there payment. Only those users can access the page others will shown a message like "Subscribe to access the page". This is the simple example to different paid and normal user functionality

Changing the scopes on an existing live Bigcommerce app

We're working on updating a Bigcommerce app (Previously submitted and currently live). It just so happens that we need to modify the scopes needed (we need access to products now).
Once changed, will our app go into pending mode and require resubmit? Will there be down time? if so, what will happen to current users that have the apps installed will they be able to use the parts of the app that use the scopes we already have permissions for?
Also, Will the current customers be prompted to approve of the new scopes the next time they try to start our application? how is this done?
After a change on the BigCommerce end, this is something you are able to do within the Developer Portal There's more info available about the scope update flow here.

How do I test a new app that has not been published against the shipping api?

I have been given access to the new shipping api, when creating an app in partner section and subsequent editing of it details I can set it as a shipping app.
I can then add a shipping rate provider in the test shop (same partner account) but can only see USPS, Canada post, Fedex etc..and can not see the app. I imagine this is because the test app has not been published. But I do not want to publish the test app, and a requirement to publish an app before it can be added as a shipping provider would sort of hinder developement and testing ;-)
I have tried visiting http://your-store.myshopify.com/admin/api/auth?api_key=YOUR_API_KEY
but I can't see how that will add my test app as a shipping rate provider in the shipping preferences of the test app.
In fact I gave up on using http://your-store.myshopify.com/admin/api/auth?api_key=YOUR_API_KEY and moved over to user Oauth2 (I couldn't seem to get legacy auth examples working.)
I can register the app via OAuth2 however the option for this shipping app does not appear in the "Carrier calculated shipping rates"
Now I am really stumped.
Make sure that the app you created has checked the “this is a shipping app” box.
Visit http://YOUR-STORE.myshopify.com/admin/api/auth?api_key=YOUR_API_KEY
Visit https://YOUR-STORE.myshopify.com/admin/shipping and the shipping service your app exposes should be available as a carrier-calculated shipping rate. (Hit that button at the top of the page if you haven’t added any yet.)
Ok Edwards answer is correct as far as registering an app is concerned.
However if the app provides the shipping api it will "NOT" appear in carrier-calculated shipping rates config for shipping.
After you succesfully register the app you then have to make a POST call to carrier_services.json. e.g. in python
response = connection.post("%s/carrier_services.json" % shopify_session.site,headers)
Once you do this the new shipping api will be called during the checkout process.
Also note at the moment if you make any changes to the shipping configuration in preferences you will need make another POST to carrier_services.json to re-enable the shipping api. It seems any changes to the shipping details currently unhooks the app from being called.
This is early days and no doubt things will change.

How to let only paid members into my iOS app's some sections with in-app purchase?

I am developing an application where I have a section only for paid users where they purchase for the section using the in-app purhcase system in iOS. I know that I need to keep track of the purchase history myself, and this is where the problem begins. I have a database and I am capable of storing users in my database, with a web service interface. How can I create a system where a URL is pinged only when a user has made the purchase.
As an example, I have the URL:
http://example.com/registerUserPremium/userid=123456
How can I get this to be called only when a purchase is made? The most elegant way seems like Apple pinging the URL with a special user ID upon purchase, but I can't find a way of doing it. It is obviously not a solution to make the user call that URL within the app, as it can be cracked/pirated. What is a good way of providing such a mechanism that is piracy-proof. My service is web-based, so if I can get this part done, the rest relies on my server-side mechanism (the user will just send a special key that is stored in its keychain, to the server) so I'll be able to finish the project. In short, I need a way to call a URL only when a purchase is made. What are some possible solutions?
Thanks,
Can.
I see two solutions:
"Server product model" (doc): the appstore contact your servers every time a user makes a purchase. In this case you have all of the information right away.
"Builtin product model" (same doc) in which the application gets the receipt from the appstore. In this latter case you can contact your server special URL, providing the receipt information, and the server can verify that the receipt has not been tampered with asking the app store to verify (it's a simple post, see here).