앱 내부에서 아이템을 파는 형식의 수익구조를 가진 앱을 서비스중입니다.


현재 구현된 바로는 구글 sdk의 in-app관련 라이브러리를 포함시켜서,

사용자가 구매버튼을 누르면, 클라이언트에서 구글로부터 결제 완료 처리가 오는 순간에

우리쪽 서버에서 결제 완료 처리하여 아이템 카운트가 올라가는 방식입니다.


그런데 전혀 생각지도 못했던 문제가 발생했는데요. 바로 구매 취소(캔슬)입니다.

사용자가 취소한 것 같지는 않고 사용 불가능한 카드(예를들어 체크카드를 사용하여 결제한 후

돈이 빠져나가기 전에 체크카드의 돈을 모두 뺀다던지)를 사용한 것 같은데요.


위의 구현 내용을 보시면 알겠지만 구글에서 결제 완료가 오는 순간에 결제가 이루어지도록 되어있어

결제완료 몇일 이후에나 나오는 이러한 캔슬에 대해 전혀 대처가 불가능합니다.

이미 지급되어 사용된 아이템을 뺐는것도 애매하구요.


이걸 어떻게 처리할 수 있을까요? 혹시 이런 문제에 봉착한 선배 개발자분들 계신가요?