{"id":137950,"date":"2021-08-26T00:00:00","date_gmt":"2021-08-26T00:00:00","guid":{"rendered":"https:\/\/adapty.io\/pt-ios-in-app-purchases-part-4-server-side-purchase-validation\/"},"modified":"2021-08-26T00:00:00","modified_gmt":"2021-08-26T00:00:00","slug":"ios-in-app-purchases-part-4-server-side-purchase-validation","status":"publish","type":"post","link":"https:\/\/adapty.io\/pt\/blog\/ios-in-app-purchases-part-4-server-side-purchase-validation\/","title":{"rendered":"Compras no aplicativo para iOS, parte 4: valida\u00e7\u00e3o de compra do lado do servidor"},"content":{"rendered":"\n
Valida\u00e7\u00e3o no servidor (valida\u00e7\u00e3o do recibo do lado do servidor (server-side)<\/a>) \u00e9 uma forma de verificar a autenticidade da compra. Ao contr\u00e1rio da valida\u00e7\u00e3o baseada no dispositivo, a valida\u00e7\u00e3o no servidor ocorre – aguarde – no lado do servidor. A valida\u00e7\u00e3o significa que o dispositivo ou o servidor faz uma solicita\u00e7\u00e3o aos servidores da Apple para descobrir se a compra realmente ocorreu e se \u00e9 v\u00e1lida.<\/p>\n\n\n\n\n\n Deve-se salientar que a valida\u00e7\u00e3o no servidor n\u00e3o \u00e9 obrigat\u00f3ria \u2014 as compras no aplicativo ainda ser\u00e3o realizadas sem ela. No entanto, ela confere algumas vantagens:<\/p>\n\n\n\n Segundo nossa experi\u00eancia, a primeira vantagem, por si s\u00f3, j\u00e1 \u00e9 suficiente para configurar o processamento de compras no servidor.<\/p>\n\n\n\n Em geral, o processo de valida\u00e7\u00e3o de recibos no iOS \u00e9 assim:<\/p>\n\n\n\n Para enviar um pedido de valida\u00e7\u00e3o de pagamento, \u00e9 necess\u00e1rio incluir o segredo compartilhado para autorizar o pedido. Voc\u00ea pode gerar um segredo no App Store Connect. <\/p>\n\n\n\n O segredo compartilhado pode ser criado para um aplicativo espec\u00edfico (segredo espec\u00edfico do aplicativo) ou para todos os aplicativos da conta (segredo prim\u00e1rio).<\/p>\n\n\n\n Para gerar um segredo espec\u00edfico para o aplicativo, abra a p\u00e1gina do aplicativo na App Store Connect, acesse Compras no aplicativo \u2192 Gerenciar e clique em Segredo compartilhado espec\u00edfico para o aplicativo. Na janela que se abre, \u00e9 poss\u00edvel gerar um novo token ou copiar o token existente.<\/p>\n\n\n\n Para receber o segredo para todos os aplicativos em sua conta, abra a p\u00e1gina Usu\u00e1rios e Acesso e selecione a aba Segredo Compartilhado.<\/p>\n\n\n\n Assim que voc\u00ea receber o segredo compartilhado, pode-se enviar os recibos para serem validados nos servidores da Apple. Para isso, \u00e9 necess\u00e1rio fazer uma solicita\u00e7\u00e3o verifyReceipt<\/a>. Voc\u00ea deve enviar uma solicita\u00e7\u00e3o POST para https:\/\/buy.itunes.apple.com\/verifyReceipt<\/a>. No corpo do JSON do pedido, digite o segredo compartilhado no campo. password<\/em> e o recibo no campo receipt-data<\/em>. Tamb\u00e9m existe o par\u00e2metro opcional exclude-old-transactions <\/em>. Caso tenha o valor true<\/em> value, para cada assinatura renov\u00e1vel automaticamente, voc\u00ea receber\u00e1 apenas a \u00faltima transa\u00e7\u00e3o ao inv\u00e9s do hist\u00f3rico completo de renova\u00e7\u00e3o.<\/p>\n\n\n\n Veja a seguir qual \u00e9 a carga \u00fatil da solicita\u00e7\u00e3o de uma valida\u00e7\u00e3o de compra:<\/p>\n\n\n\nPor que validar as compras?<\/h2>\n\n\n\n
\n
Valida\u00e7\u00e3o de compra<\/h2>\n\n\n\n
<\/figure>\n\n\n\n
Como gerar o segredo compartilhado<\/h3>\n\n\n\n
<\/figure>\n\n\n\n
Como solicitar uma valida\u00e7\u00e3o de pagamento<\/h3>\n\n\n\n