이런 증상으로 찾아오셨을 거예요

고친 데도 없는데 시간만 이상해요. 대부분 이 넷 중 하나예요.

  1. 1손님이 오후 두 시로 예약했는데 확인 문자에는 새벽 다섯 시라고 찍혀요. 정확히 아홉 시간이 어긋나요.
  2. 2관리자 화면의 접수 시간이 전부 아홉 시간 이르게 나와요. 밤에 들어온 주문은 아예 어제 날짜로 보여요.
  3. 3달력에서 3월 2일을 골랐는데 저장된 값은 3월 1일이에요. 하루가 사라져요.
  4. 4어제 매출과 오늘 매출이 안 맞아요. 밤늦게 들어온 주문 몇 건이 자꾸 반대편 날짜에 붙어요.

가게 벽에 걸린 시계와 본사 상황실 시계가 다른 시간을 가리키는 상황이에요. 본사는 전 세계 지점을 한 눈금으로 관리해야 하니까 어느 나라에도 치우치지 않은 기준 시계를 씁니다. 우리 가게 벽시계보다 아홉 시간 느린 그 시계요. 문제는 영수증을 뽑을 때 본사 시계 숫자를 그대로 찍어 버린 거예요. 시계가 고장 난 게 아니라, 어느 시계를 보고 적을지를 정하지 않은 것이 사고예요.

왜 하필 아홉 시간인가

우리가 만든 서비스는 두 곳에 살아요. 손님이 보는 화면, 그리고 기록을 쌓아 두는 서버예요. 서버는 관례상 세계 표준시로 시간을 적습니다. 한국 시간은 그 기준보다 아홉 시간 빨라요. 그래서 기록에는 늘 아홉 시간 차이가 들어 있어요.

여기까지는 정상이에요. 사고는 기록된 숫자를 그대로 화면에 옮겨 적을 때 생겨요. 환율 계산 없이 달러 숫자를 원화 칸에 옮겨 적은 것과 같아요. 숫자가 틀린 게 아니라 단위를 안 바꾼 거죠.

그래서 이 사고는 기능이 잘못 만들어진 게 아니라 표기가 빠진 것이에요. 예약은 제대로 잡혀 있고, 주문도 제대로 들어와 있어요. 손님에게 보여 주는 숫자만 옛 단위로 적혀 있는 거죠. 그래서 고치는 데 시간도 얼마 안 걸려요. 무서워하지 않으셔도 돼요.

반창고 처방
화면에 그릴 때 9를 더한다 (보이는 숫자만 손댐)

지금 이 화면은 맞아 보여요. 그런데 문자 발송, 정산 내역, 새로 만든 화면에서 또 틀려요. 두 군데서 더하면 열여덟 시간이 어긋나요.

제대로 고치기
기록은 기준 시계로 그대로, 보여줄 때만 한국 시간으로 환산

환산하는 자리가 한 곳이라 화면을 새로 만들어도 계속 맞아요. 해외 손님이 봐도 각자 시간으로 바꿔 줄 수 있어요.

AI에게 이렇게는 말하지 마세요

"9시간 더해주세요"라고 시키면 그대로 해 줍니다. 그리고 다음 달에 똑같은 증상이 다른 화면에서 또 나와요. "한국 시간으로 보여주세요"라고 말하는 게 같은 수고로 훨씬 멀리 갑니다.

예약 한 건이 지나는 다섯 군데

시간 사고가 잘 안 잡히는 이유가 있어요. 예약 한 건이 손님 손을 떠나 사장님 눈에 닿기까지 다섯 군데를 지나는데, 그중 한 곳만 환산을 빼먹어도 증상이 나기 때문이에요. 어디가 범인인지 알면 말하기가 쉬워져요.

  1. 1손님이 고르는 화면. 여기는 보통 멀쩡해요. 손님 달력에서 고른 그대로니까요.
  2. 2저장되는 순간. 여기서 기준 시계로 환산돼요. 정상 동작이에요. 여기가 틀렸다고 의심할 필요는 거의 없어요.
  3. 3관리자 목록. 첫 번째 사고 지점이에요. 기록된 숫자를 그대로 그리면 아홉 시간 이르게 보여요.
  4. 4알림 문자와 메일. 두 번째 사고 지점이에요. 화면은 고쳤는데 문자는 다른 자리에서 만들어지느라 옛 방식으로 남아 있는 경우가 정말 많아요.
  5. 5매출표와 집계. 세 번째 사고 지점이에요. 시각은 맞는데 하루의 시작을 잘못 잡아서 날짜별 숫자가 어긋나요.

