주문 처리

웹훅 설정

인게임 스토어를 완벽하게 운영하려면 웹훅을 설정해야 합니다.

웹훅 수신을 활성화하는 방법:

  1. 관리자 페이지에서 프로젝트를 엽니다.
  2. 사이드 메뉴에서 프로젝트 설정을 클릭하고 웹훅 솔루션 탭으로 이동합니다.
  3. 웹훅 서버 필드에서 https://example.com 형식으로 웹훅을 수신할 서버의 URL을 지정합니다. 웹훅 테스트용 도구에서 확인한 URL을 지정할 수도 있습니다.
  4. 프로젝트 웹훅에 서명하는 비밀 키는 기본값으로 생성됩니다. 새 비밀 키를 생성하려면 새로 고침 아이콘을 클릭합니다.
  5. 웹훅 사용을 클릭합니다.

PHP SDK
웹훅 처리용으로 준비된 클래스 사용.
알림
웹훅을 테스트하기 위해 webhook.site 같은 전용 웹사이트나 ngrok 같은 플랫폼을 선택할 수 있습니다.
다음 웹훅 처리를 구현합니다.
웹훅설명
사용자 유효성 검사사용자가 게임에 등록되어 있는지 확인하기 위해 결제를 처리하는 여러 단계에서 전송됩니다.
결제주문이 결제되면 전송되며 결제 데이터 및 거래 세부 정보가 포함됩니다.
주문 결제 성공결제 웹훅이 성공적으로 처리되었을 때 전송되었으며 여기에는 구매한 아이템 및 거래 ID에 대한 정보를 포함되어 있습니다. 사용자에게 아이템을 추가할 때 웹훅 데이터를 사용할 수 있습니다.
환불주문이 취소된 경우 전송되며 취소된 결제 세부 정보 및 거래 세부 정보가 포함되어 있습니다.
부분 환불주문이 부분적으로 취소된 경우 전송되며 취소된 결제 세부 정보 및 거래 세부 정보가 포함되어 있습니다.
주문 취소환불 웹훅이 성공적으로 처리되었을 때 전송되며, 구매 아이템에 대한 정보와 취소된 거래의 ID가 포함되어 있습니다. 웹훅의 데이터를 사용하여 구매한 아이템을 제거합니다.
알림
웹훅 설정 및 테스트에 대한 자세한 내용은 문서를 참조해 주세요.

웹훅 수신기

웹훅 수신기는 지정된 URL 주소에서 들어오는 웹훅을 수신하고 서명을 생성한 후 엑솔라 웹훅 서버로 응답을 전송할 수 있는 프로그램 코드입니다.

서명 생성

웹훅을 수신할 때는 데이터 전송의 보안을 보장해야 합니다. 이를 위해서는 웹훅 데이터에서 서명을 생성하고 생성된 서명이 HTTP 요청 헤더에 전송된 서명과 일치하는지 확인해야 합니다.

서명 생성 방법:

  1. 요청 본문과 프로젝트의 비밀 키의 JSON을 연결합니다.
  2. 첫 번째 단계에서 구한 문자열에 SHA-1 암호화 해시 함수를 적용합니다.

웹훅으로 응답 보내기

웹훅 수신을 확인하려면 서버가 다음을 반환해야 합니다.

  • 성공적인 응답의 경우 200, 201 또는 204 HTTP 코드
  • 지정된 사용자를 찾을 수 없거나 잘못된 서명이 전달된 경우 문제 설명이 포함된 400 HTTP 코드

서버에 일시적인 문제가 발생한 경우 웹훅 핸들러가 5xx 코드를 반환할 수도 있습니다.

주문 결제 성공주문 취소 웹훅에 대한 응답을 받지 못했거나 5xx 코드가 포함된 응답을 받은 경우, 다음 일정에 따라 웹훅이 다시 전송됩니다.

  • 5분 간격으로 2번
  • 15분 간격으로 7번
  • 60분 간격으로 10번

웹훅 전송은 처음 시도 후 12시간 이내에 최대 20번까지 시도할 수 있습니다.

결제 웹훅에 대한 응답이 수신되지 않았거나 5xx 코드가 포함된 응답이 수신된 경우 웹훅도 증가된 시간 간격으로 재전송됩니다. 12시간 동안 최대 12번 시도할 수 있습니다.

사용자 유효성 검사 웹훅에 대한 응답이 수신되지 않았거나 400 또는 5xx 코드가 포함된 응답이 수신된 경우 사용자 유효성 검사 웹훅이 재전송되지 않습니다.

이 경우 사용자에게 오류가 표시되며 결제주문 결제 성공 웹훅은 전송되지 않습니다.

알림
전체 웹훅 목록 및 메커니즘과 상세한 처리 예제는 웹훅 문서에 설명되어 있습니다.

사용자에게 구매 권한 부여

결제를 성공적으로 완료한 후 게임에서 사용자에게 구매 권한을 부여하도록 구현합니다. 결제 성공 및 주문 세부 정보에 대한 알림을 받으려면 다음 웹훅을 구성합니다.

진행률
의견을 보내 주셔서 감사드립니다!
마지막 업데이트: 2024년 3월 18일

오자 또는 기타 텍스트 오류를 찾으셨나요? 텍스트를 선택하고 컨트롤+엔터를 누르세요.

문제 보고
콘텐츠를 항상 검토합니다. 여러분의 피드백은 콘텐츠를 개선에 도움이 됩니다.
후속 조치를 위해 이메일을 제공해 주세요
의견을 보내 주셔서 감사드립니다!