wallet una subir play license historial google developer cuesta cuanto compras app aplicacion google-api in-app-purchase in-app-billing

google api - una - cuenta de servicio(403) Prohibida la API de estado de compra de facturación en la aplicación de Google Play



google wallet (1)

Acabo de resolver este problema.

Debe agregar el correo electrónico de la cuenta de servicio ("1048550291137-rfqol5nm4k9tqr0a5bupedoakhd184k4@developer.gserviceaccount.com") en su página de publicación de google play ( https://play.google.com/apps/publish/ , no en la consola de desarrollador de Google).

en "Configuración" - "Cuenta de usuario y derechos", "Invitar nuevo usuario", envíe con el correo electrónico de la cuenta de servicio, marque la casilla "Ver informes financieros" a la derecha, luego todo funciona bien ~

<?php include_once(''./src/Google_Client.php''); include_once(''./src/contrib/Google_AndroidpublisherService.php''); //user token, in json format $ANDROIDUsertoken = ''{"orderId":"12999763169054705758.1323390433376399","packageName":"org.luan.hellocpp","productId":"1","purchaseTime":1394183520430,"purchaseState":0,"purchaseToken":"rurmodmieoumgowoquecqhnv.AO-J1Ow43-aM8CXNWlUcUYmA06bIaYzZPcCJCua0lLxnihOULX27Jg6NvqNUlWMpoENxtdHCIVSm6AM2mVkiC0ABSch2JEKmu1zqsVM46L762H5ppF4AIcE"}''; $user_token= json_decode($ANDROIDUsertoken,true); // https://developers.google.com/console/help/#service_accounts const CLIENT_ID = ''1048550291137-rfqol5nm4k9tqr0a5bupedoakhd184k4.apps.googleusercontent.com''; const SERVICE_ACCOUNT_NAME = ''1048550291137-rfqol5nm4k9tqr0a5bupedoakhd184k4@developer.gserviceaccount.com''; const KEY_FILE = ''./key.p12''; $client = new Google_Client(); $client->setApplicationName($user_token[''packageName'']); $client->setClientId(CLIENT_ID); $key = file_get_contents(KEY_FILE); $auth = new Google_AssertionCredentials( SERVICE_ACCOUNT_NAME, array(''https://www.googleapis.com/auth/androidpublisher''), $key); $client->setAssertionCredentials($auth); //$client->getAuth()->refreshTokenWithAssertion(); //$accessToken=$client->getAccessToken(); //$client->setAccessToken($accessToken); $AndroidPublisherService = new Google_AndroidPublisherService($client); $res = $AndroidPublisherService->inapppurchases->get($user_token[''packageName''], $user_token[''productId''], $user_token[''purchaseToken'']); var_dump($res); ?>

error de vuelta:

PHP Fatal error: Uncaught exception ''Google_ServiceException'' with message ''Error calling GET https://www.googleapis.com/androidpublisher/v1.1/applications/org.luan.hellocpp/inapp/1/purchases/rurmodmieoumgowoquecqhnv.AO-J1Ow43-aM8CXNWlUcUYmA06bIaYzZPcCJCua0lLxnihOULX27Jg6NvqNUlWMpoENxtdHCIVSm6AM2mVkiC0ABSch2JEKmu1zqsVM46L762H5ppF4AIcE: (403) Forbidden'' in /var/www/debug/google/src/io/Google_REST.php:66 Stack trace: #0 /var/www/debug/google/src/io/Google_REST.php(36): Google_REST::decodeHttpResponse(Object(Google_HttpRequest)) #1 /var/www/debug/google/src/service/Google_ServiceResource.php(186): Google_REST::execute(Object(Google_HttpRequest)) #2 /var/www/debug/google/src/contrib/Google_AndroidpublisherService.php(39): Google_ServiceResource->__call(''get'', Array) #3 /var/www/debug/google/purchase.php(32): Google_InapppurchasesServiceResource->get(''org.luan.helloc...'', ''1'', ''rurmodmieoumgow...'') #4 {main} thrown in /var/www/debug/google/src/io/Google_REST.php on line 66

Obtuve el error Prohibido 403 cuando uso la cuenta de servicio para consultar la API de estado de compra. Se ha activado el estado de la API para desarrolladores de Google Play para Android en Google Developers Console. Quién puede ayudarme. Gracias