고칠 때 세 군데를 한 번에 말하세요

"화면, 알림 문자, 매출 집계 세 곳 모두 한국 시간 기준으로 맞춰주세요." 화면만 고치면 이틀 뒤에 문자에서 같은 클레임이 다시 옵니다. 한 번 말할 때 세 군데를 함께 말하는 게 훨씬 빨라요.

증상 그대로 이렇게 말하세요

용어를 외우실 필요 없어요. 보이는 대로 말하고, 오른쪽 문장을 그대로 붙여 쓰시면 됩니다.

보이는 증상이렇게 말하세요
예약 시간이 아홉 시간 어긋나요"예약 시간이 실제보다 아홉 시간 이르게 보여요. 화면과 알림에 나오는 시간은 모두 한국 시간으로 맞춰주세요"
관리자 목록의 접수 시간이 이상해요"관리자 목록의 접수 시간이 한국 시간이 아니에요. 저장된 기록은 그대로 두고 보여주는 시간만 한국 시간으로 바꿔주세요"
달력에서 고른 날이 하루 전으로 저장돼요"달력에서 고른 날짜가 저장될 때 하루 밀려요. 날짜는 시각으로 바꾸지 말고 고른 날짜 그대로 저장해주세요"
밤에 들어온 주문이 어제 매출로 잡혀요"하루를 세는 기준이 한국 시간 자정이 아니에요. 오늘 매출은 한국 시간 0시부터 24시까지로 세주세요"
해외에서 접속한 손님에게 다른 시간이 보여요"예약 시간은 항상 가게 기준 시간으로 보여주고, 시간 옆에 한국 시간이라고 같이 적어주세요"
문자와 화면의 시간이 서로 달라요"화면과 알림 문자의 시간이 서로 달라요. 두 곳이 같은 한국 시간을 쓰게 한 군데서 만들어 쓰게 해주세요"
생일이나 마감일이 하루씩 어긋나요"날짜만 쓰는 칸인데 하루씩 어긋나요. 이 칸은 시각 없이 날짜만 다루게 해주세요"

말할 때 이 한 줄을 꼭 붙이세요

"이미 쌓인 기록은 건드리지 말고, 보여주는 쪽만 고쳐주세요." 쌓인 기록까지 손대면 옛 기록은 맞고 새 기록은 두 번 어긋나는 상태가 됩니다. 그때부터는 어느 게 맞는 시간인지 사람도 알 수 없어요.

날짜 하나가 하루 밀리는 이유

시간 어긋남보다 더 자주 클레임이 되는 게 날짜 하루 밀림이에요. 예약일이 하루 앞으로 밀리면 손님은 아무 안내도 못 받고 빈 날에 옵니다.

원인은 하나예요. 날짜만 있으면 되는 값을 컴퓨터가 시각까지 붙여서 다루는 겁니다. "3월 2일"을 "3월 2일 0시"로 읽고, 그걸 기준 시계로 환산하면 아홉 시간이 빠져서 3월 1일 오후 3시가 돼요. 화면에는 날짜만 그리니 사장님 눈에는 3월 1일로만 보이죠.

그래서 생일, 마감일, 예약 가능일, 휴무일처럼 시계와 상관없는 날짜는 시각을 붙이지 않고 날짜 그대로 다뤄야 해요. 달력에 동그라미 치는 것과 알람 맞추는 것은 다른 일이에요.

장면 1 · 손님이 빈 날에 왔다

어제 예약 확인 문자 받고 왔는데요. 3월 2일이라고 적혀 있었는데 명단에 제 이름이 없다고 하시네요.

