# 토큰 생성 임의의 사용자 매개변수로 토큰을 생성할 수 있습니다. 토큰을 받을 때 이러한 매개변수를 전송하고, 결제가 성공적으로 완료된 후 전송했던 매개변수를 다시 받습니다. 토큰에는 이 문서에 설명되어 있거나 미리 정의한 매개변수만 포함할 수 있습니다. 매개변수가 잘못된 형식으로 전송되거나 잘못된 유형인 경우 토큰이 발급되지 않습니다. JSON 본문으로 오류 설명이 포함된 422 HTTP 코드를 받게 됩니다. extended_message로 정확히 어떤 매개변수가 잘못 전송되었는지에 대한 정보를 받게 됩니다. 기본적으로 토큰의 수명은 24시간입니다. 이 값을 변경하려면 계정 관리자에게 문의하거나 csm@xsolla.com으로 이메일을 보내주세요. 새 값은 관리자 페이지에서 생성한 회사의 모든 프로젝트에서 활성화됩니다. 주의이 API 메소드를 호출한 후 획득한 토큰은 다른 요청을 인증하는 용도로만 사용할 수 있습니다. 이 토큰은 정기 결제 제품을 연동한 경우에만 결제 UI를 여는 데 사용할 수 있습니다.결제 UI를 새 창에서 열려면 https://secure.xsolla.com/paystation4/?token={token} 링크를 사용합니다. 여기서 {token} 은 수신한 토큰입니다.테스트를 진행할 때에는 https://sandbox-secure.xsolla.com/paystation4/?token={token} URL을 사용합니다. 주의이 API 호출에는 project_id 경로 매개 변수가 포함되어 있지 않으므로 회사의 모든 프로젝트에서 유효한 API 키를 사용하여 인증을 설정해야 합니다. Endpoint: POST /merchants/{merchant_id}/token Version: 2.0 Security: basicAuth ## Path parameters: - `merchant_id` (integer, required) 판매자 ID입니다. ## Request fields (application/json): - `custom_parameters` (object) 이 개체에는 부정 결제 방지 필터를 구성하는 매개 변수가 포함되어 있습니다. 매개 변수 목록은 아래와 같습니다. 사용자 정의 매개 변수를 추가하려면 계정 관리자에게 문의하거나 [csm@xsolla.com](mailto:csm@xsolla.com)으로 이메일을 보내 주세요. - `custom_parameters.active_date` (string) [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)에 따른 마지막 확인 날짜. - `custom_parameters.additional_verification` (boolean) 플레이어가 계정 확인 절차를 사용하고 있는지 여부. - `custom_parameters.character_customized` (boolean) 플레이어가 자신의 캐릭터를 맞춤 설정했는지 여부. - `custom_parameters.chat_activity` (boolean) 플레이어의 채팅 기능 사용 여부. - `custom_parameters.completed_tasks` (integer) 완료한 임무/목표의 수. - `custom_parameters.forum_activity` (boolean) 플레이어의 포럼 기능 사용 여부. - `custom_parameters.items_used` (boolean) 플레이어가 구매한 인게임 아이템을 사용하고 있는지 여부. - `custom_parameters.karma_points` (integer) 플레이어의 카르마. - `custom_parameters.last_change_password_date` (string) [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)에 따른 마지막 암호 변경 날짜. - `custom_parameters.non_premium_currency` (number) 프리미엄이 아닌 통화의 금액. - `custom_parameters.notifications_enabled` (boolean) 플레이어가 알림을 활성화했는지 여부. - `custom_parameters.profile_completed` (boolean) 플레이어가 프로필에 추가 정보를 추가했는지 여부. - `custom_parameters.profile_image_added` (boolean) 플레이어가 프로필 이미지를 업로드했는지 여부. - `custom_parameters.pvp_activity` (boolean) 플레이어가 PvP(플레이어 대 플레이어) 전투에 참여하고 있는지 여부. - `custom_parameters.registration_date` (string) [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)에 따른 계정 생성일. - `custom_parameters.session_time` (string) [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)에 따른 평균 세션 시간. - `custom_parameters.social_networks_added` (boolean) 플레이어가 소셜 미디어 프로필을 연결했는지 여부. - `custom_parameters.total_bans` (integer) 플레이어가 채팅/포럼에서 금지된 횟수. - `custom_parameters.total_characters` (integer) 인게임 캐릭터 수. - `custom_parameters.total_clans` (integer) 플레이어가 가입한 클랜의 수. - `custom_parameters.total_friends` (integer) 친구의 수. - `custom_parameters.total_game_events` (integer) 플레이어가 참여했던 인게임 이벤트의 수. - `custom_parameters.total_gifts` (integer) 플레이어가 전송/수신한 인게임 선물의 수. - `custom_parameters.total_hours` (integer) 총 인게임 시간. - `custom_parameters.total_inventory_value` (number) 인벤토리의 총 가치(인게임 통화). - `custom_parameters.total_sum` (number) 총 결제 금액. - `custom_parameters.tutorial_completed` (boolean) 플레이어가 게임 튜토리얼을 완료했는지 여부. - `custom_parameters.unlocked_achievements` (integer) 잠금을 해제한 업적의 수. - `custom_parameters.user_level` (integer) 플레이의 레벨, 명성 또는 순위. - `custom_parameters.win_rate` (integer) 승률. - `purchase` (object) 구매 데이터 관련 값입니다. - `purchase.subscription` (object) 정기결제 데이터 관련 값입니다. - `purchase.subscription.available_plans` (array) 구독권에 대한 데이터가 있는 배열입니다. 오직 이러한 구독권만 결제 UI에 보여집니다. - `purchase.subscription.currency` (string) 구매 시 플랜의 통화, 이를 바탕으로 모든 계산이 수행됩니다. - `purchase.subscription.operation` (string) 사용자의 구독 플랜에 적용되는 작업 유형. 구독 플랜을 변경하려면 change_plan 값을 전달합니다. purchase.subscription.plan_id 매개변수에서 새 플랜 ID를 지정해야 합니다. - `purchase.subscription.plan_id` (string) 구독 플랜 외부 ID. 게시자 계정의 구독 > 구독 플랜 섹션에서 확인할 수 있습니다. - `purchase.subscription.product_id` (string) 제품 ID. - `purchase.subscription.trial_days` (integer) 평가 기간(일)입니다. - `settings` (object) 사용자의 결제 프로세스와 결제 UI를 구성하는 설정입니다. - `settings.currency` (string) 선호하는 결제 통화입니다. 통화의 3자리 정의가 [ISO 4217](https://developers.xsolla.com/ko/doc/pay-station/references/supported-currencies/)에 따라 사용됩니다. - `settings.external_id` (string) 게임 내 트랜잭션 ID. 각 사용자 결제마다 고유해야 합니다. 자세한 정보는 문서 자료를 참조하세요. - `settings.language` (string) 인터페이스 언어입니다. 2자리 소문자 [언어 코드](https://developers.xsolla.com/ko/doc/pay-station/features/localization/)입니다. - `settings.mode` (string) 결제 프로세스를 테스트하기 위한 sandbox 값을 설정합니다. 참고로 결제 UI의 URL은 https://sandbox-secure.xsolla.com 이 됩니다. - `settings.payment_method` (integer) 결제 수단의 ID입니다. - `settings.payment_widget` (string) 결제 위젯. '페이바이캐쉬(paybycash)' 혹은 '기프트카드(giftcard)'일 수 있습니다. 한도가 설정되면, 사용자는 각각 페이바이캐쉬(Pay by Cash) 혹은 기프트 카드(Gift Cards) 위젯으로 다시 보내집니다. Enum: "paybycash", "giftcard" - `settings.project_id` (integer, required) 엑솔라 시스템 내의 게임 식별자입니다. 판매자 계정 에서 확인할 수 있습니다. - `settings.redirect_policy` (object) 재지정 정책 설정(객체). - `settings.redirect_policy.delay` (integer) 사용자가 복귀 URL로 자동 재지정된 이후 지연 시간(초). - `settings.redirect_policy.manual_redirection_action` (string) 페이 스테이션 동작은 닫기 버튼 또는 게임으로 돌아가기 버튼을 사용자가 클릭하면 트리거됩니다. redirect(기본값) 및 postmessage가 될 수 있습니다. redirect로 설정되었다면 사용자는 토큰에서 전달되었거나 게시자 계정에서 지정된 URL로 리디렉션 됩니다. postmessage로 설정되었다면 사용자는 다른 페이지로 리디렉션되지 않습니다. 닫기 아이콘 버튼을 클릭하면 close 이벤트 보내기 및 clicking the 게임으로 돌아가기 버튼 클릭(return 이벤트)이 초기화됩니다. Enum: "redirect", "postmessage" - `settings.redirect_policy.redirect_button_caption` (string) 수동 재지정 버튼 문구. - `settings.redirect_policy.redirect_conditions` (string) 복귀 URL로 사용자 재지정 시 지불 상태. 이는 none, successful, successful_or_canсeled, 혹은 any일 수 있습니다. Enum: "none", "successful", "successful_or_canceled", "any" - `settings.redirect_policy.status_for_manual_redirection` (string) 복귀 URL로 사용자 재지정 버튼 지불 상태. 이는 none, successful, successful_or_canсeled, 혹은 any일 수 있습니다. Enum: "none", "successful", "successful_or_canceled", "any" - `settings.return_url` (string) 결제 후 사용자가 리디렉션되는 페이지의 URL입니다. 리디렉션 구성에 대한 자세한 내용은 이 문서를 참조하세요. - `settings.ui` (object) 인터페이스 설정 데이터와 관련된 값입니다. - `settings.ui.apple_pay_quick_payment_button` (boolean) 지원 장치의 결제 UI 상단에 있는 Apple Pay를 통해 신속 결제를 위한 버튼 표시 여부. 기본적으로 true입니다. false인 경우, [PayRank](/ko/doc/pay-station/how-to/how-to-manage-top-payment-methods/) 알고리즘에 따라 결제 방식 목록에 Apple Pay가 표시됩니다. 참고Android 장치 및 Apple Pay 결제를 지원하지 않는 기타 장치에서는 매개 변수 값에 관계없이 이 결제 방식이 사용 가능한 결제 방식 목록에서 숨겨집니다. - `settings.ui.components` (object) 모듈 메뉴 설정 데이터와 관련된 값입니다. - `settings.ui.components.subscriptions` (object) 정기 결제 모듈 설정 데이터와 관련된 값입니다. - `settings.ui.components.subscriptions.hidden` (boolean) 모듈 메뉴에 게임 아이템을 표시하는지 여부를 나타냅니다. - `settings.ui.components.subscriptions.order` (integer) 모듈 메뉴에서 게임 아이템의 위치입니다. - `settings.ui.components.virtual_currency` (object) 게임머니 모듈 설정 데이터와 관련된 값입니다. - `settings.ui.components.virtual_currency.custom_amount` (boolean) 사용자가 결제 UI에 임의의 가상 통화 수량을 입력할 수 있도록 설정합니다. - `settings.ui.components.virtual_items` (object) 게임 아이템 모듈 설정 데이터와 관련된 값입니다. - `settings.ui.components.virtual_items.selected_group` (string) 게임유저가 게임 아이템 탭을 열었을 때 선택되는 그룹입니다. - `settings.ui.components.virtual_items.selected_item` (string) 게임유저가 게임 아이템 탭을 열었을 때 선택되는 아이템입니다. 아이템 SKU는 이곳에서 보내야 합니다. - `settings.ui.currency_format` (string) 결제 UI에 3자리 [ISO 4217](https://developers.xsolla.com/ko/doc/pay-station/references/supported-currencies/) 통화 코드를 표시하려면 code로 설정합니다. 기본적으로는 3자리 통화 코드 대신 통화 기호가 표시됩니다. - `settings.ui.desktop` (object) PC 버전의 인터페이스 설정 데이터와 관련된 값입니다. - `settings.ui.desktop.header` (object) 헤더 설정 데이터와 관련된 값입니다. - `settings.ui.desktop.header.close_button` (boolean) 결제 UI에 닫기 버튼을 표시할지 여부입니다. 이 버튼은 결제 UI를 닫고 사용자를 settings.return_url 매개 변수에 지정된 URL로 리디렉션합니다. 기본값은 false입니다. - `settings.ui.desktop.header.close_button_icon` (string) 결제 UI의 닫기 버튼 아이콘. Enum: "arrow", "cross" - `settings.ui.desktop.header.is_visible` (boolean) 결제 UI에 헤더가 표시되는지 여부를 나타냅니다. - `settings.ui.desktop.header.type` (string) 헤더를 표시하는 설정 방식입니다. compact(프로젝트 이름 및 사용자 ID 표지 안 함) 또는 normal (기본값)을 설정할 수 있습니다. Enum: "compact", "normal" - `settings.ui.desktop.header.visible_logo` (boolean) true인 경우, 로고가 헤더에 표시됩니다. 이미지를 업로드하려면 [관리자 페이지](https://publisher.xsolla.com/)에서 프로젝트를 열고 Pay Station > 설정 섹션으로 이동하십시오. - `settings.ui.desktop.header.visible_name` (boolean) 프로젝트 이름이 헤더에 표시되는지 여부를 나타냅니다. - `settings.ui.desktop.header.visible_purchase` (boolean) 구매 설명(purchase.description.value)이 헤더에 표시되는지 여부를 나타냅니다. 기본값은 true입니다. - `settings.ui.desktop.subscription_list` (object) 정기 결제 목록 설정 데이터와 관련된 값입니다. - `settings.ui.desktop.subscription_list.description` (string) 정기결제에 관한 어떠한 텍스트도 이곳에서 전달할 수 있습니다. 정기 결제 요금제 목록 위에 텍스트가 표시됩니다. - `settings.ui.desktop.subscription_list.display_local_price` (boolean) true인 경우 및 사용자의 현지 통화가 정기결제 플랜의 통화와 다른 경우, 사용자는 현지 통화의 가격 및 기본 통화의 가격과 같이 두 가지 가격을 볼 수 있습니다. - `settings.ui.gp_quick_payment_button` (boolean) Google Pay 결제 방식을 표시되는 방법. true인 경우 사용자의 장치 및 브라우저에 관계없이 Google Pay를 통한 빠른 결제 버튼이 결제 UI 상단에 표시됩니다. false인 경우 [PayRank](/ko/doc/pay-station/how-to/how-to-manage-top-payment-methods/) 알고리즘에 따라 결제 방식 목록에 Google Pay가 표시됩니다. 매개 변수가 전달되지 않으면 사용자의 모든 장치 및 브라우저(Safari 제외)의 결제 UI 상단에 Google Pay가 표시됩니다. Safari에서는 결제 방식 목록에 표시됩니다. - `settings.ui.header` (object) - `settings.ui.header.visible_virtual_currency_balance` (boolean) 결제 UI에서 이 요소를 숨길 수 있는지 여부를 나타냅니다. 기본값은 true입니다. - `settings.ui.is_cart_open_by_default` (boolean) 결제 UI에 장바구니 아이템 목록과 결제 세부 정보를 표시합니다. true이면 정보가 확장 보기로 표시됩니다. false(기본값)이거나 매개 변수가 전달되지 않을 경우 정보가 축소된 보기로 표시됩니다. - `settings.ui.is_independent_windows` (boolean) 구매 시 사용자를 임베디드 런처의 브라우저(WebView)에서 기본 브라우저로 리디렉션할지 여부입니다. 기본값은 false입니다. - `settings.ui.is_language_selector_hidden` (boolean) 결제 페이지에서 언어 선택기가 숨겨져 있는지 여부. false(기본값)인 경우 선택기가 표시됩니다. - `settings.ui.is_payment_methods_list_mode` (boolean) 결제 UI를 열 때 사용자의 국가에서 사용할 수 있는 결제 방식목록이 표시되는지 여부입니다. false(기본값)인 경우 settings.payment_method 매개변수에서 전달된 결제 방식이나 [PayRank 알고리즘](https://developers.xsolla.com/ko/solutions/payments/payment-ui-management/top-payment-methods-management/)으로 선택한 결제 방식이 표시됩니다. - `settings.ui.is_prevent_external_link_open` (boolean) 외부 리소스로 링크 리디렉션 여부가 비활성화되었습니다.false가 기본값입니다. 외부 링크를 클릭하면external-link-open이벤트가postMessage메커니즘을 통해 전송됩니다. 리디렉션 링크용 주소는url매개 변수에서 전달됩니다. - `settings.ui.is_search_field_hidden` (boolean) 결제 UI에 결제 방식 검색창을 표시할지 여부입니다. true이면 검색창이 숨겨집니다. 기본값은 false입니다. - `settings.ui.is_show_close_widget_warning` (boolean) 결제 페이지를 닫기 전에 × 아이콘 위에 트랜잭션 처리에 대한 경고를 표시할지 여부입니다. false가 전달되거나 매개변수가 전달되지 않으면 경고가 표시되지 않습니다. 기본값은 true입니다. - `settings.ui.is_three_ds_independent_windows` (boolean) 3D 보안 인증을 새 브라우저 창에서 열지 여부를 선택합니다. 설정에 따라 콘텐츠 보안 정책(CSP)을 적용하는 경우 true로 설정합니다. - `settings.ui.layout` (string) 결제 UI의 주요 요소 위치. 게임 내부에서 결제 UI를 열거나 주문 및 결제 방식에 대한 정보로 열을 바꿀 수 있습니다. 자세한 내용은 [사용자 정의 지침](https://developers.xsolla.com/ko/doc/pay-station/features/ui-theme-customization/#pay_station_ui_theme_customization_layout)을 참조해 주세요. Enum: "embed", "column_reverse", "embed_column_reverse" - `settings.ui.mobile` (object) - `settings.ui.mode` (string) 저장된 결제 수단 관리를 위한 결제 UI의 표시 모드입니다. user_account로 설정하거나 생략할 수 있습니다. 이 모드에서 사용자는 언어 변경, 새 결제 수단 추가, 기존 결제 수단 삭제만 가능합니다. 참고이 매개 변수가 전달되면 리디렉션 버튼이 표시되지 않습니다. 결제 수단 저장 후 사용자를 리디렉션하려면 자동 리디렉션을 구성하십시오. - `settings.ui.theme` (string) 결제 UI 테마. 라이트 테마(기본값)의 경우 63295a9a2e47fab76f7708e1, 다크 테마의 경우 63295aab2e47fab76f7708e3일 수 있습니다. [사용자 정의 테마를 생성](https://developers.xsolla.com/ko/doc/pay-station/features/ui-theme-customization/#pay_station_ui_theme_customization_in_token)하고 이 매개 변수의 해당 ID를 전달할 수도 있습니다. Enum: "63295a9a2e47fab76f7708e1", "63295aab2e47fab76f7708e3" - `settings.ui.user_account` (object) 사용자 계정에 관한 데이터가 담긴 객체. - `settings.ui.user_account.payment_accounts` (object) 저장된 결제 방식 섹션입니다. - `settings.ui.user_account.payment_accounts.enable` (boolean) 결제 방식 편집 페이지로 이동하는 결제 UI에 연필 아이콘을 표시할지 여부를 지정합니다. 기본값은 true입니다. - `settings.ui.user_account.payment_accounts.order` (integer) 결제 UI의 드롭다운 목록에서 섹션의 위치입니다. settings.ui.user_account.payment_accounts.enable이 전달될 경우 필요합니다. - `user` (object) 사용자 세부 정보. - `user.age` (integer) 사용자 나이. - `user.attributes` (object) 게임유저 특성 데이터와 관련된 객체로서 아이템 목록을 필터링하는데 사용됩니다. 키값 쌍을 가진 올바른 JSON 해시여야 합니다. - `user.country` (object) - `user.country.allow_modify` (boolean) 결제 UI에서 사용자의 국가 변경 가능 여부. country.value가 토큰에서 전달되면 기본값은 false입니다. - `user.country.value` (string) [ISO 3166-1 alpha-2 standard](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)에 따른 2자로 된 국가 코드를 사용합니다. - `user.email` (object) user.email 개체는 부정 결제 방지 모델 만들기의 정수 부분이며 수락률을 높여줍니다. 해당 개체는 엑솔라와 결제 시스템 양쪽 모두의 요구 사항입니다. 매개 변수가 전달되지 않으면 이메일 입력용 필수 필드가 결제 페이지에 나타납니다. 사용자는 매개 변수에서 전달되었거나 결제 페이지에 입력된 이메일로 구매 영수증을 받습니다. - `user.email.allow_modify` (boolean) 결제 UI에서 사용자가 자신의 이메일을 입력할 수 있는지 여부. user.email.value 매개변수가 토큰에서 전달되는 경우 기본값은 false입니다. - `user.email.value` (string, required) 사용자 이메일. [RFC 822](https://www.w3.org/Protocols/rfc822/#z8) 프로토콜에 따라 유효해야 합니다. - `user.id` (object, required) - `user.id.value` (string, required) 귀하 측에 저장된 게임 내 고유 사용자 ID입니다. 기존 사용자 ID여야 합니다. 오류가 발생하면 [자주 묻는 질문에 대한 답변](/ko/doc/pay-station/references/faq/#faq_validation)을 참조해 주세요. - `user.is_legal` (boolean) 게임유저가 법인인지 여부를 나타냅니다. - `user.legal` (object) 법인 세부 정보가 있는 오브젝트. user.is_legal가 true인 경우 오브젝트와 이에 해당하는 모든 매개변수는 필수입니다. - `user.legal.address` (string) 법인 전체 주소. - `user.legal.country` (string) 기업이 속한 국가. [ISO 3166-1 alpha-2 standard](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)에 따른 2자로 된 대문자 국가 코드를 사용합니다. - `user.legal.name` (string) 법인 전체 이름. - `user.legal.vat_id` (string) 개별 납세자 식별자. - `user.name` (object) - `user.name.allow_modify` (boolean) 결제 UI에서 사용자가 자신의 이름을 입력할 수 있는지 여부. user.name.value 매개변수가 토큰에서 전달되는 경우 기본값은 false입니다. - `user.name.value` (string) 게임유저 닉네임입니다. - `user.phone` (object,null) - `user.phone.value` (string) 전화번호. - `user.public_id` (object) - `user.public_id.value` (string) 사용자를 고유하게 식별할 수 있고 사용자 ID(이메일, 애칭 등)와 달리 사용자에 대해 알려진 매개 변수입니다. 이 매개 변수는 게임 스토어 외부(예: 캐시 키오스크의 게임 버튼)에서 구매할 수 있을 때 사용됩니다. - `user.steam_id` (object) - `user.steam_id.value` (string) Steam ID입니다. - `user.tracking_id` (object) - `user.tracking_id.value` (string) 고유 사용자 ID - 마케팅 캠페인에 사용. 숫자와 라틴 문자를 사용할 수 있습니다. - `user.utm` (object) 트래픽 성향을 나타내는 데이터를 포함한 오브젝트. - `user.utm.utm_campaign` (string) 캠페인 제목. 이 항목은 음차한 캠페인 제목이나 영어로 번역한 캠페인 제목을 포함해야 합니다. - `user.utm.utm_content` (string) 캠페인 구성 요소. - `user.utm.utm_medium` (string) 트래픽 채널(맥락 이해 광고, 언론 광고, 이메일 목록 메시지). - `user.utm.utm_source` (string) 트래픽 소스. - `user.utm.utm_term` (string) 캠페인 키워드. 이 항목을 지정할 경우 광고 캠페인 목표 설정에 사용된 키워드 데이터에 기반하여 통계가 만들어집니다. Google Analytics에서는 utm_term 라벨 콘텐츠가 검색어를 포함한 일반 보고서의 일부가 됩니다. ## Response 200 fields (application/json): - `token` (string) ## Response 422 fields (application/json): - `extended_message` (object) - `extended_message.global_errors` (array) - `extended_message.property_errors` (object) 개체는 오류 설명과 함께 매개 변수 이름을 포함합니다. - `http_status_code` (integer) - `message` (string) - `request_id` (string)