콘텐츠로 건너뛰기

개요

  • 버전: 2.0.0
  • 서버:
    • https://api.xsolla.com/api

페이 스테이션을 통해 파트너가 사용자에게 게임 스토어에서 인게임 구매를 결제하도록 돕는 편리한 UI를 제공하고 수익을 창출할 수 있습니다. 결제 UI를 열도록 설정하려면 다음 지침을 참조해 주세요.

페이 스테이션 API는 다음과 같은 호출 그룹을 제공합니다.

  • 토큰 - 결제 UI를 통해 추후 결제 처리에 사용하는 임의 사용자 매개 변수로 토큰을 생성하는 API 호출을 포함합니다.
  • 토큰화 - 결제 UI를 열지 않고 사용자의 개입이 없어도 안전하게 결제를 처리하는 API 호출을 포함합니다.
  • 보고서 - 사용자 트랜잭션 데이터를 반환하고, 보고서를 생성하고, 통화별 지급액 내역을 확인할 수 있는 API 호출을 포함합니다.
  • 환불 - 전액 및 부분 환불을 요청하는 API 호출을 포함합니다.
  • 테스트 - 지불 거절 프로세스를 테스트하는 API 호출을 포함합니다.

결제 UI 구성에 대한 자세한 정보는 결제 솔루션 연동 가이드에서 확인할 수 있습니다.

참고

또한 포스트맨 컬렉션Xsolla Base API 섹션을 참조하여 연동에 사용되는 API 호출을 테스트할 수 있습니다.

OpenAPI 설명 다운로드
언어
서버
https://api.xsolla.com/merchant/v2/
Mock server
https://xsolla.redocly.app/_mock/ko/api/pay-station/
작업

요청

사용자의 저장된 결제 계정을 나열합니다.

참고

샌드박스 모드에서는 3D 보안 기능이 없는 테스트 카드에서만 이 API 호출이 작동합니다.

보안
basicAuth
경로
project_idinteger필수

프로젝트 ID.

user_idstring필수

귀하 측에 저장된 게임 내 고유 사용자 ID입니다. 기존 사용자 ID여야 합니다. 오류가 발생하면 자주 묻는 질문에 대한 답변을 참조해 주세요.

쿼리
modestring

결제 프로세스를 테스트하려면 sandbox로 설정하세요. 실제 결제를 진행하려면 매개변수를 제거하세요.

curl -i -X GET \
  -u <username>:<password> \
  'https://api.xsolla.com/merchant/v2/projects/{project_id}/users/{user_id}/payment_accounts?mode=string'

응답

OK.

본문application/json
응답
application/json
[ { "id": 4612345, "name": "PP_saved_account", "payment_system": {}, "type": "paypal" } ]

요청

저장된 결제 계정 삭제.

참고

샌드박스 모드에서는 3D 보안 기능이 없는 테스트 카드에서만 이 API 호출이 작동합니다.

참고

샌드박스 모드에서 이 API 메소드를 호출할 수 있습니다. 이렇게 하려면 요청에서 테스트 결제 계정 데이터를 전달합니다. 샌드박스 모드 액세스 및 테스트 시나리오에 대한 자세한 내용은 지침을 참조하세요.

보안
basicAuth
경로
project_idinteger필수

프로젝트 ID.

user_idstring필수

귀하 측에 저장된 게임 내 고유 사용자 ID입니다. 기존 사용자 ID여야 합니다. 오류가 발생하면 자주 묻는 질문에 대한 답변을 참조해 주세요.

typestring필수

결제 계정 유형.

열거형 값설명
alipayplus_boost

Boost.

alipayplus_cn

Alipay.

alipayplus_dana

DANA.

alipayplus_gcash

GCash.

alipayplus_hk

Alipay(홍콩).

alipayplus_kplus

K PLUS.

alipayplus_maya

Maya.

alipayplus_rabbitlinepay

Rabbit LINE 페이.

alipayplus_tng

Touch 'n Go.

