Change the Message when you try to purchase an ENTITLEMENT - amazon

I am using Amazon in-app Purchase API. I have this item that is Entitlement type, but the user has to buy it more than once and it cannot be Consumable type because it has to be available on all the devices.
How can I change the message "You already own the item..."?

The "You already own the item..." message is expected when you try to purchase an entitlement which you already own. It is by design and you cannot change it.
According to Amazon IAP API:
Consumables - content that does not require an entitlement or access rights to use, can be purchased multiple times by a customer, is available only on the device it is purchased from, and does not require any type of entitlement check to use
Entitlements - content that requires an entitlement or access rights to use, can be purchased only once by a customer, and is available on all compatible devices registered to the customer's account
So neither consumable nor entitlement matches your use case directly.
If your item is used like a power-up, then you should make it a consumable, and implement your own mechanism to sync the available item count across devices. If you are developing a game, you could use Amazon Whispersync for Games API to sync those data.
If your item is used to unlock certain features for a limited time, then you should make it a subscription.
Subscriptions - content that requires an entitlement or access rights to use, is bound by a period of time, that auto-renews, and is available on all eligible devices registered to the customer's Amazon account

Related

Stripe Connect - Multiple accounts

I am collecting a payment using Stripe, and want to keep a portion, and send the rest onto another account from another organisation.
Stripe have told me that I have to connect an account. I have done this, Stripe gives me a link which the other organisation pastes into their browser, and all works. I can create a transfer linked to a payment intent.
But, when the link is pasted into the other organistions browser, this message is shown.
______ will be able to see your account data (such as all payment and payout history), including any data created by other business you've connected. They'll also be able to create new payments and take other actions for you.
This seems crazy - I just want to pay them some money, not ask them for full access.
Am I missing a trick?
Stripe Connect is a product/tool that allows accounts to work together to provide goods and services to end customers. There are a few different approaches to how this is configured based on your use case as well as whether you would be acting as the Platform (the one in control) or the Connect Account.
You should review the different Connect Account Types and determine what best matches your use case. Some questions to consider are as follows:
Who is interfacing with the end-customer (you or the other account)?
Who is providing the product/service?
Is this other account providing a service to you in exchange for a cut of the revenue?
On what account should the transactions and customers be stored?
It sounds like, based on the warning message, you were creating the other account to be the Platform and you would be Connect Account. In that cases the other account could make API calls on your behalf using your account token. This would be normal if the other account is providing a service to you like funneling customers to you in some way. A good way to quickly review what approach makes the most sense for your use case is to review the Funds Flow diagrams for the different types of Charges
Direct Charges
Destination Charges
Separate Charges and Transfers

The one where we hit the error of "The specified User is not a member of the specified Account."

When using ‘https://account-d.docusign.com/oauth/auth?response_type=code&scope=signature&client_id=92e53xxx9-4xxxxxxxxxxxxxxxx2f893&redirect_uri=xxxxx’, after logging in to Docusign Account and obtaining AccessToken, calling CreateEnvelopes API returns the error'The specified User is not a member of the specified Account.'
[add User][1]
[1]: https://i.stack.imgur.com/jEWFv.png
I found that this User must be added in the User module before it can be used. For users who already have a Docusign account and they have paid for it, do they have to invite it? If an invitation is also required, how is the fee calculated?
What we need now is that users already have their own Docusign accounts and have paid for them. We help with the integration. The expenses are also directly deducted from their own Docusign accounts.
Many potential issues here.
First, When you call CreateEnvelopes API you need to provide an accountId (GUID) in the URL. That has to match the right account that you plan to use.
Second, you have account-d.docusign.com which is the developer env, but you are talking about
users who already have a Docusign account and they have paid for it
That suggests a production account, which is account.docusign.com
You should also check the baseURI that you make API calls to, is that demo.docusign.net or something in production?
Generally speaking, a user must be a member of the account where you make API calls and the user is determined based on the authentication. However, users can be members of more than one account, so that's another potential wrinkle here.
If an invitation is also required, how is the fee calculated?
Odd question for a developer forum, but yes, some accounts in production charge by seats, which means that if you have more users - you may get charged more, you will have to contact DocuSign Sales for details on your specific account plan and pricing.

