Version Codes (Android)

Registro de version codes para Play Integrity.

O Android usa Play Integrity para validar a integridade do app. Registre os version codes na Stone para evitar erros de atestação.

Importante

Esse registro deve ser feito a cada nova versão publicada do app, antes de ela chegar aos lojistas.

Autenticação

Token Gerencial — mesmo fluxo de Consentimento e Ativação.

Endpoint — POST /v1/partners/versions

POST {base_url}/v1/partners/versions
Authorization: Bearer {token_gerencial}
Content-Type: application/json

{ "package_name": "com.parceiro.app", "app_version": 10 }
CampoTipoDescrição
package_namestringPackage name do app Android
app_versionintVersion code (build.gradle → versionCode)
HTTPDescrição
201Registrado com sucesso (idempotente)
401JWT inválido
422Validação falhou
424Erro de dependência externa

Exemplo

TOKEN="seu_token_gerencial"

curl -X POST "https://tap-sdx.stone.com.br/v1/partners/versions" \
  -H "Authorization: Bearer ${TOKEN}" \
  -H "Content-Type: application/json" \
  -d '{ "package_name": "com.parceiro.app", "app_version": 10 }'

CI/CD — GitHub Actions

- name: Register version code
  run: |
    TOKEN=$(curl -s -X POST '${{ secrets.AUTH_URL }}' \
      -H 'Content-Type: application/x-www-form-urlencoded' \
      -d 'grant_type=client_credentials' \
      -d 'client_id=${{ secrets.GERENCIAL_CLIENT_ID }}' \
      -d 'client_secret=${{ secrets.GERENCIAL_CLIENT_SECRET }}' | jq -r '.access_token')

     curl -X POST "${{ secrets.API_BASE_URL }}/v1/partners/versions" \
       -H "Authorization: Bearer ${TOKEN}" \
       -H "Content-Type: application/json" \
       -d '{ "package_name": "com.parceiro.app", "app_version": ${{ env.VERSION_CODE }} }'
Nota

Inclua o registro de version code no seu pipeline de CI/CD para automatizar a cada release. As Credenciais Gerenciais ficam como secrets do pipeline, nunca no app.

Veja também


Integração: Tap to Pay para Terceiros
Etapa 7 de 7