코드만 보이는 화면은 다음 행동을 알려 주지 않습니다
문의 양식을 제출했는데 알아보기 어려운 문자와 숫자로 된 코드만 나오면 이용자는 다시 시도해야 할지, 입력을 고쳐야 할지, 포기해야 할지 알 수 없습니다. 내부 코드는 담당자가 원인을 추적하는 데는 유용하지만 이용자에게 유일한 안내가 되어서는 안 됩니다. 메시지는 무슨 일이 일어났는지와 지금 할 수 있는 행동을 함께 설명해야 합니다.
문장의 어조도 중요합니다. 이용자가 잘못한 것처럼 읽히는 표현은 불필요한 위축을 낳습니다. 사실을 담담하게 전하고, 해결 방법을 구체적으로 안내하는 편이 협조를 이끌어 냅니다.
예를 들어 '입력 형식이 올바르지 않습니다'보다 '연락처는 숫자만 입력해 주세요'처럼 고치는 방법까지 보여 주면 이용자가 한 번에 수정할 수 있습니다. 허용되는 형식은 입력란 옆에 미리 안내해 두면 오류 자체가 줄어듭니다.
입력 오류와 서비스 문제를 먼저 나눕니다
이용자가 고칠 수 있는 오류와 서비스 쪽에서 해결해야 하는 오류는 안내 방식이 달라야 합니다. 필수 항목이 비었다면 어느 항목인지 정확히 표시하고, 이미 입력한 다른 값은 지워지지 않게 유지합니다. 입력한 내용을 모두 잃은 이용자는 다시 작성하려 하지 않습니다.
서버나 외부 인증처럼 서비스 쪽 문제라면, 잠시 뒤 다시 시도하거나 공식 지원 경로를 확인하도록 안내합니다. 이때 실제로 확인되지 않은 복구 시간을 약속하는 문장은 쓰지 않습니다. 지켜지지 않은 약속은 오류 자체보다 더 큰 불신을 만듭니다.
오류가 일시적일 가능성이 있더라도 몇 분 뒤 다시 시도하라는 안내는 이용자가 실제로 해 볼 수 있는 행동일 때만 의미가 있습니다. 반복해도 해결되지 않는 경우를 대비해 다른 문의 방법을 함께 보여 주면 이용자가 막다른 길에 놓이지 않습니다.
결제와 예약에서는 완료 여부가 가장 중요합니다
중요한 행동 뒤에 오류 화면이 떠도 처리가 실제로는 접수되어 있을 수 있습니다. 이런 상황에서 무조건 다시 제출하라고 안내하면 중복 신청이 생깁니다. 현재 상태를 확인할 수 있는 경로를 제공하고, 운영자가 확인해야 한다면 필요한 정보를 최소한의 범위로 요청합니다.
개인정보를 공개 게시판이나 댓글로 남기게 하는 안내는 피해야 합니다. 문의 수단은 비공개로 이루어지는 경로를 우선 안내하고, 접수번호처럼 개인정보가 아닌 식별값을 활용하면 이용자와 담당자 모두 편해집니다.
문의 창구를 안내할 때는 응대 가능한 시간과 방법도 함께 적습니다. 운영 시간 밖에 오류를 만난 이용자가 언제 답을 받을 수 있는지 알 수 있어야 불필요한 반복 시도를 줄일 수 있습니다.
메시지의 위치와 접근성도 함께 확인합니다
화면 맨 위에 '오류가 발생했습니다'라는 문장만 있고 문제가 된 입력란은 아래에 있다면 이용자가 찾기 어렵습니다. 해당 항목 가까이에서 이유를 설명하고, 키보드로 이동할 때 초점이 오류 위치로 가는지, 화면 읽기 프로그램이 같은 내용을 읽어 주는지 확인합니다.
색상만으로 오류 상태를 구분하는 방식도 피합니다. 붉은색을 구분하기 어려운 이용자가 있기 때문에, 아이콘이나 문장으로 상태를 함께 표현해야 합니다.
내부 로그와 화면 문구는 분리합니다
이용자에게 보이는 문구는 쉬운 설명으로, 내부 기록은 담당자가 추적할 수 있도록 상세하게 남기는 것이 바람직합니다. 발생 시각과 코드를 기록해 두면 문의가 들어왔을 때 원인을 빨리 찾을 수 있습니다. 반대로 시스템 구조나 민감한 설정이 공개 화면에 노출되지 않도록 주의합니다.
메시지가 실제 동작과 맞는지 컴퓨터와 모바일 모두에서 시험합니다. 문구에서는 저장되었다고 했는데 실제로는 저장되지 않았다면 오류 메시지보다 더 큰 문제입니다.
오류 메시지 문구는 한 번 정하고 끝내지 말고, 실제 문의 내용과 대조해 주기적으로 다듬습니다. 이용자가 자주 막히는 지점을 문구와 안내에 반영하면 문의량도 자연스럽게 줄어듭니다.
실무에서 확인할 점
같은 오류가 반복된다면 문구를 더 친절하게 바꾸는 데서 멈추지 말고 원인을 고쳐야 합니다. 좋은 오류 메시지는 코드를 해독하라고 요구하지 않고, 이용자가 자신의 작업 상태를 이해한 뒤 안전한 다음 단계를 스스로 고르게 돕습니다.