송금인 글자 수 제한이죠.
보통 한글은 5-7글자 정도에서 자르는 걸로 보이는데, 아시다시피 입금자명이랑 금액 외에는 우리가 알 수 있는 송금 관련 정보가 하나도 없습니다.
문제는 보내는 사람 입장에서 길게 적어도 받는 은행에서 그걸 어느정도 길이로 자를지 전혀 예측이 불가능하다는 것.

특히 법인들은 주식회사로 시작하는데, 그럼 대부분의 이름이 잘립니다.
주식회사 삼
이라고 나오면 삼정인지 삼성인지 삼화인지 모릅니다.
주식회사 한국
이라고 나오묜 한국직업능력개발원인지 한국전자통신연구원인지 모르죠.
받는 담당자 입장에서는 "이 시기에 이 정도 금액을 보낼 사람이 누구일까" 유추를 하게 되고, 결국 사고로 이어지죠. 돈을 보내지 않은 사람이 보냈다고 착각하게 되고, 반대도 가능하고요.
이 글자 하나를 표현하는 데에는 2바이트가 듭니다.
글자 수를 100글자까지 패도 고작 200바이트예요. 송금인 명 1억 명의 데이터도 200억 바이트면 충분하고, 심지어 DB에서 동일 구간은 묶어서 저장하니 저장 비용은 더 저렴해지죠.
저장 비용은 실제로 미러링, 백업 비용까지 해도 0.01원도 안 듭니다. 그런데도 그 돈이 아까워서 글자수 제한을 하는 거죠. 돈을 그렇게 많이 벌어대는 은행이 말입니다.
특히 외국계랑 거래할 때는 영어 이름으로도 들어오는데, 상당히 많은 부분이 잘려나갑니다.;;
원장 데이터타입 때문에...
ALTER TABLE 입금내역테이블 MODIFY 입금자명 VARCHAR2(200);
이거 한 줄이면 될 듯한데 말이죠..
그렇게 했다가는 엄청난 오류가 발생할겁니다.
금융쪽은 연계된 시스템이 엄청 복잡해서 구조 하나 바꾸는게 쉽지가 않습니다.
게다가 이 모든 구조를 다 꽤차고 있는 사람도 없는 경우가 많아서 추적도 쉽지가 않구요.
곧 바뀌겠져 ㄷㄷㄷㄷ
득보다 실이 많으니...연계된 시스템 모~~~~두 바꿔야되고....... 모~~~두 테스트해야 되고...레거시 프로그램 모~~~~~두 뜯어 고쳐야하고요
국민은행 아직도 계정계는 메인프레임씁니다
mci는 뭐 공짜로되나요.
표준 전산 규격상
송금인 이름 입력란은 16바이트로 규정을 해서
법률이랑 전체 DB 컬럼을 변경해야 하죠.
DB컬럼의 글자수를 변경하는 건 별건 아니지만
쿼리문의 에러체크 등
예기지 못한 버그나 오류를 동반할 수 있겠죠...
송금인 이름에 이름 대신 16비트 UUID를 넣게 해서
프론트엔드상에서 이름 대신 UUID가 들어가 있으면 DB 체크해서 이름만 바꿔 주는게 더 싸게 먹힐것 같은데
이렇게 해도 적어도 백억 단위의 국가단위 사업 되겠네요.
그걸 파악하기 어렵기도 하고
그리고 전 은행이 모두 한꺼번에 바꿔야하는데....
그것도 쉽지 않아 보이구요
그리고 어떨땐 이름 길게적어도 다 나오고, 어떤땐 짤려나오고 대환장파티ㅋㅋ