alipayplus_truemoney

TrueMoney 지갑.

account_idinteger필수

엑솔라 시스템에 저장된 계정의 ID입니다.

curl -i -X DELETE \
  -u <username>:<password> \
  'https://api.xsolla.com/merchant/v2/projects/{project_id}/users/{user_id}/payment_accounts/{type}/{account_id}'

응답

No Content.

요청

저장된 결제 계정을 사용하여 청구합니다.

참고

샌드박스 모드에서는 3D 보안 기능이 없는 테스트 카드에서만 이 API 호출이 작동합니다.

주의

API 호출이 올바르게 작동되게 하려면 시간제한을 2분으로 구성하세요.

보안
basicAuth
경로
project_idinteger필수

프로젝트 ID.

user_idstring필수

귀하 측에 저장된 게임 내 고유 사용자 ID입니다. 기존 사용자 ID여야 합니다. 오류가 발생하면 자주 묻는 질문에 대한 답변을 참조해 주세요.

typestring필수

결제 계정 유형.

열거형 값설명
alipayplus_boost

Boost.

alipayplus_cn

Alipay.

alipayplus_dana

DANA.

alipayplus_gcash

GCash.

alipayplus_hk

Alipay(홍콩).

alipayplus_kplus

K PLUS.

alipayplus_maya

Maya.

alipayplus_rabbitlinepay

Rabbit LINE 페이.

alipayplus_tng

Touch 'n Go.

alipayplus_truemoney

TrueMoney 지갑.

account_idinteger필수

엑솔라 시스템에 저장된 계정의 ID입니다.

본문application/json필수
custom_parametersobject(custom_parameters)

이 개체에는 부정 결제 방지 필터를 구성하는 매개 변수가 포함되어 있습니다. 매개 변수 목록은 아래와 같습니다. 사용자 정의 매개 변수를 추가하려면 계정 관리자에게 문의하거나 csm@xsolla.com으로 이메일을 보내 주세요.

custom_parameters.​active_datestring

ISO 8601에 따른 마지막 확인 날짜.

custom_parameters.​additional_verificationboolean

플레이어가 계정 확인 절차를 사용하고 있는지 여부.

custom_parameters.​character_customizedboolean

플레이어가 자신의 캐릭터를 맞춤 설정했는지 여부.

custom_parameters.​chat_activityboolean

플레이어의 채팅 기능 사용 여부.

custom_parameters.​completed_tasksinteger

완료한 임무/목표의 수.

custom_parameters.​forum_activityboolean

플레이어의 포럼 기능 사용 여부.

custom_parameters.​items_usedboolean

플레이어가 구매한 인게임 아이템을 사용하고 있는지 여부.

custom_parameters.​karma_pointsinteger

플레이어의 카르마.

custom_parameters.​last_change_password_datestring

ISO 8601에 따른 마지막 암호 변경 날짜.

custom_parameters.​non_premium_currencynumber(float)

프리미엄이 아닌 통화의 금액.

custom_parameters.​notifications_enabledboolean

플레이어가 알림을 활성화했는지 여부.

custom_parameters.​profile_completedboolean

플레이어가 프로필에 추가 정보를 추가했는지 여부.

custom_parameters.​profile_image_addedboolean

플레이어가 프로필 이미지를 업로드했는지 여부.

custom_parameters.​pvp_activityboolean

플레이어가 PvP(플레이어 대 플레이어) 전투에 참여하고 있는지 여부.

custom_parameters.​registration_datestring

ISO 8601에 따른 계정 생성일.

custom_parameters.​session_timestring

ISO 8601에 따른 평균 세션 시간.

custom_parameters.​social_networks_addedboolean

플레이어가 소셜 미디어 프로필을 연결했는지 여부.

custom_parameters.​total_bansinteger

플레이어가 채팅/포럼에서 금지된 횟수.

custom_parameters.​total_charactersinteger

인게임 캐릭터 수.

custom_parameters.​total_clansinteger