예약 명단에는 3월 1일로 들어가 있었어요. 손님 화면에서는 고른 날짜를, 명단에서는 환산된 날짜를 보여 준 거예요. 한쪽만 보고 확인하면 절대 못 잡는 사고라서, 시간 문제는 항상 화면과 명단을 나란히 놓고 확인해야 해요.

매출 집계가 어긋나는 자정 문제

밤 열한 시에 들어온 주문은 기준 시계로는 같은 날 오후 두 시예요. 하루의 시작을 기준 시계 자정으로 잡아 두면, 밤 아홉 시부터 자정까지 세 시간 동안 들어온 주문이 통째로 다음 날 매출로 넘어갑니다. 저녁 장사가 주력인 가게라면 매일 매출이 어긋난다는 뜻이에요.

구분잘못된 하루맞는 하루
시작기준 시계 0시(한국 시간 오전 9시)한국 시간 0시
기준 시계 24시(한국 시간 다음 날 오전 9시)한국 시간 24시
증상저녁 주문이 다음 날로 넘어감장부와 화면이 일치

결제사 기준일과는 또 별개예요

내 화면의 하루를 맞춰도 결제사가 세는 하루는 다를 수 있어요. 정산 내역과 내 매출표가 안 맞으면 그건 시간대 사고가 아니라 정산 주기 문제일 수 있어요. 정산과 입금에서 기준을 먼저 확인해 보세요.

고친 다음 이렇게 확인하세요

  1. 1아침 시간으로 한 건 넣어 보세요. 오전 아홉 시 전 시간이 가장 잘 틀립니다. 여기서 날짜가 하루 밀리면 아직 안 고쳐진 거예요.
  2. 2밤 시간으로 한 건 넣어 보세요. 밤 열한 시 예약이 어느 날짜로 잡히는지 봅니다.
  3. 3같은 한 건을 세 곳에서 봅니다. 손님 화면, 관리자 목록, 알림 문자. 세 곳이 같아야 끝난 거예요.
  4. 4날짜가 바뀌는 첫날과 마지막 날을 넣어 보세요. 매달 1일과 말일이 경계라서 여기서 밀림이 드러나요.
  5. 5고쳐진 걸 확인했으면 손님에게 이미 나간 안내를 점검해요. 틀린 시간으로 확인 문자를 받은 손님이 있으면 다시 안내해야 해요.

장면 2 · 외주 개발자가 말했다

서버는 UTC 로 저장하고 있어요. 화면에서 KST 로 변환해서 보여드릴게요.

이제 해석돼요. 기록은 기준 시계로 쌓고, 보여줄 때만 한국 시간으로 바꿔 그린다는 뜻이에요. 제대로 하고 있다는 말입니다. 여기서 사장님이 물어볼 것은 하나예요. "화면 말고 알림 문자와 매출 집계도 같은 방식인가요?"

장면 3 · 손님이 예약을 다시 잡아 달라고 전화했다

제가 분명히 두 시로 눌렀는데 문자에는 새벽 다섯 시라고 나와요. 이거 예약된 거 맞나요?

예약 자체는 제대로 잡혀 있고 문자에 찍는 시간만 환산이 빠진 경우가 많아요. 손님에게 먼저 "예약은 두 시로 정상 접수됐고 문자 표기 오류"라고 안내하고, 그다음에 고치세요. 순서가 바뀌면 손님은 예약이 날아갔다고 믿고 다른 곳을 잡아요.

다음부터 안 겪는 방법

시간 사고는 고치는 것보다 처음에 한 줄 말해 두는 것이 훨씬 쉬워요. 예약, 주문, 상담 신청처럼 시간이 들어가는 기능을 만들 때 이 세 줄을 같이 붙이세요.

언제미리 붙일 말
예약이나 주문 기능을 만들 때"시간은 모두 한국 시간 기준으로 다루고, 화면과 알림 문자에도 한국 시간으로 보여주세요"
날짜만 쓰는 칸을 만들 때"이 칸은 날짜만 필요해요. 시각을 붙이지 말고 날짜 그대로 저장해주세요"
매출이나 방문자 집계를 만들 때"하루의 기준은 한국 시간 0시부터 24시까지로 세주세요"
해외 손님도 받을 계획이 있을 때"나중에 다른 나라 손님도 받을 거예요. 시간대를 지역 이름으로 다뤄주세요"

