주요 콘텐츠로 건너뛰기

자동 결제 환불

Aghanim은 프로모션 만료, 플레이어 조건 미충족, 또는 기타 비즈니스 로직에 의해 게임 서버가 구매를 거부할 경우 자동 결제 환불을 지원합니다. 이 기능은 웹훅이 Aghanim에 수동적인 개입 없이 자동으로 환불을 처리하도록 지시하여, 플레이어 경험을 향상시키고 지원 부담을 줄입니다.

개요

플레이어가 아이템을 구매하려고 시도하지만 게임 서버에서 구매가 거부되어야 한다고 판단한 경우(예: 프로모션이 만료된 경우), item.add 웹훅declined 오류 코드를 사용하여 응답할 수 있습니다. 귀하의 팀이 Aghanim에서 자동 환불을 설정한 경우, 결제 금액은 자동으로 환불됩니다.

이를 통해 플레이어는 받을 수 없는 아이템에 대해 요금을 청구받는 일이 없어지고, 수동 환불 처리도 필요 없게 됩니다.

정보

자동 환불은 Aghanim 팀에 의해 구성되어야 합니다. code="declined"로 거부된 구매에 대한 자동 환불을 활성화하려면 통합 팀에 문의하세요.

작동 원리

  1. 플레이어 구매 시작 - 플레이어가 Game Hub를 통해 아이템을 구매하려고 합니다
  2. 결제 처리 - Aghanim은 결제 제공자를 통해 결제를 처리합니다
  3. 웹훅 전송 - Aghanim은 item.add 웹훅을 게임 서버로 전송합니다
  4. 게임 서버 검증 - 서버가 비즈니스 규칙(프로모션 유효성, 플레이어 적격성 등)을 확인합니다
  5. 구매 거부 - 구매를 거부해야 하는 경우 서버는 code="declined" 응답을 반환합니다
  6. 자동 환불 - 구성된 경우, Aghanim은 결제 제공자를 통해 자동으로 환불을 처리합니다

전제 조건

  • 구성된 item.add 웹훅 엔드포인트
  • 웹훅 요청을 처리할 수 있는 HTTPS 엔드포인트
  • 현재 프로모션 및 요구사항에 맞춰 구매를 검증하는 비즈니스 로직

구현

표준 성공 응답

성공적인 구매에 대해 200 상태 코드로 응답합니다:

{
"status": "ok"
}

구매 거부

구매를 거부하려면 400 상태 코드로 응답합니다:

{
"status": "error",
"code": "declined",
"message": "구매 거부됨: 프로모션이 만료되었습니다"
}

오류 응답 스키마

Key유형설명필수 여부
statusstring구매 거부 시 "error" 여야 합니다.
codestring오류의 원인을 나타내는 오류 코드입니다.
messagestring사람이 읽을 수 있는 오류 메시지.

사용 가능한 오류 코드

표준 오류 코드

  • not_found: 계정/플레이어를 찾을 수 없음니다
  • invalid_signature: 서명이 유효하지 않았습니다
  • validation_error: 요청 데이터가 유효하지 않았습니다
  • banned: 계정/플레이어가 차단되었습니다
  • declined: 요청이 비즈니스 규칙 또는 제한으로 인해 거부되었습니다
경고

자동 환불 기능이 Aghanim 팀에 의해 활성화된 경우에만 code="declined"가 자동 환불을 유발합니다. 다른 오류 코드는 환불을 유발하지 않습니다.

일반적인 거부 시나리오

만료된 프로모션

{
"status": "error",
"code": "declined",
"message": "구매 거부됨: 블랙 프라이데이 프로모션이 자정에 종료되었습니다"
}

플레이어 레벨 부족

{
"status": "error",
"code": "declined",
"message": "구매 거부됨: 플레이어는 레벨 10 이상이어야 합니다"
}

아이템 사용 불가

{
"status": "error",
"code": "declined",
"message": "구매 거부됨: 아이템을 더 이상 사용할 수 없습니다"
}

일일 구매 한도 초과

{
"status": "error",
"code": "declined",
"message": "구매 거부됨: 일일 구매 한도를 초과했습니다"
}

지역 제한

{
"status": "error",
"code": "declined",
"message": "구매 거부됨: 플레이어의 지역에서 사용할 수 없는 아이템"
}

도움이 필요하세요?
통합팀에 문의하십시오 integration@aghanim.com