Saltare al contenuto principale
@capgo/native-purchases Commercio Sorgente aperta

Acquisto nativo Plugin Capacitor

Implement pagamenti nativi in-app, abbonamenti e piani di fatturazione di StoreKit iOS con un semplice API

Installa

bun add @capgo/native-purchases bunx cap sync
npm, pnpm o yarn
  • npm install @capgo/native-purchases
  • pnpm add @capgo/native-purchases
  • yarn add @capgo/native-purchases

Guida

Come utilizzare le Comprre native in Capacitor

Testa sul dispositivo

Scarica l'app Capgo, poi scansione il codice QR code.

Link QR di anteprima del plugin Native Purchases code

Utilizza @capgo/native-purchases

Abbonamenti in-app fatti in modo facile.

Installa

bun add @capgo/native-purchases
bunx cap sync

Cos'è che questo plugin esporre

  • restorePurchases - Ripristina l'ultima versione di un utente e collega le loro appUserIDs a qualsiasi utente anche utilizzando quelle .
  • getAppTransaction - Ottiene le informazioni sulle transazioni dell'app, che fornisce dettagli su quando l'utente ha originariamente scaricato o acquistato l'app.
  • isEntitledToOldBusinessModel - Confronta la versione originale dell'app dalla transazione dell'app contro una versione di destinazione per determinare se l'utente ha diritto a funzionalità da un modello di business precedente.
  • getProducts Carica i metadati dei prodotti della store, inclusi i termini di prezzo delle sottoscrizioni iOS supportate.
  • purchaseProduct - Avvia il processo di acquisto per il prodotto selezionato e il piano di fatturazione.

Esempio di utilizzo

restorePurchases

- Ripristina i dati precedenti di un utente e collega le loro appUserIDs a qualsiasi utente che utilizza anche quelle.

import { NativePurchases } from '@capgo/native-purchases';

await NativePurchases.restorePurchases();

getAppTransaction

Ottiene le informazioni sulla transazione dell'app, che fornisce dettagli su quando l'utente ha scaricato o acquistato l'app per la prima volta.

import { NativePurchases } from '@capgo/native-purchases';

const { appTransaction } = await NativePurchases.getAppTransaction();

// Check if user downloaded before version 2.0.0 (when subscription was added)
if (compareVersions(appTransaction.originalAppVersion, '2.0.0') < 0) {
  // User gets free access - they downloaded before subscriptions
  grantFreeAccess();
}

isEntitledToOldBusinessModel

- Confronta la versione dell'app originale dalle transazioni dell'app con una versione di destinazione per determinare se l'utente ha diritto a funzionalità da un modello di business precedente.

import { NativePurchases } from '@capgo/native-purchases';

// Check if user downloaded before version 2.0.0/build 42 (when subscription was added)
const result = await NativePurchases.isEntitledToOldBusinessModel({
  targetVersion: '2.0.0',
  targetBuildNumber: '42'
});

if (result.isOlderVersion) {
  console.log(`User downloaded v${result.originalAppVersion}, granting free access`);
  grantFreeAccess();
}

purchaseProduct

- Avvia il processo di acquisto per il prodotto specificato. Per le sottoscrizioni Android, passa l'ID del piano base di Google Play come planIdentifierPer sottoscrizioni iOS supportate che offrono una fatturazione mensile con un impegno di 12 mesi, passa billingPlanType: 'monthly'.

import { NativePurchases, PURCHASE_TYPE } from '@capgo/native-purchases';

await NativePurchases.purchaseProduct({
  productIdentifier: 'com.example.premium.monthly',
  planIdentifier: 'monthly-plan',
  productType: PURCHASE_TYPE.SUBS,
});

Abbonamenti mensili di impegno per iOS

- Su versioni iOS supportate, StoreKit può esporre un piano di fatturazione mensile con un impegno di 12 mesi attraverso pricingTerms- Mostra questi termini sul tuo paywall prima dell'acquisto:

import { NativePurchases, PURCHASE_TYPE } from '@capgo/native-purchases';

const { products } = await NativePurchases.getProducts({
  productIdentifiers: ['com.example.premium.yearly'],
  productType: PURCHASE_TYPE.SUBS,
});

const yearlyProduct = products.find(
  (product) => product.identifier === 'com.example.premium.yearly',
);
const monthlyCommitment = yearlyProduct?.pricingTerms?.find(
  (term) => term.billingPlanType === 'monthly',
);

if (yearlyProduct && monthlyCommitment) {
  console.log('Monthly price:', monthlyCommitment.billingDisplayPrice);
  console.log('Total commitment:', monthlyCommitment.commitmentInfo?.priceString);

  const transaction = await NativePurchases.purchaseProduct({
    productIdentifier: yearlyProduct.identifier,
    productType: PURCHASE_TYPE.SUBS,
    billingPlanType: 'monthly',
  });

  console.log('Billing plan:', transaction.billingPlanType);
  console.log('Commitment ends:', transaction.commitmentInfo?.expirationDate);
}

- Riferimento completo

Continua da Utilizza @capgo/acquisti-nativi

Se stai utilizzando Utilizza @capgo/acquisti-nativi per pianificare pagamenti e acquisti, collega con @capgo/acquisti-nativi per i dettagli di implementazione in @capgo/acquisti-nativi Getting Started per i dettagli di implementazione in Iniziare Capgo Prezzi per il workflow del prodotto in Capgo Prezzi, Sistema di pagamento per il dettaglio di implementazione in Sistema di pagamento, e Libro del gioco dei ricavi per i dettagli di implementazione nel Revenue Playbook.

FAQ

Domande frequenti sul plugin di acquisti nativi

Come posso installare il plugin di acquisti nativi in un'app Capacitor?

Esegui &quot;bun add @capgo/acquisti nativi&quot; (o &quot;npm install @capgo/acquisti nativi&quot;), quindi esegui &quot;bunx cap sync&quot; affinché i progetti iOS e Android recuperino le code native. Importalo da &quot;@capgo/acquisti nativi&quot; nella tua app code.

Funziona @capgo/acquisti nativi con React, Vue e Angular?

Sì. Gli acquisti nativi sono un pacchetto Capacitor, quindi funzionano con qualsiasi framework web che esegue all'interno di Capacitor, compresi Ionic, React, Vue, Angular, Svelte e JavaScript puro.

Qual è la versione Capacitor di @capgo/acquisti nativi?

I plugin Capgo seguono la versione maggiore di Capacitor: utilizza la versione del plugin maggiore che corrisponde alla tua versione maggiore di Capacitor (ad esempio plugin v8 con Capacitor 8). La tabella di compatibilità nel README di GitHub elenca le versioni mantenute.

Sono gratuiti e open source gli acquisti nativi @capgo?

Sì. Il codice sorgente code è pubblico su GitHub all'indirizzo https://github.com/Cap-go/capacitor-acquisti-nativi/ e il pacchetto è gratuito per l'installazione da npm. I rapporti di bug e le richieste di pull sono accetti.

Posso aggiornare code che utilizza le Compravendite native senza una revisione dell'App Store?

Instalando o aggiornando il plugin cambia la code nativa, quindi è necessario un nuovo build del negozio. Dopo di che, le modifiche JavaScript, HTML e CSS che chiamano il plugin possono essere distribuite immediatamente con gli aggiornamenti Capgo in tempo reale.

Invia gli aggiornamenti dei pagamenti nativi senza attendere la revisione dell'app

Una volta che il plugin è presente nella tua store build, Capgo le aggiornamenti live inviano i tuoi cambiamenti JavaScript, HTML e CSS agli utenti in pochi minuti

Inizia con Capgo