Saltar al contenido principal
@capgo/native-purchases Comercio Fuente abierta

Compras nativas plugin de Capacitor

Implementa compras in-app nativas, suscripciones y planes de facturación de StoreKit de iOS con un API

Instalar

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

Guía

Cómo usar Compras Nativas en Capacitor

Probar en dispositivo

Descargue la aplicación Capgo, luego escane el código QR code.

Vista previa del plugin de compras nativas code

Usando @capgo/native-purchases

Subscripciones en la aplicación hechas fáciles.

Instalar

bun add @capgo/native-purchases
bunx cap sync

¿Qué expone este complemento?

  • restorePurchases - Restaura la compra anterior de un usuario y vincula su appUserIDs con cualquier usuario que también utilice esos .
  • getAppTransaction - Obtiene la información de transacción de la aplicación, que proporciona detalles sobre cuando el usuario descargó o compró la aplicación originalmente.
  • isEntitledToOldBusinessModel - Compara la versión de la aplicación original de la transacción de la aplicación con una versión objetivo para determinar si el usuario tiene derecho a características de un modelo de negocio anterior.
  • getProducts Carga los metadatos de productos de la tienda, incluyendo los términos de precios de suscripción iOS admitidos.
  • purchaseProduct - Inicia el proceso de compra para el producto seleccionado y el plan de facturación.

Uso de Ejemplo

restorePurchases

Restaura el historial de un usuario y vincula sus appUserIDs con cualquier usuario que también esté utilizando esos .

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

await NativePurchases.restorePurchases();

getAppTransaction

Obtiene la información de transacción de la aplicación, que proporciona detalles sobre cuando el usuario descargó o compró la aplicación originalmente.

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

Compara la versión original de la aplicación desde la transacción de la aplicación con una versión objetivo para determinar si el usuario tiene derecho a características de un modelo de negocio anterior.

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

Inicia el proceso de compra para el producto dado. Para suscripciones de Android, pase el ID de plan base de Google Play como planIdentifierPara suscripciones de iOS admitidas que ofrecen facturación mensual con un compromiso de 12 meses, pase 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,
});

Suscripciones mensuales de compromiso de iOS

En versiones de iOS compatibles, StoreKit puede exponer un plan de facturación mensual con un compromiso de 12 meses pricingTermsMuestre estos términos en su pantalla de pago antes de la compra:

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);
}

Referencia Completa

Sigue adelante desde @capgo/compras nativas

Si estás utilizando Usando @capgo/compras nativas para planificar pagos y compras, conecta con [@capgo/compras-nativas](https://capacitor.com/docs/plugins/compras-nativas/) para el detalle de implementación en @capgo/compras nativas, Getting Started para obtener detalles de implementación en Inicio, Precios de Capgo Para el flujo de trabajo del producto en Capgo Precios, Sistema de pago para el detalle de implementación en Sistema de pago, y Libro de estrategia de ingresos Para la implementación en el Libro de Playa de Ingresos.

FAQ

FAQ del plugin de compras nativas

¿Cómo instalo el plugin de compras nativas en una aplicación Capacitor?

Ejecuta &quot;bun add @capgo/compras nativas&quot; (o &quot;npm install @capgo/compras nativas&quot;), luego ejecuta &quot;bunx cap sync&quot; para que los proyectos iOS y Android capturen la code nativa. Importa desde &quot;@capgo/compras nativas&quot; en tu aplicación code.

¿Funciona @capgo/compras nativas con React, Vue y Angular?

Sí. Las compras nativas son un paquete Capacitor, por lo que funcionan con cualquier framework web que se ejecute dentro de Capacitor, incluyendo Ionic, React, Vue, Angular, Svelte y JavaScript puro.

¿Qué versión de Capacitor soporta @capgo/compras nativas?

Los plugins Capgo siguen la versión mayor de Capacitor: utiliza la versión mayor del plugin que coincida con la versión mayor de Capacitor (por ejemplo, plugin v8 con Capacitor 8). La tabla de compatibilidad en el README de GitHub lista las versiones mantenidas.

¿Son gratuitas y de código abierto las compras nativas @capgo?

Sí. El código fuente code está disponible en GitHub en https://github.com/Cap-go/capacitor-compras nativas/ y el paquete es gratuito para instalar desde npm. Se aceptan informes de errores y solicitudes de cambios.

Puedo actualizar code que utiliza compras nativas sin una revisión de la Tienda?

La instalación o actualización del complemento cambia el code nativo, por lo que necesita una nueva compilación de la tienda. Después de eso, los cambios de JavaScript, HTML y CSS que llaman al complemento pueden enviar instantáneamente con Capgo actualizaciones en vivo.

Envíe cambios de compras nativas sin esperar la revisión de la aplicación

Una vez que el plugin esté en su tienda de construcción, Capgo actualizaciones en vivo empujan sus cambios de JavaScript, HTML y CSS a los usuarios en minutos

Comience con Capgo