메뉴

나라별 주소 형식: 필드 순서와 표기 차이 이해하기

나라별 주소 형식이 어떻게 다른지, 큰 단위에서 작은 단위로 가는 순서와 반대 순서, 우편번호 모양, 없는 필드를 어떻게 다루어야 하는지 정리합니다.

게시일

  • 주소 형식
  • 국가별 규칙

나라별 주소 형식은 얼마나 다른지를 한 번 정리해 두면 이후의 모든 주소 시험이 쉬워집니다. 어떤 나라는 작은 단위에서 큰 단위로 쓰고, 어떤 나라는 반대 순서로 쓰며, 어떤 나라는 우리가 당연하게 여기는 필드가 아예 없습니다. 이 글에서는 주소의 순서가 왜 갈리는지, 우편번호의 모양이 어떻게 다른지, 없는 필드를 어떻게 다루어야 하는지, 여러 나라를 함께 다루는 화면은 어떤 구조가 좋은지 차례로 살펴봅니다.

주소의 순서는 왜 나라마다 다른가요?

주소는 배달을 위해 존재하고, 배달은 사람이 읽는 순서를 따릅니다. 우편 제도가 먼저 발달한 나라에서는 집과 거리부터 적고 도시와 지역을 뒤에 붙이는 방식이 굳어졌습니다. 이 방식은 좁은 지역 안에서 빠르게 찾아가는 데 유리합니다.

반대로 넓은 땅에서 지역 단위로 먼저 분류해 온 나라에서는 큰 단위에서 작은 단위로 내려가는 방식이 자연스러웠습니다. 나라 이름, 도, 시, 구, 동네 순으로 좁혀 가는 방식입니다. 우편물을 지역별로 나누어 실어 보내던 관행이 표기에 그대로 남았습니다.

그래서 같은 정보를 담고 있어도 나라에 따라 읽는 방향이 반대가 됩니다. 화면에서 여러 나라를 함께 다룬다면, 순서를 하나로 고정할 수 없다는 사실을 먼저 인정해야 합니다. 순서를 억지로 통일하면 그 나라 사람에게는 어색한 입력이 됩니다.

작은 단위부터 쓰는 나라와 큰 단위부터 쓰는 나라는 어떻게 다른가요?

작은 단위부터 쓰는 대표적인 예가 미국과 영국입니다. 번지와 거리 이름이 먼저 오고, 도시와 주 또는 카운티가 뒤따르며, 마지막에 우편번호가 붙습니다. 두 나라도 세부는 다릅니다. 미국은 주 이름을 두 글자 약어로 쓰는 경우가 많고, 영국은 도시 이름 다음에 우편번호가 오는 형태가 일반적입니다.

큰 단위부터 쓰는 대표적인 예가 일본과 한국입니다. 일본은 도도부현에서 시작해 시와 구와 정과 번지로 내려가고, 그 뒤에 건물 이름이 붙습니다. 한국도 시와 도로명과 건물 번호 순으로 내려간 뒤 상세 주소가 옵니다. 두 나라 모두 우편번호가 맨 앞이나 맨 뒤에 따로 표시됩니다.

같은 나라 안에서도 순서가 갈리는 경우가 있습니다. 공식 문서에 쓰는 순서와 실제 우편물에 쓰는 순서가 다르고, 외국으로 보내는 국제 우편에서는 나라 이름을 맨 뒤에 크게 쓰는 관행이 있습니다. 시험 데이터를 만들 때는 어느 용도의 순서인지 정해 두어야 합니다.

우편번호의 모양은 어떻게 다른가요?

우편번호는 나라마다 길이와 구성이 다릅니다. 다섯 자리 숫자만 쓰는 나라, 다섯 자리 뒤에 네 자리를 더 붙여 쓰는 나라, 숫자와 문자가 번갈아 나오는 나라가 있습니다. 같은 나라에서도 용도에 따라 두 가지 형식을 함께 쓰기도 합니다.

구분 기호를 쓰는 방식도 다릅니다. 두 덩어리로 나뉜 우편번호는 가운데에 공백이나 하이픈을 넣기도 하고, 아예 붙여 쓰기도 합니다. 사용자가 어느 방식으로 입력하든 시스템이 같은 값으로 읽어야 하므로, 저장할 때 구분 기호를 지우고 표시할 때 다시 붙이는 방식이 안전합니다.

