구축사례

휴대형 결제 단말

카드 결제를 받는 가맹점 매장. 서버도 사무실 PC 프로그램도 없이 영수증 프린터와 카메라가 내장된 안드로이드 결제 단말 한 대만 놓이고, 승인은 단말에 설치된 VAN 결제 앱과 간편결제 서비스 두 갈래로 나갑니다.

서버 없는 단독 단말

단말 한 대가 승인부터 집계까지 맡습니다

결제 단말을 매장에 놓는 일에 서버와 회선, 계정 관리가 함께 따라오면 매장 한 곳을 여는 비용이 단말 값보다 커집니다.

서버도 로그인도 두지 않고 안드로이드 앱 한 벌로 만들었습니다. 거래내역과 TID, 품목 단가, 영수증 설정은 단말 안 데이터베이스에 두고, 앱을 켜면 곧바로 메인 화면입니다. 메인 한 화면에 카드 결제와 현금 결제, 조회/집계·메뉴등록·프린터·설정을 모아 두고 그 아래로는 한 단계만 두어, 어느 화면에서 뒤로가기를 눌러도 메인으로 돌아옵니다.

매장에 놓는 것은 단말 한 대뿐이고, 관리할 서버와 계정이 남지 않습니다.

결제수단별 승인 경로 분기

결제 수단을 고르면 그 수단에 맞는 승인 경로로 나갑니다

가맹점 한 곳에도 신용카드와 지역화폐, 간편결제가 섞여 들어옵니다. 수단마다 승인처가 다르면 계산대에 단말이 여러 대 놓입니다.

결제 수단을 신용카드·삼성월렛/페이·Apple Pay·지역화폐·간편결제 다섯 가지로 두고, 고른 수단에 맞는 TID 종류로 승인 경로가 갈립니다. 앞의 네 가지는 VAN/PG결제용 TID 로 단말에 설치된 VAN 결제 앱을 호출해 승인을 받습니다. 카드 리딩과 승인망 접속은 그 앱이 맡고, 이 경로의 승인 요청에는 결제 금액에서 계산한 부가세를 함께 실어 보냅니다. 간편결제는 간편결제용 TID 로 단말이 결제 서비스에 직접 연결해, 손님이 내민 바코드를 단말 카메라로 읽어 승인을 요청합니다. 서비스가 PIN 입력을 요구하면 10초 간격으로 세 번까지 결과를 다시 확인하고, 5만원 미만 금액에는 할부를 막습니다.

TID 는 설정 화면에서 종류를 골라 등록합니다. 같은 종류가 여러 개면 어느 것으로 받을지 고르고, 등록된 TID 가 없으면 결제 화면으로 들어가지 않습니다.

TID별 품목 단가 등록

금액을 누르는 대신 품목을 고릅니다

금액을 매번 숫자로 눌러 넣으면 자리 하나가 어긋나도 그대로 승인됩니다. 같은 품목을 하루에 수십 번 받는 매장이라면 더 그렇습니다.

TID 마다 품목과 단가를 등록해 두고, 결제 화면에서 품목을 고르면 수량을 곱해 더한 금액이 결제 금액에 그대로 채워집니다. 품목을 고른 뒤에는 숫자패드와 빠른 금액 버튼이 잠겨 합계가 손으로 바뀌지 않습니다. 고른 품목은 거래에 함께 저장되어 거래 상세에서 품목명과 수량, 금액으로 다시 보입니다.

받은 금액이 무엇을 팔아 생긴 것인지 거래마다 남습니다.

현금영수증 즉시 발행

현금을 받은 자리에서 현금영수증을 발행합니다

현금 결제는 영수증 요청이 뒤늦게 들어오고, 발행 단말이 따로 있으면 손님을 세워 둔 채 그쪽으로 옮겨 가야 합니다.

