환전 적정 타이밍 알림

목표 환율에 도달하면 환전 타이밍을 알려줍니다

난이도
보통
예상 시간 20~30분
조회 0
다운로드 0

자동화 흐름

🏭 환율 정보
Make.com 필터 + 가공
💬 카카오톡
+
Make.com

환전 적정 타이밍 알림 자동화

목표 환율을 설정해두면 2시간마다 현재 환율을 확인하고, 목표가 이하로 떨어졌을 때 카카오톡으로 "지금 환전하세요!" 알림을 보내는 레시피입니다. 스팸 방지를 위한 쿨다운 로직도 포함됩니다.

---

사전 준비

| 항목 | 설명 | |------|------| | 한국수출입은행 API 인증키 | 수출입은행 Open API에서 인증키 발급 | | 카카오 REST API 키 | Kakao Developers에서 앱 생성 및 키 발급 | | 카카오 나에게 보내기 동의 | 카카오 로그인 동의항목에서 "카카오톡 메시지 전송" 동의 | | Google Sheets | 쿨다운 상태 및 환율 이력 저장용 | | Make 계정 | 시나리오 구성 및 스케줄링 |

---

Step 1: 목표 환율 설정

Google Sheets에 목표 환율 관리 시트를 생성합니다.

| 통화 | 목표 매매기준율 | 알림 활성 | 마지막 알림 시각 | 쿨다운(시간) | |------|--------------|----------|----------------|-------------| | USD | 1,420.00 | TRUE | 2026-04-15 14:00 | 24 | | EUR | 1,550.00 | TRUE | | 24 | | JPY(100) | 950.00 | TRUE | | 24 |

Make 시나리오 시작 시 이 시트에서 목표값과 쿨다운 상태를 읽어옵니다.

Tip: 목표 환율은 최근 1개월 평균 환율보다 2-3% 낮게 설정하면 실질적인 환전 절약 효과를 볼 수 있습니다.

---

Step 2: 2시간 간격 환율 체크

HTTP 모듈로 현재 환율을 조회합니다.

GET https://www.koreaexim.go.kr/site/program/financial/exchangeJSON

| 파라미터 | 값 | 설명 | |----------|----|------| | authkey | {{EXIM_API_KEY}} | 수출입은행 인증키 | | searchdate | {{formatDate(now; "YYYYMMDD")}} | 오늘 날짜 | | data | AP01 | 환율 데이터 |

Make 스케줄 설정:

| 설정 항목 | 값 | |----------|-----| | 실행 주기 | 매 2시간 | | 실행 시간대 | 09:00 - 17:00 KST (영업시간) | | 실행 요일 | 월-금 |

Tip: 수출입은행 API는 하루 1,000회 호출 제한이 있습니다. 2시간 간격이면 하루 약 5회이므로 여유롭습니다. 1시간 이하로 줄이더라도 한도 내입니다.

---

Step 3: 목표가 도달 판정 로직

현재 환율과 목표 환율을 비교합니다.

현재환율 = parseNumber(replace(item.deal_bas_r; ","; ""))
목표환율 = targetRate  // Google Sheets에서 읽어온 값

조건: 현재환율 <= 목표환율

Make 필터 조건:

{{parseNumber(replace(item.deal_bas_r; ","; "")) <= targetRate}}

판정 결과 매핑:

| 상태 | 조건 | 액션 | |------|------|------| | 목표 도달 | 현재 <= 목표 | 쿨다운 체크 후 알림 발송 | | 근접 | 현재 <= 목표 x 1.01 | 선택적 사전 알림 | | 미도달 | 현재 > 목표 x 1.01 | 패스 (알림 안함) |

---

Step 4: 쿨다운(Cooldown) 로직

동일 통화에 대해 반복 알림을 방지합니다.

마지막알림시각 = lastAlertTime  // Google Sheets에서 조회
쿨다운시간 = cooldownHours     // 시트에 설정된 값 (기본 24시간)
경과시간 = dateDifference(now; lastAlertTime; "hours")

발송조건: 경과시간 >= 쿨다운시간 OR 마지막알림시각이 비어있음

Make 수식:

{{if(isEmpty(lastAlertTime); true; dateDifference(now; parseDate(lastAlertTime; "YYYY-MM-DD HH:mm"); "hours") >= cooldownHours)}}

쿨다운 플로우:

환율 체크 -> 목표 도달? -> 쿨다운 경과? -> 알림 발송 -> 시트에 시각 기록
    |              |             |
    +-- 미도달 --> 종료   +-- 쿨다운 중 --> 스킵

Tip: 쿨다운을 24시간으로 설정하면 하루 한 번만 알림을 받습니다. 급등락 시에는 6시간으로 줄여 더 자주 알림받을 수 있습니다.

---

Step 5: 카카오톡 알림 발송

카카오톡 나에게 보내기 API를 호출합니다.

POST https://kapi.kakao.com/v2/api/talk/memo/default/send

Headers:

Authorization: Bearer {{KAKAO_ACCESS_TOKEN}}
Content-Type: application/x-www-form-urlencoded

Body (template_object):

{
  "object_type": "feed",
  "content": {
    "title": "환전 타이밍 알림",
    "description": "USD 매매기준율이 목표가(1,420원) 이하로 하락했습니다!\n\n현재 환율: 1,418.50원\n목표 환율: 1,420.00원\n차이: -1.50원\n\n지금이 환전 적기입니다!",
    "link": { "web_url": "https://www.koreaexim.go.kr" }
  },
  "buttons": [
    {
      "title": "환율 확인하기",
      "link": { "web_url": "https://www.koreaexim.go.kr" }
    }
  ]
}

---

Step 6: 알림 발송 후 시트 업데이트

알림 발송 성공 시 Google Sheets의 "마지막 알림 시각"을 갱신합니다.

Google Sheets Update a Row 액션:

  • 시트: 목표환율 관리
  • 조건: 통화코드 일치
  • 업데이트 필드: 마지막 알림 시각 = {{formatDate(now; "YYYY-MM-DD HH:mm")}}
---

예상 결과

  • 목표 환율 이하로 떨어지면 즉시 카카오톡 알림 수신
  • 쿨다운 로직으로 하루 1회 이내 중복 알림 방지
  • 여러 통화 동시 모니터링 가능
  • Google Sheets에서 목표 환율을 쉽게 조정 가능
---

트러블슈팅

| 증상 | 원인 | 해결 방법 | |------|------|-----------| | 알림이 오지 않음 | 쿨다운 미경과 | Google Sheets에서 마지막 알림 시각 확인, 필요시 비우기 | | 영업시간 외 잘못된 데이터 | 주말/공휴일 환율 미갱신 | 응답 빈 배열 체크 후 스킵 처리 | | 카카오톡 401 오류 | Access Token 만료 | Refresh Token 자동 갱신 모듈 추가 | | 쉼표 숫자 비교 오류 | 문자열 비교 발생 | parseNumber(replace(...)) 로 숫자 변환 후 비교 | | 알림 폭탄 수신 | 쿨다운 로직 미작동 | Google Sheets 시트명과 범위가 정확한지 재확인 | | API 호출 한도 초과 | 인터벌 너무 짧음 | 최소 1시간 이상 간격 권장, 일 1,000회 한도 주의 |

📥

Make 블루프린트 다운로드

JSON 파일을 Make.com에 임포트하면 시나리오가 자동 생성됩니다

댓글 · 질문 (0)