결제 오류 '실패'에 관하여

몇몇 유저가 결제 시 지불에는 성공했지만 아이템 수령을 하지 못했다고 주장합니다.

확인해보니 문제가 있는 대부분의 결제들은 영수증 검증에서 ‘실패’ 기록이 확인됩니다.

첨부된 스크린샷과 같이 상태가 '실패’인 사항에 대해 그 원인을 알 수 있겠습니까?

감사합니다.

  • 상품 magic_defense_novice_package_01은 유저 당 1회만 구입 가능한 상품이므로, 이 문제는 동일 결제에 대해 2회 청구가 발생하여 생길 수 있는 문제로도 보입니다.

안녕하세요 개발자님,
확인 시 스크린샷 내용과 같이 2회의 영수증 검증 시도 내역이 확인되며,
두번째 요청의 경우 이미 영수증 검증을 진행한 내역으로 다시 시도되어 아래 에러 발생과 함께 실패한 내역으로 확인됩니다.

This receipt has already been used. usedDate: 2024-12-05T06:08:26Z

확인이 필요한 다른 내역이 있으신 경우, 정보를 전달해주시면 확인하여 안내드릴 수 있도록 하겠습니다.

현재 이 현상이 일관되게 발생하는 현상이 아니며, 일부 유저에 한해서만 거래 실패를 야기하고 있습니다.

특정 유저에 한정된 문제가 아니며, 이전에 결제를 여러 번 성공한 유저도 마지막 결제에서 동일한 문제를 겪습니다.

이 문제가 발생할 경우 대금 청구는 진행되나 결제 프로세스에서 오류가 반환되어 결제가 완료되지 않고, 결과적으로 유저에게 아이템이 지급되지 않는 문제로 이어집니다.

단일 거래에 대해 2회 이상의 영수증 검증 시도가 발생할 수 있는 요인이 무엇인지 알 수 있겠습니까?

아래는 동일한 증상이 확인되는 유저의 ID들입니다.

1DF777

NI8EE

5VUTKK


수정 : 2024-12-06 10:15 오전

현재 문제의 원인에 관한 시나리오가 아래와 같습니다.

1) 구글 측에서 이중 결제가 발생했음, 구글 측에서는 첫 번째 청구에 대해서는 성공을, 두 번째 청구에 대해서는 실패 콜백을 반환함

2) 뒤끝 영수증 검증에는 첫 번째 청구에 대한 성공 기록이, 두 번째 청구에 대한 실패 기록이 남음.

3) 클라이언트에서 아이템 지급을 위해 뒤끝 영수증 검증을 진행함. 이 때, 마지막 영수증(두 번째 청구의 ‘실패’)을 가져오게 되어 결제 실패 판정을 내림.

4) 결과적으로 해당 결제가 청구되지 않았다고 판단하여 아이템 지급 프로세스가 중지됨.

상기 시나리오가 유효하다면, 이 문제를 방지 또는 개선할 방법이 없을지 문의드립니다.

추가로 문의하신 내용 답변드립니다.
결제가 성공하는 순간 앱 크래시 등이 발생하는 상황과 동일해 보이며,
이 경우 번거로우시겠지만 데이터 내역을 확인하여 수동으로 확인/지급 하시는 방법 외에는 없습니다.
큰 도움이 되지 못해 죄송합니다.

이 문제가 거의 매일 발생하며, 운영 이슈에서 상당한 부담이 되고 있습니다.

현재 전체 결제의 0.2~0.5% 정도가 이 문제를 겪는 것으로 보입니다.

이런 형태의 결제 오류로 인한 아이템 지급 실패가 다른 게임에서도 흔하게 확인되는 현상일까요?

또한 이 문제의 원인이 뒤끝 영수증 검증 기능을 사용하기 때문에 발생한 것이라면, 뒤끝 영수증 검증이 아닌 다른 방식으로 검증 후 아이템을 지급할 수 있습니까?

  1. 구글 측에서 이중 결제가 발생했음, 구글 측에서는 첫 번째 청구에 대해서는 성공을, 두 번째 청구에 대해서는 실패 콜백을 반환함
  2. 뒤끝 영수증 검증에는 첫 번째 청구에 대한 성공 기록이, 두 번째 청구에 대한 실패 기록이 남음.
  3. 클라이언트에서 아이템 지급을 위해 뒤끝 영수증 검증을 진행함. 이 때, 마지막 영수증(두 번째 청구의 ‘실패’)을 가져오게 되어 결제 실패 판정을 내림.
  4. 결과적으로 해당 결제가 청구되지 않았다고 판단하여 아이템 지급 프로세스가 중지됨.

현재 말씀해주신 상황 중, 3번의 과정이 상이합니다.
처음 문의주신 스크린샷의 영수증 검증 내역의 첫번째 성공 이후
두번째 실패는, 추가 결제 내역의 영수증을 통해 요청이 이루어진 것이 아닌
첫번째 성공한 영수증 정보를 통해 재시도되어서 발생한 실패입니다.

이미 뒤끝에서 검증이 이루어진 영수증으로 성공 이력이 존재함에도 다시 요청이 이루어지며 실패한 경우에 해당하며,
이는 성공 내역과 실패내역 상세조회를 통해 확인 시 영수증 토큰 정보가 일치함을 통해 확인할 수 있습니다.
이로인해 처음 답변드린것과 같이 취소/환불/실패로인한 영수증 검증 실패 에러가 아닌 이미 사용된 영수증임을 안내하는 에러가 발생하였습니다.

마지막 답변과 같이 결제 이후 영수증 검증은 성공하였으나,
상품 지급이 정상적으로 이루어지지 못한 상황에 해당하기에 이 경우는 번거로우시겠지만 데이터 내역을 확인하여 수동으로 확인/지급 해주셔야 합니다.
도움드리지 못해 죄송합니다.

답변 감사드립니다.

좋아요 1