Guía
Tutoriales sobre compras nativas
Usando @capgo/native-purchases
Suscripciones en la aplicación hechas fáciles.
Instalar
bun add @capgo/native-purchases
bunx cap sync
Qué expone este plugin
restorePurchases- Restaura el historial de compras 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 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.getProducts- Carga los metadatos de producto de la tienda, incluidos los términos de precios de suscripción de 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 IDs de usuario de la aplicación a cualquier usuario que también utilice esos IDs.
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 las suscripciones de Android, pase el ID de plan base de Google Play como planIdentifierPara las suscripciones de iOS compatibles 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 iOS con compromiso de 12 meses
En versiones de iOS compatibles, StoreKit puede exponer un plan de facturación mensual con un compromiso de 12 meses a través de 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 de compromiso mensual de iOS: /docs/plugins/native-purchases/ios-monthly-commitment/
Sigue adelante desde [Usando @capgo/native-purchases]
Si estás utilizando [Usando @capgo/native-purchases] para planificar pagos y compras, conecta con @capgo/native-purchases para los detalles de implementación en @capgo/native-purchases, Inicio para los detalles de implementación en Inicio, Capgo Precios para el flujo de trabajo del producto en Capgo Precios, Sistema de pago para los detalles de implementación en el sistema de pago, y Libro de estrategia de ingresos para los detalles de implementación en el Libro de estrategia de ingresos.