플레이어가 가입한 클랜의 수.

custom_parameters.​total_friendsinteger

친구의 수.

custom_parameters.​total_game_eventsinteger

플레이어가 참여했던 인게임 이벤트의 수.

custom_parameters.​total_giftsinteger

플레이어가 전송/수신한 인게임 선물의 수.

custom_parameters.​total_hoursinteger

총 인게임 시간.

custom_parameters.​total_inventory_valuenumber(float)

인벤토리의 총 가치(인게임 통화).

custom_parameters.​total_sumnumber(float)

총 결제 금액.

custom_parameters.​tutorial_completedboolean

플레이어가 게임 튜토리얼을 완료했는지 여부.

custom_parameters.​unlocked_achievementsinteger

잠금을 해제한 업적의 수.

custom_parameters.​user_levelinteger

플레이의 레벨, 명성 또는 순위.

custom_parameters.​win_rateinteger

승률.

purchaseobject

구매 데이터 관련 값입니다.

purchase.​checkoutobject

결제 파라미터 데이터와 관련된 값입니다.

purchase.​checkout.​amountnumber(float)

구매 금액입니다.

purchase.​checkout.​currencystring

구매 통화입니다. 통화의 3자리 정의가 ISO 4217에 따라 사용됩니다.

purchase.​descriptionobject
purchase.​description.​valuestring<= 4000 characters
purchase.​virtual_currencyobject

게임머니 데이터와 관련된 값입니다.

purchase.​virtual_currency.​quantitynumber(float)

게임머니 구매량입니다.

settingsobject

구매 설정에 대한 데이터가 포함된 개체입니다.

settings.​currencystring(currency)

선호하는 결제 통화입니다. 통화의 3자리 정의가 ISO 4217에 따라 사용됩니다.

settings.​external_idstring(external_id)

게임 내 트랜잭션 ID. 각 사용자 결제마다 고유해야 합니다. 자세한 정보는 문서 자료를 참조하세요.

settings.​mock_codeinteger(mock_code)

샌드박스 모드에서 PayPal로 결제하는 프로세스를 테스트할 때 재현하려는 오류 코드입니다. "mode":"sandbox" 매개변수를 전달하는 경우에만 올바르게 작동합니다.

열거형1002101510391046105710891201120318011803
settings.​modestring

결제 프로세스를 테스트하기 위한 sandbox 값을 설정합니다. 실제 결제의 경우 이 매개 변수는 제거되어야 합니다.

userobject

사용자 세부 정보.

user.​ipstring필수

사용자 IP입니다.

user.​legalobject(legal)

법인 세부 정보가 있는 오브젝트.

user.​legal.​addressstring

법인 전체 주소.

user.​legal.​countrystring

기업이 속한 국가. ISO 3166-1 alpha-2 standard에 따른 2자로 된 대문자 국가 코드를 사용합니다.

user.​legal.​namestring

법인 전체 이름.

user.​legal.​vat_idstring

개별 납세자 식별자.

user.​namestring

사용자 이름.

curl -i -X POST \
  -u <username>:<password> \
  'https://api.xsolla.com/merchant/v2/projects/{project_id}/users/{user_id}/payments/{type}/{account_id}' \
  -H 'Content-Type: application/json' \
  -d '{
    "purchase": {
      "description": {
        "value": "currency purchase"
      },
      "virtual_currency": {
        "quantity": 100
      }
    },
    "settings": {
      "currency": "USD",
      "external_id": "ext123",
      "mode": "sandbox"
    },
    "user": {
      "ip": "111.11.11.11",
      "legal": {
        "address": "17 Crown Street London SW2 0JW United Kingdom",
        "country": "GB",
        "name": "My Awesome Company",
        "vat_id": "GB111111111"
      },
      "name": "John Smith"
    }
  }'

응답

Created.

본문application/json
transaction_idinteger
응답
application/json
{ "transaction_id": 123458390 }
작업
작업
작업