Search code examples
iosdonations

How can I handle donations through iOS?


My team and I are going to write an app for an organisation where the user can donate to this organisation. The app itself is not the problem, but we don't really know how we can handle this.

Our first thought was that we could make the donations like if you purchase an item in a game for real money. But there are 2 problems:

  1. There are only fixed amounts like 99c and so on
  2. Apple gets 30%, and we want the user to know who gets how much. The developers: 10%, The Organisation 90%. But if Apple gets 30% of ALL the money, and people see that, they may not donate for that reason. I wouldn't either.

Our second thought was that we implement a webthingy (don't know how the element is called atm) in our app, which simply works like Safari and we direct them to the donation page or something, but how does the organisation know that the donations are from our app then?

Is there any other way we can handle this? I think people will be able to donate via credit cards and PayPal.

Edit, I found this:

21.1 Apps that include the ability to make donations to recognized charitable organizations must be free

21.2 The collection of donations must be done via a web site in Safari or an SMS

The app will be free, and it is fine if it has to be via SMS or Safari, but HOW does the organisation know the donations coming in, are from the app?


Solution

  • But HOW does the organisation know the donations coming in, are from the app?

    1. Make a new page on the organization's site that has a URL that isn't linked to anywhere and non-indexable by search engines (robots.txt).
    2. In your app, make a UIWebView set to a URL on your own servers that redirects to the page you make in step 1. You should also make this URL non-indexable.

    In that page

    1. Check that the referrer is your page
    2. Check that the user agent is whatever UIWebView sends
    3. Have the page log whatever happens somewhere (date/time, donation amount, etc) -- to reconcile with their data
    4. When a successful donation is made, it should record that it came from this page (and therefore, your app)

    Someone could fake that they used your app by making the appropriate request, but why would they. Even if they did, you should probably get credit for that donation anyway.