네 줄 다 외우실 필요는 없어요. 첫 줄만 습관처럼 붙이셔도 클레임의 대부분이 사라집니다. 나머지는 그 기능을 만들 때 이 문서를 다시 열어 보시면 돼요.

손님 눈에 보이는 곳에는 시간대를 글자로 적으세요

예약 확인 화면과 문자에 "오후 2시(한국 시간)"처럼 한 마디만 붙여 두면, 설령 어딘가 어긋나도 손님이 먼저 알아차려서 전화를 줍니다. 헛걸음보다 전화 한 통이 훨씬 나아요.

자주 묻는 것

Q. 한국에서만 장사하는데 왜 굳이 기준 시계를 쓰나요?
기록을 한 가지 눈금으로 남겨 두면 나중에 무엇을 붙여도 안 흔들려요. 결제사, 문자 발송사, 지도 서비스가 각자 다른 시계를 쓰는데, 내 기록만 흔들리지 않으면 맞춰 볼 기준이 생겨요. 사장님이 보는 화면은 어차피 한국 시간이니 불편해질 일도 없어요.
Q. 지금 이미 어긋난 기록들은 어떻게 하나요?
먼저 보여주는 쪽만 고쳐서 새 기록부터 맞게 하세요. 쌓인 기록은 그다음에 손대야 해요. 그리고 손대기 전에 백업을 남기세요. 한 번 잘못 환산한 기록은 원래 값을 되찾을 방법이 없어요. 백업과 복구를 먼저 보세요.
Q. 손님이 해외에 있으면 손님 시간으로 보여주는 게 친절한 거 아닌가요?
예약처럼 가게에 실제로 와야 하는 일은 가게 시간 하나로 고정하고 시간 옆에 한국 시간이라고 적는 게 안전해요. 손님 시간으로 바꿔 보여주면 손님이 다시 계산하다가 틀려요. 반대로 배송 조회나 문의 답변 시각처럼 일어난 일을 알려 주는 것은 손님 시간으로 보여주는 편이 낫습니다.
Q. 서머타임이 뭐예요? 한국은 없다고 들었는데요.
여름에 시계를 한 시간 앞당기는 제도예요. 한국은 지금 쓰지 않지만 미국과 유럽은 씁니다. 그래서 해외 손님을 받으면 1년에 두 번, 어느 날 갑자기 한 시간씩 어긋나는 일이 생겨요. 미리 지역 이름으로 저장해 두면 알아서 따라갑니다.
Q. 영업시간도 시간대 처리를 해야 하나요?
아니에요. 영업시간 "오전 아홉 시"는 특정 순간이 아니라 벽시계 눈금이에요. 이걸 기준 시계로 환산하면 오히려 망가져요. 예약 한 건과 영업시간은 성질이 다른 값이라 같은 방식으로 다루면 안 됩니다. 영업시간과 휴무 알리기를 보세요.
Q. AI가 고쳤다고 했는데 또 틀려요. 왜 그런가요?
시간을 그리는 자리가 여러 곳에 흩어져 있으면 한 번에 다 못 잡아요. 그럴 때는 "시간을 보여주는 곳이 몇 군데 있는지 먼저 알려주세요"라고 물어보세요. 목록이 나오면 그 목록을 그대로 다시 붙여서 "이 전부를 한국 시간으로 맞춰주세요"라고 하면 됩니다. 한 곳씩 잡는 것보다 훨씬 빨라요.
Q. 예약 시간 옆에 한국 시간이라고 적으면 촌스럽지 않나요?
국내 손님만 보는 화면이면 굳이 안 적어도 돼요. 다만 예약 확인 문자에는 적는 편이 좋아요. 문자는 손님이 며칠 뒤에 다시 꺼내 보는 유일한 증거라서, 여기에 기준이 적혀 있으면 시간 다툼이 생기지 않아요.
Q. 손님이 잘못된 시간으로 온 뒤에는 뭘 해야 하나요?
그날 안에 시간 표기 오류였다고 알리고, 예약을 다시 잡아 주세요. 사장님 실수가 아니라 표기 문제라고 말하면 오히려 신뢰가 올라가요. 숨기면 같은 손님이 다시 겪었을 때 가게 관리가 엉망이라고 생각합니다.

