Ibeepay 웹훅 (orderId, amount, status)을 시뮬레이션하여 CRM 콜백 전송을 테스트합니다.
Ibeepay 웹훅 시뮬레이션
📌 Ibeepay에서 보내는 웹훅을 시뮬레이션합니다. (orderId, amount, status만 전송)
📌 실제 Ibeepay 웹훅 엔드포인트를 호출하여 전체 플로우를 테스트합니다.
📌 플로우: Ibeepay 웹훅 → Supabase에서 custId 조회 → CRM 콜백 → N8N 웹훅
📌 CRM 콜백 시 merchant_id는 서버 설정값(acx.crm.merchant.id) 사용
📝 플로우 설명
1. Ibeepay 웹훅 수신 → POST /deposit/callback
→ orderId, amount, status 3개 필드만 수신
→ API Key 검증 (apikey 헤더)
2. Supabase 조회 및 업데이트
→ 기존 입금 정보 조회 (payerId, payerName, email, custId)
→ statusCode 업데이트
3. CRM 콜백 전송
→ merchant_id: 서버 설정값 (acx.crm.merchant.id)
→ userId: custId 우선, 없으면 payerId, 둘 다 없으면 orderId
→ status 변환: approved=1, failed/rejected/cancelled=-1, 기타=0
→ HMAC-SHA256 서명 생성 및 전송
4. N8N 웹훅 전송
→ sendCardDepositStatusUpdate()
→ status: "Success" 또는 "Failed"
5. 응답 반환 → {"result": "success"}