Xsolla-logoXsolla Developers
또는
관리자 페이지로

Declined paymentWebhook POST

If a transaction is declined by a payment system, Xsolla sends the transaction details in a webhook of the ps_declined type to your configured webhook URL. The webhook is sent during the authorization or payment processing stage. In this case, the payment\ order_paid webhook is not sent.

Typical reasons for payment system declines:

  • Card authorization failed (for example, the payment system could not complete the authorization process due to a technical error or no response from the bank) or was declined (for example, the bank responded but refused the transaction due to insufficient funds or invalid card details).
  • 3-D Secure verification failed, was not completed, or the user confirmation timed out.
  • The processor or acquiring bank is temporarily unavailable or returns a hard decline due to an irreversible error, such as a closed account or an invalid card number. Retrying without addressing the underlying issue will not result in a successful transaction.

Should not be confused with:

  • Anti-fraud rejections, which are reported via the afs_reject webhook.
  • Refunds and partial refunds after a successful payment, which are reported via the refund and partial_refund webhooks.

Note

To receive the ps_declined webhook, contact your Customer Success Manager or email csm@xsolla.com.

Request
Request Body schema: application/json
notification_type
required
string

알림 유형.

required
object

Transaction details (object).

dry_run
integer

Test transaction. The parameter has the 1 value if it is a test transaction, or is not sent if the transaction is real.

external_id
string

트랜잭션 외부 ID 입니다.

id
integer

트랜잭션 ID.

payment_method
integer

Payment method ID.

object

환불 세부 정보(오브젝트).

author
string

환불 시작자. 필드 값이 다음 표에 따라 전달됩니다.

환불 시작자 필드 값
게임(API를 통해). API
게시자 계정 사용자(자동 환불). 사용자 이메일
게시자 계정 사용자(엑솔라 고객 지원의 도움을 받아). support@xsolla.com
엑솔라(엑솔라 고객 지원의 도움을 받아). support@xsolla.com
code
integer

코드 ID.

reason
string

환불 이유입니다.

object

Custom project settings (object).

merchant_id
integer

판매자 ID입니다.

project_id
integer

프로젝트 ID. 이 매개 변수는 관리자 페이지의 프로젝트 이름 옆에서 확인할 수 있습니다.

object

User details (object).

id
required
string

사용자 ID.

country
string

사용자의 국가. ISO 3166-1 alpha-2 standard에 따른 2자로 된 국가 코드를 사용합니다.

email
string

사용자 이메일.

ip
string

유저 IP 주소입니다.

name
string

사용자 이름.

Responses
204

성공적인 처리 표시를 반환합니다.

400

제공된 정보에 오류가 있는 경우 반환됩니다(예: 필수 매개변수 누락, 인증 실패 등). 이 경우 사용자의 돈은 인출되지만 구매는 실패합니다. 환불을 진행하려면 support@xsolla.com으로 엑솔라 고객 지원에 문의해 주세요.

500

서버에 일시적인 오류가 있음을 표시하려면 돌아가세요.

Request samples
curl -v 'https://your.hostname/your/uri' \
-X POST \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-H 'Authorization: Signature 80543ba63e1e50cf05f15150fe75e7245da9a898' \
-d '{
  "notification_type": "ps_declined",
  "settings": {
    "project_id": "18404",
    "merchant_id": "2340"
  },
  "user": {
    "ip": "127.0.0.1",
    "email": "email@example.com",
    "id": "1234567",
    "country": "US"
  },
  "transaction": {
    "id": "1",
    "dry_run": "1",
    "payment_method": "1"
  },
  "refund_details": {
    "author": "support@xsolla.com",
    "code": "8",
    "reason": "Cancellation by the PS request",
    "reason_detail": "Insufficient funds"
  }
}'
Response samples
application/json
{
  • "error": {
    }
}