[iOs] In-App Purchases: come far acquistare dalle nostre app

Volete inserire nelle apps per iOs la possibilità di far acquistare ai vostri utenti contenuti extra di qualsiasi genere (siano essi video, brani audio, ebook, …), ovviamente tutti non protetti da copyright o di cui voi siate proprietari?

Siete obbligatori a utilizzare e rispettare il programma In-App Purchase (IAP) della Apple, di cui vi linko la guida ufficiale: In-App Purchase Programming Guide.

Attenzione. Nelle guidelines di Apple, di cui ho scritto anche un post a questo link, si legge:

11.2 Le apps che utilizzano un sistema differente dalle In App Purchase API (IAP) per acquistare contenuti, funzionalità o servizi nell’app, non vengono accettate

Non potete, dunque, inserire altre modalità di pagamento per i contenuti delle vostre app, di nessun tipo (siano esse PayPal o sistemi esterni di pagamento), se questi contenuti vengono utilizzati direttamente nella vostra app (per esempio, brani audio scaricati, e-book da leggere attraverso l’app stessa, ecc.). Inoltre, questo stesso punto di applica a contenuti “virtuali”, come crediti, bonus, punti, ricariche, …

Quando si può acquistare tramite sistemi differenti per il pagamento (come PayPal) direttamente nelle nostre app ?

Ce lo dice il punto 11.3 delle linee guida:

11.3 Apps using IAP to purchase physical goods or goods and services used outside of the application will be rejected

Non possiamo usare In-App Purchases di Apple quando si tratta di far acquistare beni reali (physical goods) o beni e servizi che vengono usati esternamente all’app. Faccio un esempio: un catalogo di prodotti che vengono venduti da un negozio (sia esso fisico o online), oppure se volete far acquistare un servizio (spedizione di un prodotto comprato ad un cliente, …). Qui dovete utilizzare un sistema esterno per i pagamenti, come PayPal o bonifico.

 

Continuando, nelle linee guida sta anche scritto:

11.14 Le apps possono leggere o riprodurre contenuti (specificamente riviste, giornali, libri, audio, musica e video) ottenuti attraverso sottoscrizione o acquisto al di fuori dall’app, purché l’acquisto stesso non avvenga con un bottone o fornendo un link esterno nell’app per acquistare il contenuto approvato. Apple non chiede porzioni di “revenue“  (introiti) per gli acquisti approvati, acquistati o ottenuti con metodi esterni all’app

 

Apple obbliga gli sviluppatori ad iscriversi al programma IAP per ricavare il 30% degli introiti sulle vendite dei vostri contenuti fruibili attraverso l’app. La cosa assurda è che si vedono, comunque, apps sullo store che permettono anche altre modalità di pagamento (vedi Ebay e Amazon) per l’acquisto di prodotti di qualsiasi genere (siano essi reali o virtuali). Sarà che esistono degli accordi “sotto banco” tra Apple e queste grandi società? Oppure esistono degli “escamotage” per aggirare questo grosso vincolo di Apple? (sembrerebbe che Amazon abbia adottato un sistema di “workaround“, che onestamente non mi convince … Amazon ByPasses the iOs Commission Requirement).

Vi dirò che in un’app avevo inserito come modalità di pagamento PayPal, utilizzando le istruzioni presenti negli articoli scritti su questo blog su OsCommerce e PayPal Express. La Apple mi ha bocciato l’app per non aver rispettato il punto 11.2 suddetto, in quanto la mia app fa acquistare contenuti audio che poi vengono riprodotti nel player interno dell’app stessa.

A quel punto ho iniziato a studiare ed implementare il sistema di pagamento In-App Purchases di Apple, di cui vi allego un pò di articoli utili, alcuni dei quali mi sono serviti per risolvere non pochi problemi che mi hanno portato via un bel pò di settimane di lavoro.

RIFERIMENTI UTILI:

Di seguito vi riporto i passi da seguire per inserire gli In-App Purchases nelle vostre app.

Continua la lettura

PayPal Sandbox: guida all’utilizzo del servizio

Allego al presente articolo le guide (una in italiano, un pò vecchiotta del 2007, e una in inglese, di Aprile 2012) del servizio di SandBox di PayPal, che permette agli sviluppatori di fare i test sulle proprie applicazioni di eCommerce, che concludono le transazioni di acquisto usando le PayPal API o i vari servizi messi a disposizione dal colosso di business commerce.

Per intenderci, il servizio di Sandbox è un clone della piattaforma ufficiale di PayPal, che permette di sfruttare le stesse potenzialità e features, senza concludere realmente la transazione economica. Come si legge nella guida: “il servizio SandBox di PayPal è un ambiente autonomo che consente di sviluppare prototipi e collaudare le applicazioni di PayPal. Prima di spostare qualsiasi applicazione basata su PayPal in produzione, occorre collaudare l’applicazione nell’ambiente Sandbox per assicurarsi che funzioni come previsto e che sia conforme alle linee guida e agli standard di PayPal Developer Network (PDN)“.

Le funzionalità che è possibile imparare, sviluppare o collaudare in Sandbox sono riportate di seguito:

  • Pagamenti su sito web con pulsanti ‘Paga adesso’: utilizzare il servizio Sandbox per effettuare il test di accettazione di PayPal come metodo di pagamento su un sito web.
  • Notifica immediata del pagamento (IPN)
  • Acquisti effettuati tramite carrello PayPal: utilizzare il servizio Sandbox per effettuare il test dell’acquisto di più oggetti in un’unica transazione e per eseguire un unico pagamento. Per maggiori informazioni, consultare il sito all’indirizzo https://www.paypal.com/shoppingcart.
  • Iscrizioni: utilizzare il servizio Sandbox per effettuare il test dei pagamenti ricorrenti. Per maggiori informazioni, consultare il sito all’indirizzo https://www.paypal.com/pdn-recurring.
  • Rimborsi: utilizzare il servizio Sandbox per effettuare il test del rimborso dei pagamenti da un acquirente di prova.

Continua la lettura