# Stytch + Brew

Stytch에서 직접 발생한 Consumer 사용자 이벤트와 B2B 멤버 이벤트로 Brew 자동화를 트리거하세요. 조직 생성 이벤트에는 수신자가 없고, 대시보드나 SCIM에서 발생한 이벤트로는 자동화가 시작되지 않아요.

정식 URL: https://brew.new/ko/browse/integrations/stytch

- 방향: 데이터 가져오기
- 연결 방식: 웹훅 시크릿
- 인증 이벤트 트리거

## 사용 가능한 기능

- **이벤트 트리거**: Stytch에서 직접 발생한 Consumer 사용자 이벤트와 B2B 멤버 이벤트 중 수신자를 알 수 있는 이벤트로 Brew 자동화를 트리거해요. 조직 생성, 대시보드 이벤트, SCIM 이벤트로는 자동화가 시작되지 않아요.

## Stytch 이벤트를 유용한 이메일로 바꾸세요

Stytch를 연결하면 Consumer 사용자가 가입하거나 멤버가 B2B 조직에 참여할 때 브랜드에 맞는 이메일을 보낼 수 있어요. Brew는 Consumer와 B2B 제품 전반에서 Stytch 이벤트 유형 7개를 지원해요.

인증은 계속 Stytch가 담당해요. Brew는 이벤트를 수신하고, 그 뒤에 이어지는 이메일을 만들어 보내기만 해요.


## 만들 수 있는 것

- Consumer 웰컴 이메일: direct.user.create 이벤트는 Stytch Consumer 사용자가 생성되면 발생해요.
- B2B 팀 온보딩: direct.member.create 이벤트는 멤버가 조직에 참여하면 발생하며 role을 담고 있어요.
- 역할 변경 안내: direct.member.update 이벤트는 새 역할이나 이름처럼 멤버 레코드가 바뀌면 발생해요.
- 오프보딩 안내: direct.user.delete와 direct.member.delete 이벤트는 사용자나 멤버가 삭제되면 발생해요. Brew가 그 사용자나 멤버를 실제 이메일과 함께 이미 확인한 경우에만 처리돼요.
- 프로필 동기화: direct.user.update 이벤트는 Consumer 사용자 정보가 바뀌면 Brew 연락처를 최신 상태로 유지해요.

## 직접 발생한 이벤트만 자동화를 시작해요

Stytch는 이벤트마다 소스를 표시해요. Brew는 direct 소스에서 온 이벤트, 즉 API와 SDK를 호출해 발생한 이벤트를 처리해요. 대시보드 이벤트와 SCIM 이벤트는 지원하지 않는 이벤트로 기록되고 자동화를 시작하지 않으므로, 운영자가 Stytch 대시보드에서 바꾼 내용 때문에 고객에게 이메일이 가지는 않아요.

direct.organization.create 이벤트에는 수신자가 없어요. Brew는 이 이벤트를 수신자를 찾지 못한 것으로 기록하고 자동화를 시작하지 않아요. 사람에게 이메일을 보내려면 멤버 주소가 담긴 direct.member.create 이벤트를 사용하세요.

삭제 이벤트에는 ID만 담겨 있어요. Brew는 현재 연결에서 그 사용자나 멤버에 대해 앞서 확인한 이메일을 찾아요. 찾지 못하면 이벤트는 수신자를 찾지 못한 것으로 기록돼요.


## Brew에서 Stytch 설정하기

- ‘연동’을 열고 Stytch를 선택한 다음 ‘웹훅 URL 생성’을 누르세요.
- Stytch 프로젝트에 맞는 프로젝트 유형을 Consumer(B2C)와 B2B 중에서 선택하세요.
- Stytch 대시보드에서 Webhooks를 열고 Brew URL로 엔드포인트를 추가하세요.
- Consumer 프로젝트라면 direct.user.create, direct.user.update, direct.user.delete를 켜세요. B2B 프로젝트라면 direct.organization.create, direct.member.create, direct.member.update, direct.member.delete를 켜세요.
- whsec_ 접두사가 붙은 엔드포인트 서명 시크릿을 표시해 Brew에 붙여 넣고 ‘연결’을 누르세요. Brew는 들어오는 모든 웹훅을 Standard Webhooks(Svix) 사양에 따라 검증해요.
- Stytch에서 엔드포인트의 Testing 탭을 열고 direct.user.create나 direct.member.create 이벤트를 선택한 다음 Send Example 버튼을 누르세요. Brew의 상태가 ‘테스트 이벤트 대기 중’에서 ‘연결됨’으로 바뀌어요. 예시 이벤트는 웹훅을 확인할 뿐이에요. Brew는 연락처를 추가하지 않고 자동화도 시작하지 않아요.
- ‘연결’을 누르면 이벤트 7개 모두에 대한 트리거가 만들어져요. 이벤트별로 켜고 끄는 스위치는 없어요.
- 자동화를 만들고 Stytch 이벤트를 선택한 다음, 아직 초안일 때 테스트를 보내 보세요. 일치하는 이벤트가 도착하면 활성 상태인 자동화만 실행돼요.