확인해 보세요

예약 확인 문자의 시간이 아홉 시간 이르게 찍혀요. AI에게 뭐라고 말하는 게 좋을까요?

하나 더

달력에서 3월 2일을 골랐는데 명단에는 3월 1일로 들어갔어요. 원인은?

직접 해보기

지금 만든 화면에서 아침 시간으로 한 건 넣어 보세요

오전 아홉 시 전 시간과 밤 열한 시, 이 두 건만 넣어 보면 시간대 사고가 있는지 없는지 바로 드러나요. 손님 화면과 관리자 목록을 나란히 놓고 같은지 보세요.

스튜디오 열기

더 깊이 (안 읽어도 괜찮아요)

왜 기준 시계 하나로 적는 게 표준이 됐나 · 각자 자기 시계로 적으면 두 기록 중 어느 것이 먼저 일어났는지 비교할 방법이 없어요. 서울 오후 세 시와 뉴욕 오후 세 시는 다른 순간이니까요. 그래서 기록에는 어느 나라에도 치우치지 않은 눈금 하나를 쓰고, 사람에게 보여줄 때만 그 사람 시계로 바꿉니다. 계산은 표준 단위로 하고 영수증만 현지 통화로 찍는 것과 같은 원리예요. 서버가 어느 나라 기계에서 돌든 기록이 흔들리지 않는다는 점도 커요. 서버를 다른 나라로 옮겨도, 여러 대로 늘려도 시간 기록은 그대로 맞아요. 만약 서버 시계를 한국 시간으로 맞춰 쓰고 있었다면, 옮기는 날 하루치 기록이 통째로 어긋납니다.

숫자 차이가 아니라 지역 이름으로 저장해야 하는 이유 · "아홉 시간 차이"라고 저장하면 그 순간에는 맞아요. 문제는 시간대 규칙이 나라 사정으로 바뀐다는 겁니다. 서머타임을 새로 도입하거나 폐지하는 나라가 실제로 있어요. 그래서 개발할 때는 차이를 숫자로 굳히지 않고 서울, 뉴욕 같은 지역 이름으로 저장합니다. 그러면 규칙이 바뀌어도 이름을 따라 알아서 맞아요. 특히 몇 달 뒤 예약처럼 미래 시간을 저장할 때 이 차이가 클레임으로 나타나요.

순간과 벽시계 눈금은 다른 종류의 값이다 · 예약 한 건은 지구상의 특정 순간이라 어느 시계로 봐도 같은 순간을 가리켜야 해요. 반면 영업시간 아홉 시, 배송 마감 다섯 시, 이런 값은 벽시계 눈금이라 순간이 아니에요. 매일 반복되는 눈금이니까요. 이 둘을 같은 칸에 섞어 넣으면 어느 쪽을 고쳐도 다른 쪽이 망가집니다. 실제로 흔한 사고가 이거예요. 예약 시간을 고쳐 달라고 했더니 영업시간까지 아홉 시간 옮겨져서 가게가 새벽에 문 여는 것으로 표시되는 일이요. AI에게 시킬 때 "이건 특정 시각 약속이에요" 또는 "이건 매일 반복되는 운영 시간이에요"라고 성질을 밝혀 주면 이 사고를 피할 수 있어요.

이것만 기억하세요

  • ·아홉 시간 어긋남은 기록이 아니라 보여줄 때 환산을 빼먹은 문제예요
  • ·"9시간 더해주세요" 말고 "한국 시간으로 보여주세요"라고 말하세요
  • ·쌓인 기록은 그대로 두고 보여주는 쪽만 고쳐 달라고 하세요
  • ·날짜만 필요한 칸에 시각을 붙이면 하루가 밀려요
  • ·확인은 아침 시간, 밤 시간, 그리고 화면과 문자를 나란히 놓고 하세요
VibeCampus新建作品