Skip to content

sms 파싱

YoungWoo Yoon edited this page Dec 8, 2020 · 1 revision

12/08 전체 가계부팀 MMS회의 (모든 조가 참여하였습니다.)

1. 사용자화가 가능한 카테고리, 결제수단을 어떻게 매핑해줄 것인지?

  • MMS에서 온 거래내역은 "미분류"로 묶는게 현실적이다!

2. 공통 요구 정보

  • 카드사 <- 결제수단 ( 특정 카드사를 대상으로 파싱 )

    • 대부분 처음에 나오는것 같다.
    • 특정 단어가 여러개 나온다면 첫 번째 나온 것을 파싱(롯데카드, 롯데마트)
  • 금액 ( 뒤에 "원" 이 붙은 가장 처음 나온 단어를 기준으로 파싱)

  • 날짜,시간

  • 입금 | 출금 여부 정보 축출(이체)

  • 결제 "취소" | "승인" | "거절" 같은 예외 케이스를 분류

    • 특별한 키워드 x => 승인
function smsParser(input) {
    const tokens = string.replace(/\[web발신\]/i,'').trim().split(/[\s\n\r]/g)| 정규식 -> 👏👏👏

    let paymentList = ['신한','KB','농협','BC','현대','우리'];

    tokens.forEach((el) => {
        숫자+'원' -> 금액 (,도 포함됩니다)
        숫자/숫자 -> 날짜
        숫자:숫자 -> 시간
        초반부의 문자에서 찾기 -> 카드사(uppercase)
        결제 여부 -> 승인(default),취소,거절
    });
}

3. 카드 문자 샘플

KG 이니시스

[WEB발신]
[kg이니시스]
464,000원 익월
합산요금청구

KB 국민카드

[WEB발신]
KB국민카드 김영근님 06/07
09:22 5000원
결제 승인

농협 카드

[Web발신]
NH카드7*9*승인
박*용
12,350원 체크
12/06 20:37
세븐일레븐 고대안암고 
잔액222,210원

현대 카드

현대 ZERO 승인
2,500원 일시불
04/10 13:15
코레일유통서울지사
누적 560,852원
0.7%할인

롯데 카드

롯데3121 승인
5,200원 일시불
09/15 18:31
월드크리닝 롯데마트

신한체크

[Web발신]
[신한체크승인] 최*희(7062) 
02/10 13:10 
(금액)1,000원 PAYCO

우리카드

[Web발신]
우리(4575)승인
임*봉님
4562원 일시불
12/07 20:29
네이버페이
누적123,456원

우리체크

[Web발신]
우리(8804) 체크승인
윤*우님
10,000원
11/03 10:03
스타벅스코리아

국민체크

[Web발신]
KB국민체크
윤*우님
06/08 08:57
28,440원
11PAY 인증
승인취소

4. 입금/출금 문자 예시

신한은행 출금

[Web발신]
[신한은행] 09/26
21:31:30.27
[110-***-123456]
지급 20,000원
(최창희)

농협 입금

[Web발신]
농협 입금 200원
06/11 22:29 123-1234-4567-12
잔액 200000원

농협 출금

농협 출금 5000원
08/31 19:01 123-1234-1234-12
잔액 200000원
Clone this wiki locally