문제해결

이 문서의 정보는 정기 결제 연결을 구현하는 동안 발생할 수 있는 문제를 해결하는 데 도움이 됩니다.

구독 연결 메시지가 로드 중 화면에서 멈춤

오류 예:

로드 기호

그림 1. 구독 연결 메시지가 로드되지 않습니다.

이 문제를 해결하려면 다음을 확인하세요.

  • 게시자 센터의 게시 설정에서 테스트 하위 도메인을 포함한 페이지의 출처를 추가 URL로 추가해야 합니다.
  • Extended Access 또는 Reader Revenue Manager Enterprise를 구현하는 경우 테스트 하위 도메인을 비롯한 페이지의 출처를 이러한 구현을 위해 구성한 OAuth 2.0 클라이언트의 승인된 자바스크립트 출처에 추가해야 합니다. 이 작업은 Google Cloud 콘솔에서 수행해야 합니다.

계정을 연결할 수 없음

오류 예:

계정을 연결할 수 없음

그림 2. 계정에 연결할 수 없는 문제입니다.

이 문제를 해결하려면 다음을 확인하세요.

  • 게시자 센터에서 정기 결제 연결에 대한 서비스 약관에 동의해야 합니다. 이렇게 하려면 정기 결제 연결 설정으로 이동하여 정기 결제 연결 서비스 약관에 서명을 클릭합니다.
  • Google 계정이 이미 연결된 경우 정기 결제를 다시 연결하려고 하면 오류 메시지가 표시됩니다. 클라이언트 측 통합 테스트를 반복하기 전에 Google 계정의 정기 결제 페이지를 통해 정기 결제를 연결 해제해야 합니다.

Subscription Linking API를 호출할 때 권한 오류

오류 예:

코드 403
메시지
'//readerrevenuesubscriptionlinking.googleapis.com/publications/example.com/readers/10078823/entitlements'
리소스에서 'readerrevenuesubscriptionlinking.readerEntitlements.update'가 거부되었습니다 (또는 존재하지 않을 수 있음).'

이 문제를 해결하려면 다음을 확인하세요.

  • 정기 결제 연결 설정에 지정된 것과 동일한 프로젝트를 사용해야 합니다. 게시자 센터에서 구독 연결을 설정할 때 프로젝트 번호를 사용하세요. 프로젝트 대시보드에서 프로젝트 번호를 찾을 수 있습니다.
  • 프로젝트에 Subscription Linking API가 사용 설정되어 있는지 확인합니다.
  • 프로젝트 ID 및 액세스 관리 (IAM)에서 서비스 계정에 구독 연결 관리자라는 역할이 부여되었는지 확인합니다. 시스템을 통한 역할 변경을 전파하는 데 시간이 걸릴 수 있습니다. API를 호출할 때 403 오류가 발생하면 서비스 계정에 올바른 IAM 역할이 있는지 확인한 후에도 잠시 기다렸다가 요청을 다시 시도하세요.
  • 사용할 서비스 계정 또는 필요한 IAM 역할이 있는지 여부를 잘 모르겠다면 구독 연결을 위해 설정한 프로젝트의 정책 분석 도구를 사용합니다. 다음 쿼리 매개변수를 사용하여 맞춤 쿼리를 만들고 실행합니다.

    매개변수 1 역할
    역할 구독 연결 관리자
  • Subscription Linking API를 호출할 때 올바른 서비스 계정 키를 사용해야 합니다. 서비스 계정 키 (JSON 파일)에서 다음 속성을 검사합니다.

    • type: service_account여야 합니다.
    • project_id: 구독 연결 설정에 지정된 프로젝트 번호프로젝트 ID여야 합니다.
    • client_email: 구독 연결 관리자 역할이 할당된 프로젝트 IAM의 서비스 계정과 동일해야 합니다.
  • Google OAuth 2.0 토큰 엔드포인트(https://oauth2.googleapis.com/token)를 통해 액세스 토큰을 가져온 경우 Subscription Linking API를 호출할 때 토큰이 유효하고 만료되지 않았는지 확인합니다. 토큰이 만료되면 새 토큰을 얻어야 합니다.

  • REST API를 사용하는 경우 구독 연결 설정에서 제공한 간행물 ID를 사용해야 합니다. 예를 들어 간행물 ID가 example.com이면 요청 URL에 간행물 ID가 포함되어야 합니다.

    • ✅ 구성된 간행물 ID만 사용합니다. publications/example.com/readers/10078823/entitlements
    • 구독 연결 구성에 지정된 것 이외의 간행물 ID를 사용하지 마세요. publications/example-staging.com/readers/10078823/entitlements
    • ❌ 요청에 게시 제품을 포함하지 마세요. publications/example.com:premium/readers/10078823/entitlements

사용 권한을 업데이트하는 중에 잘못된 인수 오류가 발생했습니다.

오류 예:

메시지 오류: 요청에 잘못된 인수가 포함되어 있습니다.

이 문제를 해결하려면 다음을 확인하세요.

  • entitlements 객체를 올바른 형식으로 제공해야 합니다. 이 예시를 참고하세요.
  • product_idpublication_id:product 형식인지 확인합니다.
    • ✅ 유효한 예시: "product_id":"example.com:basic"
    • ❌ 잘못된 예: "product_id":"example.com"

검색결과에 강조표시된 기사가 표시되지 않음

이 문제를 해결하려면 다음을 확인하세요.