카카오싱크 파머링크 발급 요청합니다. @jeremy.kim

@jeremy.kim

  1. 애플리케이션(앱) ID : XXXXXX
  2. 앱이름: @카카오채널
  3. redirect url : https://www.mycompany.co.kr/direct/kakao_sync.php
  4. 저희가 해당 redirect url 로 state 값을 여러개 받아야 합니다.
    • 링크를 많이 생성 할 수는 없겠고, query 값으로 QR스캔시에 넘겨받는 식이 될 것 같습니다.

** 자사의 정보는 변경했습니다.

@jsw
혹시 헷갈리실까 싶어, 어제 보내주신 메시지 쓰레드에도 관련 안내는 드렸습니다.
근데 지금 질문하신 내용을 보니 이미 다 이해하고 계시네요(단순 참고만해주세요~)

싱크 퍼머링크 생성했습니다.
https://pf-link.kakao.com/qr/_kxeBxcT/pages/_xlh

해당 링크 주소로 연결하니… redirect url이 https://www.mycompany.co.kr/direct/kakao_sync.php1 <- 뒤에 1이 붙어서 이동합니다. ㅠㅠ

@jsw 헙 번거롭게 해드려 죄송합니다.
지금 수정했습니다.

발급받은 파머링크가 다음과 같고 https://pf-link.kakao.com/qr/_kxeBxcT/pages/_xlh
해당 링크를 통해서는 redirect url 인 http://test.com/service.html 으로 이동한다면
어떤 방식으로 각각 다른 QR코드(가맹점코드)를 통해서 들어온 것을 알 수 있을까요?

파머링크의 ? Query 값을 통해서 코드값을 달리해서 넘길수는 없을까요/

예시로 store=1, store=2, store=3 으로 구분한다고 가정합니다.
(실제로는 code=234235235 이런 식으로 쓰시면 되겠지요)

생각하신 것이 맞습니다.
query= 뒤에 URL인코딩한 값을 넣으면 됩니다.
가령 store=1을 URL인코딩 시 store%3d1 이 되는데, 이를 퍼머링크 뒤에 붙이면
https://pf-link.kakao.com/qr/_kxeBxcT/pages/_xlh?query=store%3D1 이 됩니다.

위 링크를 QR코드로 인쇄하고, 사용자가 이를 스캔하면,
사용자는 카톡 인웹뷰로 http://test.com/service.html/?store=1 를 보게 되는 것이고요.

즉, 필요한 QR코드를 만드실 때 query= 에 가맹점코드를 붙여 QR코드를 생성하시면 됩니다.

https://pf-link.kakao.com/qr/_kxeBxcT/pages/_xlh?query={가맹점코드}
***{가맹점코드}**에는 URL인코딩한 값을 넣어야 합니다 (참고 https://www.url-encode-decode.com/ )
필요한 코드에 따라 달리 인쇄하시면 됩니다.

기본적인 정책은 아래를 참고해주세요. 방금 설명드린 것과 내용은 같습니다.

위 내용을 쓰고 보니 query 정책은 이미 다 이해하신 것 같아…
개인 메시지로 드렸던 부분을 이 쓰레드로 옮겨 옵니다.


@jsw
안내 차원에서 rest api 기준으로 설명 드리겠습니다.

사용자의 플로우를 나눠 보면

카카오싱크 퍼머링크 -> jsw님의 서비스 URL -> 카카오인증요청 -> 카카오의 코드응답 순입니다.

원하는 것처럼 어떤 매장의 QR코드인지 판별하려면, 서비스URL에서 카카오인증을 요청하실 때,
해당 매장의 값을 포함해서 요청하셔야 합니다.

사용자가 서비스 URL에 진입하면, 사용자를 아래 페이지로 리다이렉트하시는 것이, '카카오 인증요청’이 될텐데,

kauth.kakao.com/oauth/authorize?client_id={app_key}&redirect_uri={redirect_uri}&response_type=code?state={state}

위 중 redirect_uri에는 의도한 uri를 넣으면 되고, state에 어떤 QR코드인지를 넣으시면 되겠습니다.

카카오싱크 퍼머링크 뒤에 ?query= 파라미터를 붙이면,
각 사용자가 어떤 QR코드를 스캔했는지 파악할 수 있으실테고,
해당 QR코드의 버전을 state에 명시해서 카카오인증 요청을 해주시면 됩니다.

state의 활용

가령 state=“{qr=ver1,event=20y02m}” 을 넣고 싶으시면, “{qr=ver1,event=20y02m}”을 URL인코딩한 값인
%e2%80%9c%7bqr%3dver1%2cevent%3d20y02m%7d%e2%80%9d 를 넣어,
?state=%e2%80%9c%7bqr%3dver1%2cevent%3d20y02m%7d%e2%80%9d 를 카카오인증요청하실 때 붙이면 되겠습니다.
저는 인코딩은 https://www.url-encode-decode.com/ 에서 했습니다.

파머링크 발급 요처요청합니다 @jeremy.kim

비즈앱 : @clamicom
URL 1 : 카카오톡채널 - CLAMI
URL 1 : 클라미

개인메세지 확인 부탁드리겠습니다 ~