Share Customer and its PaymentMethods with Connected Accounts

I'm building a platform where content creators can setup a subscription service of which I'll take a fee (think Twitch.tv, Substack, OnlyFans, etc.)
Content creators will setup a Stripe Connected Account on the platform. I'll operate the Platform Account.
Customers that subscribe to a content creator might want to subscribe to others so it makes sense to keep both Customers and their PaymentMethods on the Platform Account. Customers must be able to manage all their subscriptions and have their credit card details pre-filled, if already available.
I can't, for the life of me, understand how to share these Customers and their PaymentMethods with the content creator's Connected Accounts.
I followed the clone customers across accounts guide unsuccessfully. It errors out while creating the Token, saying that the Customer must have an active payment source. I read somewhere that this guide doesn't work with PaymentMethods but I don't really know if that's true.
Then I found this other guide. It seems, though, that I would have to create a Customer, per User, per Connected Account which will make me duplicate information and make subscription management harder.
Could anyone, who has experience building a similar service, give me some pointers?
Thanks
Instead of cloning PaymentMethods to your connected accounts (for which this guide is the correct one) you could create subscriptions using destination charges. The idea being that the customers and payment methods stay on your platform account. When an invoice is paid its funds (minus an application fee set by you) are automatically transferred to the connected account.

How to use the platform's details instead of the connected account for Stripe connect

I want to create a platform which will provide a digital service where the customers and connected accounts will be from around the world. Clearly Stripe Connect is the Stripe product to use.
Because many of the connected accounts will be overseas this straight away rules out the use of transfers - unless I explored setting up separate platform accounts in the different overseas countries. (https://stripe.com/docs/connect/capabilities-overview#cross-border-transfers)
So I am left with destination charges where I choose the connected account as the settlement merchant via the on_behalf_of parameter. This means the charge goes against the connected account but I can still make money by charging an application fee.
As the connected account will be invisible to the end customer on the platform it seems inappropriate for the connected account's details to show on the customer's bank / credit card statement. Instead I want the platform's details to show.
Stripe support have assured me it is possible to have only the platform's details. Indeed this part of the API suggests I can control the statement descriptor which shows - https://stripe.com/docs/api/checkout/sessions/create#create_checkout_session-payment_intent_data-statement_descriptor
But another article - https://stripe.com/docs/api/checkout/sessions/create#create_checkout_session-payment_intent_data-statement_descriptor - seems to almost contradict this. It explains
Any additional information that’s displayed on a customer’s statement
is also provided by the same account that provides the static
component (business address, phone number).
Can anybody clarify? Many thanks in advance.
Update
This article appears to settle the matter - https://stripe.com/docs/payments/connected-accounts
Guess I will just have to inform users on my website with a connected account that their details will show on the bank statement.

Spotify style account management with a subscription based website

We're planning a web service based on recurring monthly payments.
The site would have similar user accounts as Netflix or Spotify. The site would have an account section were the user can manage the billing and other details.
I've looked into different payment gateway provides, but I'm still wondering how to implement the user account as a part of the main site and how to combine that to the billing system.
First some information:
The site would first have just one monthly plan xx$/month
Credit cards need to be accepted
We're based in EU
We don't want to use PayPal
The user account section would contain:
User profile (name, email, etc.)
Website options (features on / off)
Subscription & billing management (edit credit card, current period, cancel, etc)
Questions:
How to combine the basic user accounts on my site with the billing system provider?
What information should I store in my own database?
Should I use a 3rd party user account management software on top of a payment gateway provider?
If so, which one would work similar to Spotify's account management?
How to setup the first sign up flow where user enters CC information?
Thank you for the ideas!
This is relatively easy to do using Laravel (a php framework) and a package called cashier. This package uses a payment service called Stripe which allows you to create recurring payments. There is even a tutorial on how to do it on Laracast.

Resources