안녕하세요. 박세계입니다.
최근 님의 백수곰 이모티콘의 많은 구매가 이뤄졌습니다. 저는 플랫폼 제공자의 입장에서 중립을 지키기 위해 특정한 상품만을 별도로 언급하는 것을 극도로 자제하고 있습니다. 상품 홍보가 곧 스팀샵 홍보로 자연스레 이어지는것 또한 알고 있지만, 당장에는 상품 홍보 게시물을 리스팀 하는 정도로만 개입(?)을 하고 있는 상황입니다. 때가 되면 본격적으로 스팀샵과 상품들의 홍보를 적극적으로 할 계획이며, 그 전까지는 동일한 입장을 취할 생각입니다.
그럼에도 님의 이모티콘을 여기서 언급하는 이유는 단 하루만에 30여건에 해당하는 구매가 이뤄진 기념비적인 사건(?)이기 때문입니다. 그리고, '원치않는 중복 구매 실수'가 발생할 수 있었던 살짝 치명적인 버그가 존재 하는것을 알고 있었지만 자주 발생하는게 아니라 일단 미루고 있었는데, 이를 바로 개선 할 수 밖에 없는 계기 또한 되었기 때문입니다.
'원치않는 중복 구매'라는 의미를 좀 더 명확히 하자면, 한 번 구매 했더니 원치않게 이중으로 돈이 나가는 식의 상황이 아닙니다. 그런일은 절대 일어나지 않습니다. 구매를 완료 했는데 스팀샵에 바로 반영되지 않아 구매가 잘 안될걸로 착각하여 다시 구매를 하는 경우를 말합니다. '실수'라는 단어를 사용한 이유입니다.
https://tool.steem.world/Shop
중복 구매 실수 방지를 위해 다음과 같이 몇가지 개선사항을 적용해봤습니다.
중복 구매가 발생할 수 있는 결정적인 원인은 현재 스팀커넥트 구조의 제한 때문인데, 간단히 말씀드리면 스팀커넥트로 결제가 이뤄진 직후 이를 바로 조회하는 방법이 제가 아는 선에서 아직 존재하지 않기 때문입니다. 그래서 구매자의 스팀잇 지갑 페이지를 읽어서 판단하고 있는데, 엎친데 덮친격으로 언젠가부터 지갑 페이지의 송금 기록 반영도 1분 정도 지연이 생기고 있어 구매완료 상태를 즉각적으로 판단하는게 더 어려워지고 있습니다. 사실 즉각적인 판단은 현재 불가능합니다. 현재 제가 할 수 있는 최선은, 이를 최대한 티가 덜나게, 그리고 1분 정도의 지연은 피할 수 없지만 암튼 스팀샵에 꼭 반영을 하긴 하는 것입니다.
위와 같은 이유로, 아래에서 설명할 개선사항은 사실 근원적인 완벽한 해결책은 아니며, 그저 몇가지 문구를 적재적소에 추가한 것 뿐입니다. 왜 이럴수 밖에 없었는지에 대해 대략적인 이해에 위의 설명이 조금이나마 도움이 되셨기를 바랍니다.
1. '구매 내역' 페이지 하단에 문구 추가
스팀샵 상품 구매 직후 구매 내역 페이지로 자동으로 이동하는데, 방금 구매한 상품이 나오질 않아 당황하신 분들이 많으실 겁니다. 위에도 설명했듯 당분간은 어쩔 수 없는 상황이며, 스팀잇 웹사이트가 정상적으로 동작한다는 전제하에 보통 1분이내 반영이 됩니다. 조금이나마 이해를 돕고자 페이지 하단에 다음과 같은 문구를 추가했습니다.
구매 완료 후 본 내역에 반영되기까지 1분 내외의 시간이 소요됩니다. 방금 구매하셨다면 잠시 후 다시 확인하세요.
추가로, 기존에 '구매일시' 항목을 UTC로 표기하여 한국 사용자가 직관적으로 이를 알기 어려웠는데, 한국어 선택시 한국 사용자로 임의 판단하여 한국시간을 보여주도록 했습니다.
2. 상품 상세 페이지에서 이미 구매한 상품 표시
이미 구매가 완료된 상품의 상세 페이지 확인 시 구매 버튼 하단에 다음과 같은 문구를 추가하여 실수를 방지했습니다. 실제로 재구매를 원하는 경우가 있을 수 있기에 여전히 추가 구매는 가능하도록 했습니다.
이미 구매한 상품입니다. (구매 내역)
3. 구매 시도 시 중복 구매 최종 확인 및 메시지 출력
위 1번과 2번 항목을 무심결에 지나치고 실수로 중복 구매를 시도하는 상황을 방지하고자 구매 시도 시, 즉 상품 가격이 표시된 버튼을 클릭하는 경우, 최종적으로 또 확인하여 5분 이내 구매 시도를 이미 했을 경우 아예 다음 단계로 넘어가지 않도록 했습니다. 메시지는 다음과 같습니다.
방금 전 이미 구매 시도를 하셨습니다. O분 후 다시 시도하세요.
구매 완료를 체크하는게 아닌 구매 '시도'를 체크하는 이유는, 스팀샵이 보기에는 아직 '구매 중' 상태인데 실제로는 '구매 완료'인 상황이 있을 수 있기 때문이며, 해당 상황에서 발생 할 수 있는 만약을 위한 실수들까지도 최대한 방지하기 위해서입니다.
보시다시피 중복 구매 실수 방지를 위한 완벽 해결책은 아직 존재하지 않습니다. 이를 해결 할 수 있는 좀 더 명확하고 확실한 방법이 뭐가 있을까 항상 고민중에 있으며, 더 나은 개선사항이 생각나면 꼭 반영하도록 하겠습니다.
최근 제 블로그에 와서 댓글 주시는 분들께 거의 대댓글을 드리지 못하고 있습니다. 질문이나 제안같이 꼭 답변이 필요한 경우를 제외하면 일일이 찾아뵙지 못하고 있는데, 진심으로 매우 죄송스럽게 생각합니다. 찾아주시는 분들을 무시해서가 전혀 아니며, 전적으로 제 체력의 한계로 인한 게으름 때문입니다. 이 자리를 빌어 죄송한 마음 전하고 싶습니다.
감사합니다.