메인의 현금 결제하기는 VAN/PG결제용 TID 로 들어갑니다. 발행 구분을 전화번호와 사업자번호 중에 고르고 식별번호를 열세 자리까지 받아, 금액과 함께 VAN 결제 앱으로 넘겨 국세청 승인을 받습니다. 금액이나 식별번호가 비어 있으면 승인 요청을 보내지 않고 그 자리에서 알립니다. 발행된 영수증에는 국세청 문의처가 함께 인쇄됩니다.

현금 거래도 카드와 같은 목록에 남아 취소와 집계에 함께 잡힙니다.

망취소 실패 수동취소

승인 뒤 망취소가 실패한 거래를 남겨 둡니다

카드 승인 도중 통신이 끊기면 승인은 카드사에 접수되고 단말에는 실패로 끝나는 경우가 생깁니다. 이 거래는 단말 어디에도 남지 않아 카드사 매출에만 남습니다.

승인 앱이 돌려준 응답 코드를 실패 사유별로 분류했습니다. 다시 거래하면 되는 실패와 카드 리더 오류, 손님이 중단한 건은 안내만 합니다. 승인 뒤 망취소까지 실패한 건은 다르게 다뤄, 실패 상태 그대로 거래내역에 저장하고 조회/취소 화면으로 가는 버튼을 안내와 함께 띄웁니다.

그 자리에서 취소를 끝내게 되어, 담당자가 기억해 두었다가 나중에 찾는 거래가 없습니다.

원거래 참조 전액취소

취소는 원거래를 지우지 않고 반대 거래로 쌓입니다

취소를 원거래에 덮어쓰면 무엇이 언제 취소됐는지가 사라집니다. 승인 건수와 취소 건수를 따로 세어야 하는 자리에서는 그 기록이 필요합니다.

조회/취소 화면에서 당일·전일·일주일·한달 기간과 TID 로 거래를 좁히고, 승인번호나 카드번호로 바로 찾습니다. 거래를 열어 결제 취소를 누르면 원거래의 승인일자와 승인번호를 실어 취소 승인을 받고, 그 결과를 새 거래로 한 건 더 쌓습니다. 원거래는 그대로 남습니다. 부분 취소는 두지 않아 취소는 전액이고, 결제 서비스가 직접 처리하는 간편결제 건은 취소 버튼이 나타나지 않습니다.

취소가 나가도 승인 기록이 남아, 뒤에 세는 건수와 금액이 어긋나지 않습니다.

구매자·판매자용 영수증 출력

영수증은 매장이 정한 방식대로 나옵니다

매장마다 영수증을 몇 장 뽑을지가 다릅니다. 손님에게만 주는 곳이 있고 보관용을 함께 남기는 곳이 있습니다.

영수증 설정에 미출력, 일반영수증 1매, 일반영수증 2매, 구매자용 1매와 판매자용 1매 네 가지를 두고, 승인이 나면 그 설정대로 단말 내장 프린터로 바로 인쇄합니다. 영수증번호는 단말이 출력할 때마다 이어 붙이고 날짜가 바뀌면 1번부터 다시 채웁니다. 영수증을 다시 요청받으면 결제 성공 화면과 거래 상세 양쪽에서 출력 유형을 그때 골라 재인쇄합니다.

영수증 한 장을 더 뽑으려고 거래를 다시 찾아 들어갈 일이 없습니다.

단말 내 거래 집계

마감할 때 보는 숫자를 단말이 직접 셉니다

하루에 얼마를 받았는지 확인하려고 영수증 뭉치를 세거나 카드사 화면을 따로 여는 매장이 많습니다.

집계내역 화면에 당일·전일·일주일·한달 기간과 TID 선택을 두고, 그 단말에 쌓인 거래로 승인 건수와 금액, 취소 건수와 금액, 합계를 그 자리에서 계산합니다. 합계금액은 승인금액에서 취소금액을 뺀 값입니다. 출력을 누르면 같은 내용이 내장 프린터로 나옵니다.

단말을 켜 둔 자리에서 그날 받은 금액이 바로 확인됩니다.

비슷한 현장이라면

어디까지 같고 무엇이 다른지 그 자리에서 이야기합니다. 현장 방문과 상담에는 비용이 없습니다.