결제 오류 기사에 대한 소고

배달앱에서 동의없이 멋대로 신용카드 결제? … ‘있을 수 없는일’이라는 기사를 보고 결제 시스템 개발자로서 짧게 적어본다.
(참고로 해당 업체와는 아무 관련없음)

부산시 기장군에 사는 최 모(남)씨는 지난 25일 오후 6시경 ‘요기요’ 앱으로 치킨을 주문하려고 앱을 실행했다.
치킨 전문점을 선택해 메뉴를 살피던 중 오류가 발생해 ‘주문이 취소되었습니다’란 문구가 뜨고 앱이 종료됐다.

배달앱을 이용하던 소비자가 ‘결제’ 버튼을 누르지 않았는데도 등록된 신용카드로 결제됐다며 문제 제기했다. 업체 측은 시스템상 일어날 수 없는 오류라고 반박했다.

관계자는 “‘1초 결제’가 신용카드를 등록해놓으면 사인이나 비밀번호 없이 바로 결제되는 구조라 주문을 진행하는 과정서 고객이 오해한 부분이 생겼을 수도 있지 않을까 싶다”며…(후략)

서비스를 개발하면서 수없이 많이 고객문의에 대해 응답을 해봤던 경험으로 보면, 대부분 고객은 정직하다. 그리고 서비스 담당자는 그런 관점에서 오류를 디버깅해 볼 필요가 있다고 생각한다. 혹은 고객이 어뷰징을 한다고 생각한다면, 해당 근거를 착실히 찾아볼 필요가 있다. 그래서 개발자는 로그나 DB데이터를 착실하게 쌓아야 할 의무가 있다. 보통 고객이 어뷰징을 하게 되는 이유는 대부분 프로모션때문이다. 할인이나 쿠폰, 이벤트 참여 등의 어떤 이익을 가지고 어뷰징을 진행한다. 혹은 본인의 실수를 덮기 위해서인 경우도 있고, 정말 고객이 인지하지 못한 채 잘못된 경우도 있긴 하다.

나도 위와 비슷한 경험을 한 적이 있다. 아마존 앱에서 물건을 구입 했을 때 였다. 아마존에서 KRW(원화)로 구입하면 이중환전이 된다는 사실을 알고 있기 때문에 USD(달러)인 것을 확인하고 결제를 진행하였다. 그런데 어느 날 발송된 인보이스를 확인했더니, 아마존 자체 환율(보통 환율보다 100원정도 비쌈)으로 이중환전이 된 것을 확인했다. 마치 ‘결제 버튼을 누르지도 않았는데도 결제가 됐다’며 의문을 제기한 위 기사처럼 ‘proceed with USD’를 확인하고 버튼을 눌렀는데, KRW로 결제가 되어버린 것이다. 나름 개발자로서 몇 가지 테스트를 진행해봤다. 아마존 앱에는 유저의 결제를 빠르게 진행하기 위해서 상단, 중단, 하단에 결제 버튼이 있는데, 그 중에 하나가 오작동하는 모양이다. 라벨은 ‘proceed with USD’로 되어 있는데, 내부 동작이 Locale을 따라 가는 것인지 KRW로 결제되어 버렸다. 명백한 버그라고 생각하고 고객센터에 연락했지만, ‘그럴리 없다'(마치 위 기사처럼)는 답변이었다. 게다가 그 친구들은 Locale이 미국으로 되어 있을테니, 나와 같은 경우가 재현될리도 없다. 아마 테스트도 부족했을 것 같고… 나는 이미 재현되는 상황이었기 때문에 고객센터에서 처리하지 말고, 개발부서로 포워딩을 요청했는데, 사실상 거절당했다. 언어의 장벽일지도 모르겠다.

사실 요기요 케이스가 버그인지, 고객실수인지, 고의적인 어뷰징인지는 알 수 없다. 하지만 행동의 유인이 명확하지 않은 경우에는 항상 ‘무죄추정의 원칙‘을 적용하여 생각해봐야 한다. 아무리 서비스를 잘 만들어도 버그는 존재하기 마련이다.

 

답글 남기기

이메일은 공개되지 않습니다. 필수 입력창은 * 로 표시되어 있습니다