## 지원되는 Stytch 이벤트

direct.user.create, direct.user.update, direct.user.delete 이벤트는 Consumer 프로젝트에서 발생해요. 조직 이벤트와 멤버 이벤트는 B2B 프로젝트에서 발생해요.

Brew는 다음 이벤트 유형 7개를 지원해요:

- direct.user.create
- direct.user.update
- direct.user.delete
- direct.organization.create
- direct.member.create
- direct.member.update
- direct.member.delete

## 연락처 동기화와 개인화

실제 이메일 주소가 담긴 검증된 이벤트는 자동화에서 쓰이는지와 관계없이, 이메일 주소를 기준으로 Brew 연락처를 만들거나 업데이트해요. 데이터가 있으면 Brew가 이름과 성, stytch_project를 설정해요.

Consumer 이벤트는 stytch_user_id를 설정해요. 멤버 이벤트는 stytch_member_id, stytch_organization_id, stytch_org_role을 설정해요. 삭제 이벤트는 stytch_account_status를 deleted로 설정해요. Brew는 연락처를 삭제하지 않아요.

개인화 태그에는 선택한 이벤트에 선언된 페이로드 스키마를 사용하세요. 모든 이벤트에는 값이 있는 경우 email, firstName, lastName, createdAt이 포함돼요. 멤버 이벤트에는 role이, direct.organization.create 이벤트에는 organizationName과 organizationSlug가 추가돼요. createdAt은 초 단위 Unix 타임스탬프예요.

Stytch 사용자, 멤버, 조직 ID는 개인화 태그로 쓸 수 없어요. 대신 연락처에 stytch_* 필드로 저장돼요.

Stytch 계정만으로는 마케팅 이메일 수신 동의가 성립하지 않아요. 가입할 때 수신 동의를 기록하고, 프로모션 이메일을 보내기 전에 확인하세요.


## Brew가 Stytch의 인증 메시지를 대체하나요?

아니요. Stytch 자체 인증 메시지는 그대로예요. Brew는 Stytch가 사용자나 멤버를 생성, 업데이트, 삭제한 뒤에, 여기 나열된 웹훅 이벤트로 자동화를 시작해요.


## 이벤트는 들어왔는데 이메일이 발송되지 않는 이유는 뭔가요?

이벤트 수신과 이메일 발송은 별개의 단계예요. 일치하는 자동화가 활성 상태인지 확인한 다음, 필터와 실행 기록, 수신자가 발송 대상인지, 발신 도메인을 확인하세요. Send Example로 보낸 이벤트, 대시보드 이벤트와 SCIM 이벤트, 수신자를 알 수 없는 이벤트는 자동화를 시작하지 않아요.


## 제한 사항 및 문제 해결

- Brew는 Stytch 사용자, 멤버, 조직을 만들거나 변경할 수 없어요.
- Stytch에서 모든 전송이 401로 표시되면 Brew의 서명 시크릿이 엔드포인트 시크릿과 일치하지 않는 거예요. 현재 시크릿을 표시해 다시 연결하세요. 시크릿은 whsec_ 접두사가 붙어 있고 24자 이상이어야 해요.
- 각 이메일의 수신 동의와 목적을 검토하세요. Stytch 사용자를 동기화했다고 해서 프로모션 이메일을 보내도 되는 건 아니에요.

## 출처 및 설정 가이드

- [Stytch 설정 가이드](https://docs.brew.new/integrations/import/stytch)
- [자동화 만들기](https://docs.brew.new/create-emails/build-an-automation)
- [개인화 태그](https://docs.brew.new/create-emails/merge-tags)
- [Brew로 보낼 수 있는 이메일](https://docs.brew.new/get-started/what-you-can-send)
- [Stytch 웹훅](https://stytch.com/docs/resources/workspace-management/webhooks)

## 관련 링크

- [전체 연동](https://brew.new/ko/browse/integrations.md)
- [회원가입](https://brew.new/ko/sign-up.md)
- 웹사이트: https://brew.new