우편번호가 없는 나라도 있습니다. 이런 나라에서는 우편번호 칸을 필수로 두면 가입 자체가 막히고, 대신 다른 지역 코드가 그 역할을 합니다. 나라별 우편번호 형식은 우편번호 형식 목록에 정리해 두었습니다.

나라에 없는 필드는 어떻게 다루어야 하나요?

가장 흔한 실수는 자기가 아는 주소 구조를 모든 나라에 적용하는 것입니다. 주 또는 도 단위가 없는 나라도 많고, 시와 구가 하나로 합쳐진 나라도 있습니다. 상세 주소를 두 줄로 나누는 관행이 없는 나라에서는 두 번째 줄이 늘 비어 있게 됩니다.

필수가 아닌 필드를 필수로 만들면 실제 사용자가 가입을 끝내지 못합니다. 반대로 모든 필드를 선택 사항으로 만들면 배달이 불가능한 주소가 저장됩니다. 그래서 나라별로 어떤 필드가 필수인지를 자료로 관리하고, 화면이 그 자료를 읽어 필수 표시를 바꾸도록 만드는 편이 좋습니다.

없는 값을 억지로 채우게 하는 것도 피해야 합니다. 도 단위가 없는 나라의 사용자가 아무 글자나 넣게 되면, 그 값은 나중에 주소 정리 과정에서 잘못된 지역으로 해석됩니다. 빈 값은 빈 값대로 두고, 검사 규칙이 그 사실을 아는 것이 낫습니다.

여러 나라를 함께 다루는 화면은 어떻게 설계해야 하나요?

가장 단순한 구조는 큰 칸 하나에 주소 전체를 문자열로 받는 것입니다. 나라별 순서를 그대로 살릴 수 있고, 주소 형식이 크게 바뀌어도 화면을 고칠 필요가 없습니다. 다만 지역별 통계나 배송 구역 판정처럼 값을 쪼개 써야 하는 기능에는 쓸 수 없습니다.

반대 구조는 모든 나라에 같은 칸을 제공하고 나라별로 표시 이름만 바꾸는 것입니다. 구현은 쉽지만 나라마다 의미가 다른 칸이 생기고, 없는 필드를 억지로 채우게 되는 문제가 돌아옵니다. 이 구조를 택한다면 각 칸이 어떤 나라에서 어떤 의미인지 문서로 남겨 두어야 합니다.

가장 현실적인 절충은 공통 칸과 나라별 추가 칸을 나누는 것입니다. 나라와 우편번호와 도시처럼 어디에나 있는 값을 공통 칸으로 두고, 지역 이름과 상세 주소는 나라별 규칙에 따라 배치합니다. 나라별로 화면을 어떻게 바꿀지는 국가 선택 필드 시험에서 다룹니다.

주소 형식 자료는 어디에서 가져오고 어떻게 관리하나요?

가장 믿을 만한 출처는 각 나라의 우편 사업자와 통계 기관이 공개하는 자료입니다. 우편 사업자는 우편번호 체계와 주소 표기 지침을 공개하고, 통계 기관은 행정 구역 목록과 코드를 공개합니다. 국제 표준으로 정해진 나라 코드와 행정 구역 코드도 함께 쓰면 나라 간 비교가 쉬워집니다.

자료를 가져올 때는 두 가지를 함께 기록해야 합니다. 어느 출처에서 언제 가져왔는지, 그리고 그 자료가 어느 시점의 행정 구역을 반영하는지입니다. 행정 구역은 합쳐지거나 나뉘고 이름이 바뀌므로, 시점을 모르면 나중에 값의 정합성을 판단할 수 없습니다.

자료를 관리하는 원칙은 국가 데이터의 최신성과 출처에 정리해 두었습니다. 나라를 새로 추가할 때 무엇을 확인해야 하는지는 국가 데이터 점검 목록에 있습니다.

우편번호와 지역 이름이 서로 맞는지 어떻게 확인하나요?

우편번호와 지역 이름이 어긋나는 경우는 실제 입력에서 자주 생기지만 시스템은 좀처럼 잡아내지 못합니다. 이사한 뒤 우편번호만 고치거나, 예전에 살던 도시 이름을 그대로 두면 두 값이 서로 다른 지역을 가리킵니다. 형식 검사만으로는 이 상태를 걸러 낼 수 없습니다.

대조하려면 나라별 자료가 필요합니다. 우편번호 대역과 지역 이름을 연결한 표가 있어야 두 값이 같은 지역을 가리키는지 확인할 수 있습니다. 나라에 따라 이 대조가 가능한 경우와 그렇지 않은 경우가 나뉘므로, 대조할 수 있는 나라와 없는 나라를 구분해 두어야 합니다.

