기술 포스트
결제 단말기 통합을 위한 도구: Parsomatic
결제 주변 장치를 POS 앱(또는 기타 결제 앱)에 통합하는 작업은 최선의 상황에서도 쉽지 않을 수 있습니다. 충실한 문서가 있으면 도움이 되고, 좋은 도구가 있으면 더욱 수월해집니다.
ID TECH는 통합 작업을 보다 쉽게 진행할 수 있도록 다양한 무료 도구를 제공합니다. 가장 인기 있는 도구 중 하나인 Parsomatic은 이 사이트에서 바로 이용하실 수 있습니다(바로 가기 여기). 고객뿐만 아니라 ID TECH 내부 지원 팀에서도 즐겨 사용하는 또 다른 도구로는 암호화/복호화 도구(Encrypt/Decrypt Tool)가 있습니다(바로 가기 여기). 또한 현재 생산 중인(일부 구형 포함) ID TECH Products와 호환되는 Windows 기반(.NET) 유틸리티인 UDemo(또는 Universal SDK Demo)도 제공하고 있습니다. 이 도구는 다양한 데모 및 유틸리티와 함께 다운로드 페이지에서 받으실 수 있습니다.
통합 작업을 막 시작했거나 EMV가 처음이신 분 중에서, 태그 조회 기능과 임의의 TLV 데이터 블록 파싱 기능이 모두 필요하다면 Parsomatic을 살펴보시기 바랍니다.
Parsomatic 은 ID TECH의 가장 인기 있는 도구 중 하나입니다. 외부 종속성이나 서버 로직 없이 독립적으로 동작하는 HTML 페이지로, 온라인 및 오프라인 환경에서 모든 플랫폼의 웹 브라우저를 통해 사용할 수 있습니다. 일반적으로 다음 세 가지 상황에서 활용됩니다.
- 특정 EMV 태그의 기능이 궁금하다면, 페이지 상단의 작은 태그 조회 텍스트 입력 필드를 이용해 빠르게 검색할 수 있습니다. 위의 스크린샷에서는 '5F20'을 입력했으며, 이는 카드 소지자 이름(Cardholder Name)에 해당합니다. 이는 EMVCo에서 정의한 표준 업계 태그입니다. Parsomatic을 통해 100개 이상의 ID TECH 전용 태그도 조회할 수 있습니다.
- TLV(태그-길이-값) 데이터가 포함된 16진수 데이터 블록이 있는 경우, 해당 데이터를 메인 텍스트 영역에 붙여넣고 위 화면과 같이 "TLVs only" 체크박스를 선택한 후 Parse 버튼을 클릭하면 됩니다. Parsomatic은 재귀 하강 파서(recursive descent parser)를 탑재하고 있어 중첩된 TLV를 포함한 모든 TLV를 파싱하고, 그 결과를 두 가지 방식으로 표시합니다(아래 참조).
- ID TECH 장치에서 거래(마그네틱 선, 접촉식 EMV, 비접촉식 중 하나)를 실행하면, 장치는 프로토콜 래퍼(protocol wrapper)로 감싸진 상당한 양의 데이터를 출력합니다. Parsomatic은 이 데이터를 파싱하여 각 바이트의 의미를 명확히 파악할 수 있도록 그래픽 방식으로 표시해 줍니다.
데이터 파싱이 완료되면 Parsomatic은 두 가지 방식으로 결과를 표시합니다. 첫 번째 섹션에는 색상으로 구분된 텍스트로 여러 줄의 16진수 데이터가 표시됩니다. TLV 태그는 파란색, 길이 값은 주황색, 데이터는 검은색으로 나타나며, 파싱되지 않은 항목은 빨간색으로 표시됩니다. 색상으로 표시된 항목 위에 마우스를 올리면 해당 항목에 대한 설명이 CSS 스타일의 툴팁으로 나타납니다. 위의 스크린샷에서는 커서가 TLV 태그인 5F2A 위에 위치해 있으며, 툴팁에는 이 태그가 거래 통화 코드(Transaction Currency Code)임을 보여줍니다. (위에 표시된 데이터에서 코드 값은 0840으로, 이는 미국 달러를 나타냅니다.)
Parsomatic의 두 번째 데이터 표시 방식은 대형 테이블 형태입니다:
텍스트는 (마찬가지로) 색상으로 구분되어 있으며, 태그 이름은 파란색, 길이 값은 주황색 등으로 표시됩니다.
창에 거래 데이터를 붙여넣었을 때, 해당 데이터가 EMV(태그) 데이터이고 Tag 95를 포함하고 있다면, Tag 95의 모든 비트 플래그가 페이지 하단에 표시됩니다:
Tag 95에는 5바이트의 데이터가 포함되어 있으며, 위 예시에서는 처음 3바이트만 표시되어 있습니다.
칩 카드 거래에서 Tag 95는 거래 승인 또는 거절 여부를 판단하는 데 중요한 역할을 합니다. 거절이 발생할 수 있는 몇 가지 이유가 화면 캡처에 나타나 있습니다. 이 예시에서는 3번째 바이트의 최상위 비트가 활성화되어 "카드 소지자 인증에 실패"했음을 나타내고, 5번째 비트도 활성화되어 "PIN 입력이 필요하지만 PIN 패드가 없거나 작동하지 않음"을 의미합니다. Parsomatic은 활성화된 비트를 자동으로 노란색으로 강조 표시하므로, 현재 상태를 한눈에 파악할 수 있습니다.
Parsomatic의 로직은 순수 JavaScript로 구현되어 있으며, 모든 코드가 HTML 파일 안에 포함되어 있어 어떤 편집기로도 소스 코드를 쉽게 확인할 수 있습니다. 코드의 파서는 오류 허용(failsoft) 방식으로 설계되어 있어, 해석할 수 없는 바이트가 있더라도 예외 처리로 파싱이 중단되는 대신 해당 부분을 무시하고 빨간색으로 화면에 표시합니다. 파서는 알 수 없는 바이트를 건너뛰고 파싱을 계속 진행하려 시도합니다. 일부 데이터가 올바르게 파싱되지 않더라도 나머지 나머지 데이터의 의미를 확인하고 싶을 수 있기 때문입니다.
Parsomatic은 ID TECH Products를 처음 사용하거나 EMV 결제 앱 개발을 시작하는 분들에게 훌륭한 학습 도구입니다. 또한 문제 해결에도 유용하게 활용할 수 있습니다. (게다가 무료입니다! 마다할 이유가 없겠죠?)
결제 기술에 관해 궁금한 점이 있으신가요? 전문가에게 문의하세요: 1-800-984-1010으로 언제든지 전화하실 수 있습니다.
