Compare Revisions

subpage C

Change Revisions

Revision 457905:

Revision 457905 by markg on

Revision 457919:

Revision 457919 by markg on

Title:
subpage C
subpage C
Slug:
User:Mark_Giffin/subpage_C
User:Mark_Giffin/subpage_C
Content:

Revision 457905
Revision 457919
t7    <h2 id=".5BApp_payments_guide.5D">t
8      [App payments guide]
9    </h2>
10    <p>
11      There are two kinds of payments made by app end users in th
>e Firefox Marketplace: a payment made to purchase an app (a paid  
>app), and a payment made to buy something after the app is instal 
>led (an in-app payment). This page covers the flow for building a 
>nd submitting apps that use both kinds of payments. 
12    </p>
13    <p>
14      This page gives very simple ways to do these things. Keep i
>n mind that there are many other ways to do them. 
15    </p>
16    <h2 id="Building_a_paid_app">
17      Building a paid app
18    </h2>
19    <div>
20      <p>
21        Any app can be a paid app. It can be a hosted app or a pa
>ckaged app, and it does not require special permissions. You can  
>create a paid app simply by choosing to make it a paid app when y 
>ou submit it to the Firefox Marketplace. However, we recommend th 
>at you make the paid app validate its sales receipt. <span style= 
>"line-height: 1.572;">See the sections below.</span> 
22      </p>
23      <h3 id="Add_installs_allowed_from">
24        Add <code>installs_allowed_from</code>
25      </h3>
26      <p>
27        You should add the <code>installs_allowed_from</code> fie
>ld to the app's manifest. Give it the URL of the Firefox Marketpl 
>ace like this: 
28      </p>
29      <pre>
30<span class="brush: js" style="line-height: 1.572;">"installs_all
>owed_from": [ "https://marketplace.firefox.com" ]</span> 
31</pre>
32    </div>
33    <p>
34      This is needed as part of receipt validation so it can be d
>etermined if your app came from a store where it was paid for.&nb 
>sp;<span style="line-height: 1.572;">You can add the URLs of othe 
>r stores but this is all you need for now.</span> 
35    </p>
36    <h3 id="Verify_the_receipt">
37      Verify the receipt
38    </h3>
39    <p>
40      When an app is sold on the Marketplace, a digital receipt f
>or the sale is created. You should code your app so it verifies t 
>his sales receipt when it runs. This verification is not required 
> but it is recommended. It will help avoid having people install  
>your app without paying for it. 
41    </p>
42    <p>
43      There is a Mozilla-maintained JavaScript helper library cal
>led&nbsp;<a href="https://github.com/mozilla/receiptverifier" sty 
>le="line-height: 1.572;" title="https://github.com/mozilla/receip 
>tverifier">receiptverifier</a>&nbsp;that enables you to verify th 
>e receipt with a small amount of code.&nbsp;Include the following 
> receiptverifier libraries in your app: 
44    </p>
45    <ul>
46      <li>
47        <a href="https://github.com/mozilla/receiptverifier/blob/
>master/receiptverifier.js" style="line-height: 1.572;">receiptver 
>ifier.js</a> 
48      </li>
49      <li>
50        <a href="https://github.com/mozilla/receiptverifier/blob/
>master/receiptverifier-ui.js">receiptverifier-ui.js</a> 
51      </li>
52    </ul>
53    <p>
54      Then you can add the following code to your app (with text 
>changes to match your app) to verify the receipt: 
55    </p>
56    <pre class="brush: js">
57mozmarket.receipts.Prompter({
58  storeURL: "https://marketplace.firefox.com/app/your-app",
59  supportHTML: '&lt;a href="mailto:you@yourapp.com"&gt;email you@
>yourapp.com&lt;/a&gt;', 
60  verify: true
61});
62</pre>
63    <p>
64      The usual time for receipt validation is when the app is st
>arted. If the receipt is valid, you release the app's resources t 
>o the user. If it is not valid, you can prevent the app from runn 
>ing. 
65    </p>
66    <h3 id="Paid_app_references">
67      Paid app references
68    </h3>
69    <p>
70      If you want to know more, here are some references on verif
>ying receipts. 
71    </p>
72    <ul>
73      <li>
74        <a href="https://hacks.mozilla.org/2013/02/building-a-pai
>d-app-for-firefox-os" title="https://hacks.mozilla.org/2013/02/bu 
>ilding-a-paid-app-for-firefox-os">Building a Paid App for Firefox 
> OS</a> - High-level overview of paid apps and has useful links f 
>or more information. 
75      </li>
76      <li>
77        <p>
78          <a href="/en-US/docs/Web/Apps/Publishing/Marketplace_Pa
>yments" title="/en-US/docs/Web/Apps/Publishing/Marketplace_Paymen 
>ts">Marketplace Payments</a> -&nbsp;Some information about paid a 
>pps. Also has in-app payment information. 
79        </p>
80      </li>
81      <li>
82        <p>
83          <a href="/en-US/docs/Web/Apps/Publishing/Validating_a_r
>eceipt" title="/en-US/docs/Web/Apps/Publishing/Validating_a_recei 
>pt">Validating a Receipt</a>&nbsp;-&nbsp;Implementation details a 
>bout verifying receipts. 
84        </p>
85      </li>
86      <li>
87        <p>
88          <a href="https://github.com/mozilla/receiptverifier" ti
>tle="https://github.com/mozilla/receiptverifier">receiptverifier< 
>/a> Library&nbsp;- The library used above.&nbsp;Has documentation 
> on using it and includes an example of using it server side. 
89        </p>
90      </li>
91      <li>
92        <p>
93          <a href="https://wiki.mozilla.org/Apps/WebApplicationRe
>ceipt" title="https://wiki.mozilla.org/Apps/WebApplicationReceipt 
>">Web Application Receipt</a>&nbsp;-&nbsp;Detailed information on 
> what a receipt is. 
94        </p>
95      </li>
96    </ul>

Back to History