대조가 안 되는 나라에서는 다른 방법을 씁니다. 도시 이름 목록과 우편번호 형식만 확인하고, 두 값의 관계는 확인하지 않는다고 명시하는 편이 낫습니다. 확인하지 않은 것을 확인한 것처럼 다루면 나중에 배송 단계에서 문제가 드러납니다. 나라를 고르는 기준은 시험용 국가 선택에서 다룹니다.

주소 정규화는 어디까지 시험해야 하나요?

정규화는 사용자가 여러 방식으로 입력한 주소를 한 가지 형태로 맞추는 작업입니다. 대소문자를 통일하고, 약어를 펼치고, 구분 기호를 지우는 일이 여기에 속합니다. 정규화가 제대로 되지 않으면 같은 주소가 여러 값으로 저장되어 중복으로 보입니다.

시험에서는 정규화 전후의 값을 함께 확인합니다. 표시할 때는 사용자가 입력한 형태를 살리고, 저장할 때는 통일된 형태를 쓰는 방식이 일반적입니다. 이 둘을 섞으면 화면에 나오는 값과 검색에 걸리는 값이 달라집니다.

정규화가 지나치게 세면 정보가 사라집니다. 건물 번호에서 문자를 지우거나 발음 구별 부호를 없애면 원래 주소를 되살릴 수 없습니다. 어느 정도까지 손댈지를 정하고 그 규칙을 시험으로 고정해 두세요.

여러 나라 주소를 함께 시험할 때 무엇을 조심해야 하나요?

나라마다 규칙이 다르므로 시험 데이터도 나라별로 만들어야 합니다. 한 나라의 값을 다른 나라 화면에 넣어 통과하는지 보는 시험은 의미가 없습니다. 반대로 일부러 어긋난 나라 조합을 넣어 거부되는지 보는 음성 시험은 필요합니다.

국경을 넘는 주소도 별도로 다루어야 합니다. 주문자의 나라와 배송지의 나라가 다르고, 배송지 주소를 다른 나라의 형식으로 적어 넣는 경우가 있습니다. 이런 주소는 어느 나라 규칙으로 검사할지가 정해지지 않아 화면마다 다르게 처리됩니다. 국경 간 주소 흐름은 국경을 넘는 주소 시나리오에서 다룹니다.

특수 지역도 시험에 넣어 두세요. 작은 섬이나 특별한 코드를 쓰는 지역은 우편번호도 행정 구조도 일반적인 규칙을 따르지 않는 경우가 많습니다. 이런 값을 나중에 발견하면 검사 규칙을 크게 고쳐야 합니다. 특수 지역 목록은 특수 지역과 코드에 정리했습니다.

나라별 형식을 처음 도입할 때 무엇부터 확인해야 하나요?

처음부터 모든 나라를 다루려 하면 어느 나라도 제대로 다루지 못합니다. 실제로 배송하거나 결제가 일어나는 나라 몇 곳을 골라 그 나라의 규칙을 정확히 반영하는 편이 낫습니다. 나라를 고르는 기준은 서비스의 실제 사용자 분포와 같아야 합니다.

고른 나라마다 확인할 것은 몇 가지로 정리됩니다. 주소의 필드 순서, 우편번호의 형식과 유무, 필수 항목과 없는 항목, 지역 이름 목록의 출처와 시점입니다. 이 네 가지를 적어 두면 그 나라의 화면을 만들 수 있습니다.

확인한 내용을 어디에 적어 두는지도 정해야 합니다. 문서와 코드가 따로 놀면 코드가 문서를 따라가지 못하고, 문서만 고치면 화면은 그대로입니다. 나라별 규칙을 한 곳에 모아 두고 화면과 검사가 같은 곳을 읽게 만드는 구조가 오래 갑니다.

주소 형식이 바뀌면 시험 데이터는 어떻게 되나요?

나라의 행정 구역이 개편되면 시험 데이터도 영향을 받습니다. 지역이 합쳐지거나 이름이 바뀌면 예전 값이 새 목록에 없게 되고, 검사 규칙이 그 값을 거부하기 시작합니다. 시험이 갑자기 실패하면 원인은 코드가 아니라 자료일 수 있습니다.

이때 필요한 것은 값의 수명을 아는 것입니다. 언제 만들어진 값인지, 어느 판본의 지역 목록을 썼는지가 기록되어 있으면 어느 값을 다시 만들어야 하는지 판단할 수 있습니다. 기록이 없으면 모든 값을 다시 만들어야 합니다.

