이번 실습에서는 IBK 기업은행의 Open API를 활용하여 특정 조건(예: 입금액 100만 원 이상)이 충족되면 Slack으로 알림을 전송하는 시스템을 구축합니다. 또한, 추가 실습으로 입출금 내역을 Google 스프레드시트에 자동으로 저장하는 방법도 다룹니다.
사용 도구: IBK 기업은행 Open API, Zapier, Slack, Google Sheets
-
IBK Open API 플랫폼 가입 및 앱 등록:
- IBK Open API 플랫폼에 접속하여 회원가입을 진행합니다.
- 로그인 후, 개발자 콘솔에서 새로운 애플리케이션을 등록합니다. 이 과정에서 API 키와 시크릿 키를 발급받게 됩니다.
-
API 사용 신청:
- 계좌 거래내역 조회와 같은 필요한 API에 대한 사용 신청을 합니다.
- 승인 후, 해당 API의 엔드포인트와 요청 형식을 확인합니다.
-
Zapier 계정 생성 및 Slack 연동:
- Zapier에 가입하고 로그인합니다.
- 새로운 Zap을 생성하고, Slack을 연동하여 메시지를 보낼 채널을 설정합니다.
-
Webhook 설정:
- Zapier에서 Webhooks by Zapier 앱을 선택하여 Catch Hook을 트리거로 설정합니다.
- Webhook URL이 생성되면 이를 복사해둡니다.
-
정기적인 거래내역 조회:
- 서버나 클라우드 플랫폼에서 주기적으로(예: 매시간) IBK Open API를 호출하여 계좌의 거래내역을 조회하는 스크립트를 작성합니다.
- 이 스크립트는 이전에 저장된 마지막 거래 시점 이후의 새로운 거래를 확인합니다.
-
조건 검토 및 Webhook 호출:
- 조회된 거래내역 중 입금액이 100만 원 이상인 거래를 필터링합니다.
- 해당 거래가 발견되면, 앞서 복사한 Zapier의 Webhook URL로 HTTP POST 요청을 보내어 Slack 알림을 트리거합니다.
- Zapier에서 Slack 액션 설정:
- Webhook로부터 데이터를 수신하면, Slack의 특정 채널로 알림 메시지를 전송하도록 Zapier에서 액션을 설정합니다.
- 메시지에는 거래 금액, 송금인 정보 등 필요한 세부 정보를 포함시킵니다.
-
Google Sheets 준비:
- Google Drive에서 새로운 스프레드시트를 생성하고, 필요한 헤더(예: 날짜, 거래 유형, 금액, 잔액, 비고)를 추가합니다.
-
Zapier에서 Google Sheets 연동:
- Zapier에서 새로운 Zap을 생성하고, 트리거를 앞서 설정한 Webhook으로 지정합니다.
- 액션으로 Google Sheets를 선택하고, 앞서 생성한 스프레드시트와 시트를 지정합니다.
- 수신된 거래 데이터를 해당 시트의 새로운 행으로 추가하도록 설정합니다.
- 보안: API 키와 시크릿 키는 안전하게 보관해야 하며, 외부에 노출되지 않도록 주의해야 합니다.
- API 사용 한도: IBK Open API의 호출 한도와 사용 요금을 사전에 확인하고, 초과 사용으로 인한 문제가 발생하지 않도록 관리해야 합니다.
- 개인정보 보호: 거래내역에는 민감한 정보가 포함될 수 있으므로, 이를 처리하고 저장할 때 개인정보 보호법을 준수해야 합니다.
이러한 시스템을 구축하면, 기업은행 계좌의 중요한 거래 발생 시 실시간으로 Slack을 통해 알림을 받고, 모든 거래내역을 Google 스프레드시트에 자동으로 기록하여 효율적인 자금 관리를 할 수 있습니다.