Guía
Cómo usar Compras Nativas en Capacitor
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.getProductsCarga 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
- GitHub: https://github.com/Cap-go/capacitor-compras-nativas/
- Documentación: /docs/plugins/compras-nativas/
- Guía mensual de compromiso de iOS: /docs/plugins/compras-nativas/ios-mensual- compromiso/
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.