{"id":137928,"date":"2021-08-26T00:00:00","date_gmt":"2021-08-26T00:00:00","guid":{"rendered":"https:\/\/adapty.io\/es-ios-in-app-purchases-part-4-server-side-purchase-validation\/"},"modified":"2025-06-26T13:05:08","modified_gmt":"2025-06-26T13:05:08","slug":"ios-in-app-purchases-part-4-server-side-purchase-validation","status":"publish","type":"post","link":"https:\/\/adapty.io\/es\/blog\/ios-in-app-purchases-part-4-server-side-purchase-validation\/","title":{"rendered":"Las compras dentro de la aplicaci\u00f3n de iOS, parte 4: validaci\u00f3n de las compras del lado del servidor"},"content":{"rendered":"\n
La validaci\u00f3n del servidor (validaci\u00f3n del recibo (receipt validation) del lado del servidor<\/a>) es una forma de verificar la autenticidad de la compra. A diferencia de la validaci\u00f3n basada en el dispositivo, la validaci\u00f3n del servidor se produce -espera- en el lado del servidor. La validaci\u00f3n significa que el dispositivo o el servidor hacen una solicitud a los servidores de Apple para averiguar si la compra se ha producido realmente y si ha sido v\u00e1lida.<\/p>\n\n\n\n\n\n Hay que tener en cuenta que la validaci\u00f3n del servidor no es obligatoria: las compras dentro de la aplicaci\u00f3n seguir\u00e1n funcionando sin ella. Sin embargo, tiene algunas ventajas:<\/p>\n\n\n\n Seg\u00fan nuestra experiencia, la primera ventaja es suficiente para establecer el proceso de compra del servidor.<\/p>\n\n\n\n En general, el proceso de validaci\u00f3n del recibo en iOS tiene el siguiente aspecto:<\/p>\n\n\n\n Para enviar una solicitud de validaci\u00f3n de pago, tienes que incluir el secreto compartido para autorizar la solicitud. Puedes generar uno en App Store Connect. <\/p>\n\n\n\n El secreto compartido puede crearse para una aplicaci\u00f3n espec\u00edfica (secreto espec\u00edfico de la aplicaci\u00f3n) o para todas las aplicaciones de la cuenta (secreto principal).<\/p>\n\n\n\n Para generar un secreto espec\u00edfico para la aplicaci\u00f3n, abre la p\u00e1gina de la aplicaci\u00f3n en App Store Connect, ve a Compras dentro de la aplicaci\u00f3n \u2192 Manage y haz clic en App-Specific Shared Secret. En la ventana que se abre, podr\u00e1s generar un nuevo token o copiar el existente.<\/p>\n\n\n\n Para recibir el secreto de todas las aplicaciones de tu cuenta, abre la p\u00e1gina Users y Access y selecciona la pesta\u00f1a Shared Secret.<\/p>\n\n\n\n Una vez que recibas el secreto compartido, puedes enviar los recibos para que sean validados en los servidores de Apple. Esto se realiza a trav\u00e9s de la solicitud verifyReceipt<\/a>. Tienes que enviar una solicitud POST a https:\/\/buy.itunes.apple.com\/verifyReceipt.<\/a> En el cuerpo JSON de la solicitud, pasa el secreto compartido en el campo password<\/em>y el recibo en el campo receipt-data<\/em>. Tambi\u00e9n est\u00e1 el par\u00e1metro opcional exclude-old-transactions<\/em>. Si tiene el valor true<\/em>, entonces para cada suscripci\u00f3n autorrenovable, recibir\u00e1s s\u00f3lo la \u00faltima transacci\u00f3n en lugar del historial completo de renovaciones.<\/p>\n\n\n\n Aqu\u00ed est\u00e1 la carga \u00fatil de la solicitud de validaci\u00f3n de compra:<\/p>\n\n\n\n\u00bfPor qu\u00e9 validar las compras?<\/h2>\n\n\n\n
\n
Validaci\u00f3n de compra<\/h2>\n\n\n\n
<\/figure>\n\n\n\n
Generar el secreto compartido (shared secret)<\/h3>\n\n\n\n
<\/figure>\n\n\n\n
Solicitar la validaci\u00f3n del pago<\/h3>\n\n\n\n