결제가 취소되면 엑솔라는 refund
유형이 포함된 웹훅의 취소된 거래에 대한 세부 정보를 웹훅 URL로 전송합니다. 환불 절차에 대한
자세한 내용은 지침을 참조해 주세요.
5xx
코드가 포함된 응답을 수신하면 엑솔라는 수신자가 수신을 확인할 때까지 시간 간격을 늘려가며 웹훅을 재전송합니다. 최대 재시도 횟수는
12회입니다.
알림
엑솔라가 환불을 시작하고 웹훅에 대해 5xx
코드가 포함된 응답을 수신하더라도 결제 금액은 환불됩니다.
웹훅에서 자세한 정보를 수신하는 권한을 부여할 수 있습니다. 이렇게 하려면 관리자 페이지의 프로젝트 설정 > 웹훅 > 고급 설정에서 다음 토글을 온으로 설정합니다.
토글 | 설명 |
---|---|
저장된 결제 방식을 사용한 거래에 대한 정보 표시 | 정보는 웹훅의 다음 사용자 정의 매개 변수에서 전달됩니다.
|
환불 코드:
코드 | 환불 이유 | 설명 |
---|---|---|
1 | 사용자 요청/게임 요청에 의한 취소 | 관리자 페이지에서 취소가 요청된 경우 사용됩니다. |
2 | Chargeback | 거래 지불 거절 요청되었습니다. |
3 | 연동 오류 | 엑솔라와 게임 사이의 연동에 문제가 있을 경우 사용됩니다. 권장 사항: 사용자를 차단 목록에 추가하지 마세요. |
4 | Potential fraud | 부정 결제가 의심됩니다. 권장사항: 사용자를 차단 목록에 추가하세요. |
5 | 테스트 결제 | 테스트 트랜잭션인 경우 사용되며 이후 취소로 이어집니다. 권장 사항: 사용자를 차단 목록에 추가하지 마세요. |
6 | User invoice expired | 후불 결제 방식에 의해 트랜잭션이 이뤄진 경우 사용됩니다. |
7 | PS에서 전송된 사기 알림 | 결제 시스템에서 결제가 거부되었습니다. PS에서 잠재적 사기를 감지했습니다. 권장 사항: 사용자를 차단 목록에 추가하세요. |
8 | Cancellation by the PS request | 결제시스템이 취소를 요청한 경우 사용됩니다. 권장사항: 사용자를 차단 목록에 추가하지 마세요. |
9 | 사용자 요청에 의한 취소 | 사용자의 요청에 의한 환불 사유입니다. 어떤 이유로 사용자가 게임 또는 구매에 만족하지 못한 못하였음을 의미합니다. 권장 사항: 사용자를 차단 목록에 추가하지 마세요. |
10 | 게임 요청에 의한 취소 | 게임을 통해 취소를 요청한 경우 사용됩니다. 권장 사항: 사용자를 차단 목록에 추가하지 마세요. |
11 | Account holder called to report fraud | 계정 소유자가 본인 미사용 결제로 신고한 경우입니다. |
12 | Friendly fraud | 우호적인 부정결제에 대한 메시지를 수신했을 때 사용됩니다. |
13 | Duplicate | 동일 인보이스에 대하여 거래 복제. |
notification_type required | string 알림 유형. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
required | object 트랜잭션 데이터 관련 값입니다. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
required | object 결제 내역 관련 값입니다. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
custom_parameters | object 사용자 정의 매개 변수입니다. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
object 구매 데이터 관련 값입니다. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
object 환불 세부 정보(오브젝트). | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
object 사용자 정의 프로젝트 설정(개체)입니다. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
object 사용자 세부 사항(개체)입니다. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
성공적인 처리 표시를 반환합니다.
제공된 정보에 오류가 있는 경우 반환합니다(예: 필수 매개변수 누락, 인증 실패 등).
서버에 일시적인 오류가 있음을 표시하려면 돌아가세요.
curl -v 'https://your.hostname/your/uri' \ -X POST \ -d '{ "notification_type": "refund", "settings": { "project_id": 18404, "merchant_id": 2340 }, "purchase": { "subscription": { "plan_id": "b5dac9c8", "subscription_id": "10", "date_create": "2014-09-22T19:25:25+04:00", "currency": "USD", "amount": 9.99 }, "checkout": { "currency": "USD", "amount": 50 }, "total":{ "currency": "USD", "amount": 200 } }, "user": { "ip": "127.0.0.1", "phone": "18777976552", "email": "email@example.com", "id": "1234567", "name": "John Smith", "country": "US" }, "transaction": { "id": 1, "external_id": 1, "dry_run": 1, "agreement": 1 }, "refund_details": { "code": 4, "reason": "Potential fraud" }, "payment_details": { "sales_tax": { "currency": "USD", "amount": 0 }, "direct_wht": { "currency": "USD", "amount": 0.70 }, "xsolla_fee": { "currency": "USD", "amount": "10" }, "payout": { "currency": "USD", "amount": "200" }, "payment_method_fee": { "currency": "USD", "amount": "20" }, "payment": { "currency": "USD", "amount": "230" }, "repatriation_commission": { "currency": "USD", "amount": 10 } } } }'
{- "error": {
- "code": "INCORRECT_AMOUNT",
- "message": "Incorrect amount"
}
}