개편을 미리 알기는 어렵지만, 자료를 갱신할 때 예전 값을 한동안 받아 주는 기간을 두는 방법이 있습니다. 사용자가 예전 지역 이름을 그대로 입력하는 경우가 실제로 있으므로, 화면도 같은 유예를 두는 편이 친절합니다.

주소를 다룰 때 사용자에게 무엇을 알려 주어야 하나요?

화면은 사용자가 자기 주소를 어디에 어떻게 적어야 하는지 알려 주어야 합니다. 나라를 고르면 그 나라의 필드 이름과 순서가 바뀐다는 사실, 필수 항목이 무엇인지, 우편번호가 없는 나라에서는 그 칸을 채우지 않아도 된다는 사실을 안내해야 합니다.

자기 주소를 라틴 문자로 적어야 하는 나라도 있습니다. 이때 어떤 순서로 적을지, 모국어 표기를 함께 남길지에 대한 안내가 없으면 사용자는 두 가지 방식으로 입력하게 됩니다. 안내 문구가 곧 데이터의 일관성을 만듭니다.

입력을 마친 뒤에는 결과를 확인시켜 주는 편이 좋습니다. 저장된 주소를 그 나라의 형식으로 다시 보여 주고, 사용자가 그대로 두겠다고 하면 저장하는 흐름은 잘못된 입력을 크게 줄입니다. 이 확인 단계는 시험 항목으로도 넣어 두세요.

주소 형식 자료를 고칠 때 무엇을 조심해야 하나요?

자료를 고치면 그 자료를 읽는 화면과 검사가 함께 바뀝니다. 한 나라의 지역 목록을 새로 받으면 그 나라의 목록 화면이 바뀌고, 이전에 만든 시험 데이터가 새 목록에 없는 이름을 담고 있을 수 있습니다. 고치는 시점과 시험 데이터를 다시 만드는 시점을 함께 정하는 편이 좋습니다.

고친 내용을 되돌릴 수 있게 남겨 두는 것도 필요합니다. 어떤 값이 언제 왜 바뀌었는지 알 수 없으면 문제가 생겼을 때 원인을 찾기 어렵습니다. 사람이 손으로 고친 부분은 특히 기록해 두세요.

여러 나라를 함께 고치는 일은 한 번에 하지 않는 편이 안전합니다. 나라별로 고치고 그 나라의 시험을 돌려 확인한 뒤 다음 나라로 넘어가면, 문제가 생겼을 때 어느 변경이 원인인지 바로 알 수 있습니다.

나라별 주소 형식 도구에서 바로 확인해 보기

나라별 주소 형식 도구에서 나라를 고르고 그 나라의 필드 순서와 우편번호 형식과 필수 항목을 확인할 수 있습니다. 확인한 규칙은 시험 데이터를 만들 때 그대로 쓰고, 만든 값이 화면에서 어떻게 표시되는지도 함께 보세요. 도구에서 만든 값을 그대로 검사에 넣기 전에, 국가 데이터 점검 목록으로 빠진 항목이 없는지 확인하는 편이 좋습니다.

여기서 정리한 규칙은 공개된 우편 지침을 바탕으로 한 것이며, 실제 배달 가능 여부를 보증하지는 않습니다. 나라별 제도는 바뀌므로 시험에 쓰기 전에 최신 지침을 확인하세요.

나라별 주소 형식을 다룰 때의 경계는 어디인가요?

할 수 있는 것은 형식과 표시에 관한 확인입니다. 순서가 다른 입력을 읽는지, 우편번호를 나라별로 검사하는지, 없는 필드를 비워 두어도 저장되는지, 나라를 바꿀 때 화면이 어떻게 재구성되는지를 모두 시험할 수 있습니다.

할 수 없는 것은 그 주소가 실제로 존재하는지 판단하는 일입니다. 형식이 맞다는 사실은 그 주소에 사람이 산다는 뜻이 아닙니다. 합성 주소는 배달 대상이 아니며, 우편 사업자의 주소 조회에서도 나오지 않습니다.

시험용 주소는 시험 환경에만 두고, 고객이 입력한 실제 주소와 섞이지 않도록 구분하세요. 실제 주소를 시험 데이터로 복사해 쓰는 일은 어떤 편의를 위해서도 정당화되지 않습니다.

이어 읽기

인기 도구와 사용법 글