> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Fraud prevention 빠른 시작

> Microsoft Store, iOS, Google Play 및 기타 플랫폼에 대한 PlayFab Economy v2에서 영수증 검증 및 사기 방지를 활성화하는 빠른 시작 가이드입니다.

<Info>
  Economy v2는 이제 정식으로 사용할 수 있습니다(GA). 지원 및 피드백은 [PlayFab Forum](https://community.playfab.com)을 방문하세요.
</Info>

이 빠른 시작에서는 Microsoft Store([Windows 10/11](https://learn.microsoft.com/en-us/windows/uwp/publish/), [XBOX](https://learn.microsoft.com/en-us/gaming/xbox/), [Android](https://blogs.windows.com/windows-insider/2021/10/20/announcing-android-apps-on-windows-11-preview-for-windows-insiders-in-the-beta-channel/))에서 영수증 검증을 실행합니다.

## 필수 구성 요소

[PlayFab Economy v2 quickstart](/services/playfab/economy-monetization/economy-v2/quickstart)를 통해 설정하고 영수증 검증을 수행할 준비를 할 수 있습니다.

## Microsoft Store Marketplace 영수증 검증

* [GetMicrosoftStoreAccessTokens](https://learn.microsoft.com/en-us/rest/api/playfab/economy/inventory/get-microsoft-store-access-tokens)
* [RedeemMicrosoftStoreInventoryItems](https://learn.microsoft.com/en-us/rest/api/playfab/economy/inventory/redeem-microsoft-store-inventory-items)

Redeem API를 사용하려면 사용 중인 Marketplace(Apple Store, Steam, Google Play 등)에서 Product ID와 가격을 설정하는 것부터 시작합니다. 처음에는 모든 제품이 익명입니다 - 플레이어가 구매할 수 있는 디지털 항목이지만 PlayFab에서는 의미가 없습니다.

이러한 항목에 의미를 부여하려면 PlayFab Catalog에서 미러링해야 합니다. 미러링하면 익명 엔터티가 Catalog Bundles로 변환됩니다. 새 서비스에서 `RedeemMicrosoftStoreInventoryItems`를 호출하면 Entity Player의 가상 인벤토리에 부여할 일치하는 번들을 Catalog에서 찾습니다.

각 번들은 AlternateId를 추가하여 하나 이상의 Partner Marketplace 제품에 연결할 수 있습니다. AlternateId는 PlayFab과 외부 IAP Market 간의 링크입니다. 타이틀이 지정된 플레이어 엔터티에 대해 Redeem을 호출하면 이 ID를 IAP Market으로 전달하여 확인합니다. 일반적인 흐름은 다음과 같습니다.

1. Microsoft Store에서 1개(또는 그 이상)의 실물 오퍼를 만듭니다.
2. PlayFab의 Add-ons를 IAP Market 호출 권한으로 채우고 만든 오퍼에 연결되는 해당 Bundles를 PlayFab에서 만듭니다.
3. `RedeemMicrosoftStoreInventoryItems`를 호출합니다.

<Note>
  이전 PlayFab 버전과 달리 새 시스템에서는 하나의 번들 오퍼만 만들고 참조해야 하는 각 마켓 SKU를 AlternateId 목록에 추가합니다. 각 IAP 마켓에 대해 새 아이템을 만들 필요가 없습니다.
</Note>

### 1단계 - 마켓플레이스 통합 설정

PlayFab이 타이틀을 대신하여 Market을 호출할 수 있도록 GameManager의 Add-ons 섹션 아래에서 각 IAP Market 통합을 설정해야 합니다.

### 2단계 - 영수증 검증용 번들 만들기

GameManager 내에서 또는 `CreateDraftItem`을 호출하여 [번들을 만들](/services/playfab/economy-monetization/economy-v2/catalog/bundles) 수 있습니다. 번들은 최소한 Title, Description, Items가 필요합니다. GameManager에서 Marketplace Mapping 섹션을 사용하여 Marketplace 항목을 연결할 수 있습니다.

API를 사용하여 번들을 빌드하는 경우 번들의 alternateIds 섹션 아래에 IAP Marketplace 매핑을 추가해야 합니다. Marketplace Enums은 특정하며 대/소문자를 구분합니다. 다음 Add-ons 중 하나를 사용해야 합니다.

* Apple = "AppleAppStore"
* Google Play = "GooglePlay"
* Nintendo = "NintendoEShop"
* Microsoft = "MicrosoftStore"
* PlayStation = "PlayStationStore"
* Steam = "Steam"

### 3단계 - 게임에서 Redeem 호출

게임은 실물 오퍼를 '리뎀션'하고 해당 Entity Inventory를 채우기 위해 엔터티 및 영수증 세부 정보와 함께 `RedeemMicrosoftStoreInventoryItems` API를 호출합니다. 제대로 작동하려면 호출에 몇 가지를 제공해야 합니다.

* 요청의 Header에 필수
  * X-EntityToken - PlayFab 엔터티를 고유하게 식별하는 토큰
  * Content-Type - Application/Json
* 요청의 Body에 필수
  * `CollectionsIdKey`

각 IAP Market은 이러한 호출을 만드는 데 약간 다른 요구 사항이 있습니다. 예를 들어 Apple 및 GooglePlay 구매의 경우 마켓플레이스 영수증을 첨부해야 합니다.

게임 클라이언트가 시작될 때 먼저 마켓플레이스에 대한 PlayFab Redeem 호출을 시작합니다. Redeem 호출을 통해 PlayFab은 오프라인이나 게임의 시야 밖에서 발생한 잠재적 구매와 동기화할 수 있습니다. 게임은 Marketplace 오퍼의 게임 내 구매가 발생할 때마다 이러한 호출을 사용해야 합니다.

Redeem은 Redeem 엔드포인트가 호출된 후 Player Entity의 Inventory Currency가 채워지도록 보장합니다.

## 4부: 아이템 구매

### Game Manager

개별 플레이어 뷰 내에서 아이템이나 통화가 존재하는지 확인할 수 있습니다. GameManager에서 Players를 선택하고 개별 Player Entity로 이동합니다. Inventory 탭을 사용하여 해당 Entity Player가 소유한 것을 보고 업데이트합니다.

### API

게임에서 가상 화폐를 부여받은 플레이어로 로그인합니다.

`SearchItems`를 호출하여 이전에 게시된 카탈로그 itemId를 사용합니다.

카탈로그 아이템의 itemId와 부여된 Virtual Currency ID로 `PurchaseInventoryItems`를 호출합니다.

마지막으로 `GetInventoryItems`를 호출하고 해당 메서드의 결과를 확인합니다.

***

Microsoft 플랫폼에서의 수익 창출에 대해 자세히 [여기](https://learn.microsoft.com/en-us/windows/uwp/monetize/)에서 알아볼 수 있습니다.
