{"id":137929,"date":"2021-08-30T00:00:00","date_gmt":"2021-08-30T00:00:00","guid":{"rendered":"https:\/\/adapty.io\/es-ios-in-app-purchases-part-5-list-of-skerror-codes-and-how-to-handle-them\/"},"modified":"2021-08-30T00:00:00","modified_gmt":"2021-08-30T00:00:00","slug":"ios-in-app-purchases-part-5-list-of-skerror-codes-and-how-to-handle-them","status":"publish","type":"post","link":"https:\/\/adapty.io\/es\/blog\/ios-in-app-purchases-part-5-list-of-skerror-codes-and-how-to-handle-them\/","title":{"rendered":"Las compras dentro de la aplicaci\u00f3n de iOS, parte 5: lista de c\u00f3digos SKError y c\u00f3mo manejarlos"},"content":{"rendered":"\n
En este post, abordar\u00e9 los SKErrors: qu\u00e9 problemas implican y qu\u00e9 hacer con ellos. Para cada error, trabajaremos tres aspectos: por qu\u00e9 se produce, c\u00f3mo manejarlo y qu\u00e9 mensaje mostrar en la notificaci\u00f3n de error.<\/p>\n\n\n\n\n\n
Qu\u00e9 significa.<\/strong> Se ha producido un error por un motivo desconocido.<\/p>\n\n\n\n C\u00f3mo solucionarlo.<\/strong> No es necesaria ninguna acci\u00f3n por parte de los desarrolladores. Este error tambi\u00e9n se produce en una solicitud al intentar obtener productos cuando se utiliza el simulador de iOS 14 y superior. En este caso, para obtener un producto, utiliza la prueba local StoreKit o un dispositivo\/emulador real con la versi\u00f3n de iOS inferior a iOS 14.<\/p>\n\n\n\n Qu\u00e9 mensaje mostrar.<\/strong> Lo sentimos, la compra no est\u00e1 disponible por una raz\u00f3n desconocida. Int\u00e9ntalo de nuevo m\u00e1s tarde<\/p>\n\n\n\n Qu\u00e9 significa.<\/strong> El usuario no puede realizar una compra. Por ejemplo, un ni\u00f1o intenta comprar algo cuando la funci\u00f3n de control parental del dispositivo est\u00e1 activada.<\/p>\n\n\n\n C\u00f3mo solucionarlo.<\/strong> No es necesaria ninguna acci\u00f3n por parte de los desarrolladores.<\/p>\n\n\n\n Qu\u00e9 mensaje mostrar.<\/strong> No se puede completar la compra. Por favor, cambia tu cuenta o dispositivo.<\/p>\n\n\n\n Qu\u00e9 significa. <\/strong>El usuario lleg\u00f3 a la pantalla de pago, pero cambi\u00f3 de opini\u00f3n sobre la compra y puls\u00f3 \u00abcancelar\u00bb.<\/p>\n\n\n\n C\u00f3mo solucionarlo.<\/strong> Desde un punto de vista t\u00e9cnico, no se ha producido ning\u00fan error y, en este caso, no hay que hacer nada. Desde el punto de vista del marketing, puedes seguir trabajando con ese usuario, por ejemplo, ofreci\u00e9ndole un descuento.<\/p>\n\n\n\n Qu\u00e9 mensaje mostrar.<\/strong> Aqu\u00ed tienes dos opciones. La m\u00e1s f\u00e1cil es no mostrar nada. Sin embargo, tambi\u00e9n puedes intentar recuperar al usuario con un mensaje como este \u00abHas cancelado tu compra. \u00bfEst\u00e1s interesado en probar una suscripci\u00f3n con descuento?\u00bb<\/p>\n\n\n\n Qu\u00e9 significa.<\/strong> Por alguna raz\u00f3n, el pago ha fallado: la tarjeta hab\u00eda caducado o no hab\u00eda fondos suficientes para esta compra.<\/p>\n\n\n\n C\u00f3mo solucionarlo.<\/strong> No es necesaria ninguna acci\u00f3n por parte de los desarrolladores.<\/p>\n\n\n\n Qu\u00e9 mensaje mostrar.<\/strong> Tu compra ha sido rechazada. Por favor, comprueba los detalles del pago y aseg\u00farate de que hay fondos suficientes en tu cuenta.<\/p>\n\n\n\n Qu\u00e9 significa.<\/strong> Probablemente, esta tarjeta tiene algunas restricciones de compra disponibles: se establecen l\u00edmites o la funci\u00f3n de compra online no est\u00e1 disponible.<\/p>\n\n\n\n C\u00f3mo solucionarlo.<\/strong> No es necesaria ninguna acci\u00f3n por parte de los desarrolladores.<\/p>\n\n\n\n Qu\u00e9 mensaje mostrar.<\/strong> La compra no est\u00e1 disponible con el m\u00e9todo de pago seleccionado. Por favor, aseg\u00farate de que tu m\u00e9todo de pago te permite realizar compras online.<\/p>\n\n\n\n Qu\u00e9 significa.<\/strong> El usuario est\u00e1 intentando comprar un producto que no est\u00e1 disponible para la regi\u00f3n en la que se utiliza esta tienda.<\/p>\n\n\n\n C\u00f3mo solucionarlo.<\/strong> El desarrollador debe comprobar la disponibilidad de los productos en la tienda y la regi\u00f3n del usuario. Para ello, puedes utilizar SKStorefront<\/a>.<\/p>\n\n\n\n Qu\u00e9 mensaje mostrar.<\/strong> Este producto no est\u00e1 disponible en tu regi\u00f3n. Por favor, cambia la tienda y vuelve a intentarlo.<\/p>\n\n\n\n Qu\u00e9 significa.<\/strong> El usuario no dio acceso a la informaci\u00f3n de su servicio en la nube.<\/p>\n\n\n\n C\u00f3mo solucionarlo.<\/strong> No es necesaria ninguna acci\u00f3n por parte de los desarrolladores.<\/p>\n\n\n\n Qu\u00e9 mensaje mostrar. Para ser sincero, <\/strong>nunca me he encontrado con un error semejante. En realidad, puedes escribir simplemente que la compra fue rechazada.<\/p>\n\n\n\n Qu\u00e9 significa.<\/strong> El dispositivo no estaba conectado a Internet al realizar la compra.<\/p>\n\n\n\n C\u00f3mo solucionarlo.<\/strong> No es necesaria ninguna acci\u00f3n por parte de los desarrolladores.<\/p>\n\n\n\n Qu\u00e9 mensaje mostrar.<\/strong> La compra no puede completarse porque tu dispositivo no est\u00e1 conectado a Internet. Por favor, int\u00e9ntalo de nuevo m\u00e1s tarde con una conexi\u00f3n a Internet estable.<\/p>\n\n\n\n\n\n Qu\u00e9 significa. <\/strong>Este dispositivo no tiene acceso al servicio de pago de StoreKit. Este error suele producirse en Sandbox.<\/p>\n\n\n\n C\u00f3mo solucionarlo.<\/strong> Crea un nuevo usuario de Sandbox o simplemente intenta repetir la operaci\u00f3n.<\/p>\n\n\n\n Qu\u00e9 mensaje mostrar. <\/strong>Lo sentimos, <\/strong>se ha producido un error.<\/p>\n\n\n\n Qu\u00e9 significa.<\/strong> El usuario no acept\u00f3 las condiciones de uso en la AppStore. Como se indica en la documentaci\u00f3n, \u00abel usuario a\u00fan no ha aceptado la pol\u00edtica de privacidad de Apple para Apple Music\u00bb. Sin embargo, parece un error, porque no hay ninguna raz\u00f3n para mencionar Apple Music aqu\u00ed.<\/p>\n\n\n\n C\u00f3mo solucionarlo.<\/strong> No es necesaria ninguna acci\u00f3n por parte de los desarrolladores.<\/p>\n\n\n\n Qu\u00e9 mensaje mostrar.<\/strong> La compra no puede completarse porque no has aceptado las condiciones de uso de AppStore. Por favor, confirma tu consentimiento en los ajustes y a continuaci\u00f3n regresa a la compra.<\/p>\n\n\n\n Qu\u00e9 significa.<\/strong> El ID de tu aplicaci\u00f3n no contiene el derecho requerido para usar StoreKit.<\/p>\n\n\n\n C\u00f3mo solucionarlo.<\/strong> Debes finalizar el proceso de configuraci\u00f3n de las compras dentro de la aplicaci\u00f3n.<\/p>\n\n\n\n Qu\u00e9 mensaje mostrar.<\/strong> Se ha producido un error. Int\u00e9ntalo de nuevo m\u00e1s tarde.<\/p>\n\n\n\n Qu\u00e9 significa.<\/strong> El usuario est\u00e1 intentando comprar un producto con una oferta promocional (promo offer) incorrecta.<\/p>\n\n\n\n C\u00f3mo solucionarlo.<\/strong> No es necesaria ninguna acci\u00f3n por parte de los desarrolladores.<\/p>\n\n\n\n Qu\u00e9 mensaje mostrar.<\/strong> La oferta promocional no es v\u00e1lida o ha caducado.<\/p>\n\n\n\n Qu\u00e9 significa.<\/strong> La firma de la oferta promocional para la solicitud de StoreKit se ha generado incorrectamente.<\/p>\n\n\n\n C\u00f3mo solucionarlo.<\/strong> Comprueba c\u00f3mo se genera la firma y corrige los errores. Si utilizas Adapty, descarga la clave de suscripci\u00f3n.<\/p>\n\n\n\n Qu\u00e9 mensaje mostrar.<\/strong> Lo sentimos, se ha producido un error al aplicar el c\u00f3digo promocional. Int\u00e9ntalo de nuevo m\u00e1s tarde.<\/p>\n\n\n\n Qu\u00e9 significa.<\/strong> Los par\u00e1metros de la oferta promocional se han formado incorrectamente.<\/p>\n\n\n\n C\u00f3mo solucionarlo.<\/strong> Comprueba y corrige los par\u00e1metros de tu oferta promocional.<\/p>\n\n\n\n Qu\u00e9 mensaje mostrar.<\/strong> Lo sentimos, se ha producido un error al aplicar la oferta promocional. Int\u00e9ntalo de nuevo m\u00e1s tarde.<\/p>\n\n\n\n Qu\u00e9 significa.<\/strong> El usuario est\u00e1 intentando comprar un producto con un precio irrelevante. Probablemente, el precio mostrado en AppStore ya no es v\u00e1lido.<\/p>\n\n\n\n C\u00f3mo solucionarlo.<\/strong> Establece el precio actualizado de esta oferta en AppStore.<\/p>\n\n\n\n Qu\u00e9 mensaje mostrar.<\/strong> Lo sentimos, tu compra no se puede completar. Int\u00e9ntalo de nuevo m\u00e1s tarde.<\/p>\n\n\n\n Un manejo de errores correcto mejora la experiencia del usuario y puede devolver al menos a algunos de los usuarios que no pudieron pagar la suscripci\u00f3n inmediatamente por alguna raz\u00f3n. Estos son los errores m\u00e1s comunes al implementar las compras en una aplicaci\u00f3n de iOS:<\/p>\n\n\n\n <\/figure>\n\n\n\n
<\/figure>\n\n\n\nSKError.Code.clientInvalid<\/strong><\/a>, c\u00f3digo 1<\/strong><\/h2>\n\n\n\n
SKError.Code.paymentCancelled<\/strong><\/a>, c\u00f3digo 2<\/strong><\/h2>\n\n\n\n
SKError.Code.paymentInvalid<\/strong><\/a>, c\u00f3digo 3<\/strong><\/h2>\n\n\n\n
SKError.Code.paymentNotAllowed<\/strong><\/a>, c\u00f3digo 4<\/strong><\/h2>\n\n\n\n
SKError.Code.storeProductNotAvailable<\/strong><\/a>, c\u00f3digo 5<\/strong><\/h2>\n\n\n\n
SKError.Code.cloudServicePermissionDenied<\/strong><\/a>, c\u00f3digo 6<\/strong><\/h2>\n\n\n\n
SKError.Code.cloudServiceNetworkConnectionFailed<\/strong><\/a>, c\u00f3digo 7<\/strong><\/h2>\n\n\n\n
SKError.Code.cloudServiceRevoked<\/strong><\/a>, c\u00f3digo 8<\/strong><\/h2>\n\n\n\n
SKError.Code.privacyAcknowledgementRequired<\/strong><\/a>, c\u00f3digo 9<\/strong><\/h2>\n\n\n\n
SKError.Code.unauthorizedRequestData<\/strong><\/a>, c\u00f3digo 10<\/strong><\/h2>\n\n\n\n
SKError.Code.invalidOfferIdentifier<\/strong><\/a>, c\u00f3digo 11<\/strong><\/h2>\n\n\n\n
SKError.Code.invalidSignature<\/strong><\/a>, c\u00f3digo 12<\/strong><\/h2>\n\n\n\n
SKError.Code.missingOfferParams<\/strong><\/a>, c\u00f3digo 13<\/strong><\/h2>\n\n\n\n
SKError.Code.invalidOfferPrice<\/strong><\/a>, c\u00f3digo 14<\/strong><\/h2>\n\n\n\n
Conclusi\u00f3n<\/h2>\n\n\n\n
\n