# Use ONE store IAP in Unreal

### **Overview** <a href="#useonestoreiapinunreal-overview" id="useonestoreiapinunreal-overview"></a>

ONE store Unreal plugin is provided to allow easy application of ONE store IAP in the Unreal development environment.

<br>

This plugin has been developed for Unreal v4.25.

### **Unreal Plugin Configuration** <a href="#useonestoreiapinunreal-unrealpluginconfiguration" id="useonestoreiapinunreal-unrealpluginconfiguration"></a>

The unreal plugin consists of the followings.

![](https://2218522982-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgStyyzRzNh9x2u93ZH03%2Fuploads%2FShZYR9c0jBFQo53FlznF%2Fimage.png?alt=media\&token=39c0a05c-4cd0-4421-ba2a-0d73bc969e26)

**assets** : the global-appstores.json file used by ONE store SDK is located here. When build is made, this file will be moved to Android Assets to be included in the apk.

**lib** : the Adapter library helping the use of ONE store’s in-app SDK and Unreal is located here. When build is made, this file will be moved to jar lib to be included in the apk.

**ONEStoreIap\_UPL.xml** : when build is made, it revises the GameActivity and Gradle information.

**OneStoreIap.Build.cs** : when Android build is made, it provides ONEStoreIap\_UPL.xml for loading.

<br>

<br>

### **Response specifications** <a href="#useonestoreiapinunreal-responsespecifications" id="useonestoreiapinunreal-responsespecifications"></a>

#### Product <a href="#useonestoreiapinunreal-product" id="useonestoreiapinunreal-product"></a>

In the Ureal SDK, product information is forwarded as follows.

This content has been defined as FOneStoreIapProductData struct in Public/OneStoreIapInterface.h

<br>

![](https://2218522982-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgStyyzRzNh9x2u93ZH03%2Fuploads%2FVdMu9vNNAXtQ06gybrqe%2Fimage.png?alt=media\&token=4230490a-4551-4328-a087-c84cf7772e30)

<br>

| <p><br></p>           | <p><br></p>                                           |
| --------------------- | ----------------------------------------------------- |
| Original Product Json | Json string prior to parsing forwarded from ONE store |
| Product Id            | In-app ID registered via Developer Center             |
| Type                  | Type of in-app product ("inapp" or "auto")            |
| Price                 | In-app product price information                      |
| Price Currency Code   | In-app product currency information                   |
| Price Amount micros   | In-app price \* 1 million                             |
| Title                 | Product name registered via Developer Center          |

<br>

#### Purchase <a href="#useonestoreiapinunreal-purchase" id="useonestoreiapinunreal-purchase"></a>

In the Ureal SDK, purchase information is forwarded as follows.

This content has been defined as FOneStoreIapPurchaseData struct in Public/OneStoreIapInterface.h.

<br>

### ![](https://2218522982-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgStyyzRzNh9x2u93ZH03%2Fuploads%2FvNRwcOViVc2CUOUuuH0h%2Fimage.png?alt=media\&token=e4aff0df-8d64-4932-9805-07df83eb1972) <a href="#useonestoreiapinunreal-true-2020-08-31-3.42.06.png500452" id="useonestoreiapinunreal-true-2020-08-31-3.42.06.png500452"></a>

| <p><br></p>            | <p><br></p>                                                                   |
| ---------------------- | ----------------------------------------------------------------------------- |
| Original Purchase Data | Json string prior to parsing forwarded from ONE store                         |
| Signature Data         | Signature string delivered from ONE store                                     |
| Order Id               | Billing ID                                                                    |
| Package Name           | Package name of purchased app                                                 |
| Product Id             | In-app ID registered via Developer Center                                     |
| Purchase Time          | Time when purchase is made                                                    |
| Acknowledge State      | Purchase acknowledgement status ( 0: Not Acknowledged, 1: Acknowledged)       |
| Developer Payload      | Order number created and managed in the business member’s interworking server |
| Purchase Id            | Individual billing ID issued by ONE store                                     |
| Purchase Token         | Automatic payment ID issued by ONE store                                      |
| Billing Key            | BillingKey information used for automatic payment (Option)                    |

### &#x20;**Unreal Blueprint for OneStore IAP** <a href="#useonestoreiapinunreal-unrealblueprintforonestoreiap" id="useonestoreiapinunreal-unrealblueprintforonestoreiap"></a>

ONE store Unreal plugin offers the following blueprint.

![](https://2218522982-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgStyyzRzNh9x2u93ZH03%2Fuploads%2FYnpCnIZEwoP7gZ5oDVRU%2Fimage.png?alt=media\&token=8c8500e6-bae4-481a-8f81-2d6f55c4fc61)

The followings provide the description on each blueprint.

<br>

#### One Store Disconnect <a href="#useonestoreiapinunreal-onestoredisconnect" id="useonestoreiapinunreal-onestoredisconnect"></a>

After each API is called, connection with ONE store is made naturally.

However, to terminate the connection, call-ups are required according to the life cycle of the screen.

<br>

![](https://2218522982-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgStyyzRzNh9x2u93ZH03%2Fuploads%2FPncPe6o4RlHhPWFxonyM%2Fimage.png?alt=media\&token=dbd28baa-62fd-45fe-b186-49742c9414f2)

<br>

<br>

#### One Store Iap Get Product Details <a href="#useonestoreiapinunreal-onestoreiapgetproductdetails" id="useonestoreiapinunreal-onestoreiapgetproductdetails"></a>

It requests the details of in-app products registered on ONE store.

As for Managed product, call up the specification with “inapp” in the product type. As for Monthly auto-renewal product, call up the specification with “auto”.

As for in-app calls, memory issues might happen, so it is recommended to search by 20 to 30 in-apps at a time.

<br>

![](https://2218522982-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgStyyzRzNh9x2u93ZH03%2Fuploads%2F0Ah1YPNDjProJKgY3YAH%2Fimage.png?alt=media\&token=4f400155-8b30-443c-8570-6160ffcbd9ea)

<br>

**Request Params**

| <p><br></p>  | <p><br></p>                                                          |
| ------------ | -------------------------------------------------------------------- |
| Product Type | Managed product (“inapp”) or Monthly auto-renewal product (“auto”)   |
| Product List | List of product IDs(string) of in-apps whose details will be checked |

<br>

**Response Type**

| <p><br></p>    | <p><br></p>                                                           |
| -------------- | --------------------------------------------------------------------- |
| On Success     | It is called up when in-app product details are successfully checked. |
| On Failure     | It is called up when in-app product details fail to be checked.       |
| On Need Update | It is called up when ONE store billing module needs to be updated.    |
| On Need Login  | It is called up when ONE store login is needed.                       |

<br>

**Response Params**

| <p><br></p>              | <p><br></p>                                                                                                             |
| ------------------------ | ----------------------------------------------------------------------------------------------------------------------- |
| Result Code              | Success : 0 / In case of failure, it forwards error codes (as for error codes, refer to the existing guides).           |
| In App Product Info List | In case of success, it forwards the list of the detail data (FOneStoreIapProductData)of in-apps requested for checking. |

<br>

<br>

#### One Store Iap Purchase Info <a href="#useonestoreiapinunreal-onestoreiappurchaseinfo" id="useonestoreiapinunreal-onestoreiappurchaseinfo"></a>

The purchase history of non-consumed Managed product and Monthly auto-renewal product can be checked.

Check in-app products by specifying Managed product or Monthly auto-renewal product in the product type.

<br>

![](https://2218522982-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgStyyzRzNh9x2u93ZH03%2Fuploads%2FVWNH0LoDkJOgeUM39Gd9%2Fimage.png?alt=media\&token=956bec1b-2f16-4aac-90ed-168ac190a890)

<br>

**Request Params**

| <p><br></p>  | <p><br></p>                                                        |
| ------------ | ------------------------------------------------------------------ |
| Product Type | Managed product (“inapp”) or Monthly auto-renewal product (“auto”) |

<br>

**Response Type**

| <p><br></p>    | <p><br></p>                                                        |
| -------------- | ------------------------------------------------------------------ |
| On Success     | It is called up when purchase history is successfully checked.     |
| On Failure     | It is called up when purchase history fails to be checked.         |
| On Need Update | It is called up when ONE store billing module needs to be updated. |
| On Need Login  | It is called up when ONE store login is needed.                    |

<br>

**Response Params**

| <p><br></p>                      | <p><br></p>                                                                                                               |
| -------------------------------- | ------------------------------------------------------------------------------------------------------------------------- |
| Result Code                      | Success : 0 / In case of failure, it forwards error codes (as for error codes, refer to the existing guides).             |
| One Store Iap Purchase Data List | In case of success, it forwards the list of the detail data (FOneStoreIapPurchaseData) of in-apps requested for checking. |

<br>

<br>

#### One Store Iap Request Purchase <a href="#useonestoreiapinunreal-onestoreiaprequestpurchase" id="useonestoreiapinunreal-onestoreiaprequestpurchase"></a>

It requests ONE store in-app purchases (IAP).

![](https://2218522982-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgStyyzRzNh9x2u93ZH03%2Fuploads%2FxcRKoXxN5aZw6VLR1P9W%2Fimage.png?alt=media\&token=67bdd02b-f9f6-4b88-b6f8-e56394534a7c)

<br>

**Request Params**

| <p><br></p>  | <p><br></p>                                                                                                                                               |
| ------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Product Type | Managed product (“inapp”) or Monthly auto-renewal product (“auto”)                                                                                        |
| Product Id   | In-app ID registered via Developer Center                                                                                                                 |
| Product Name | Product name to be exposed on the billing screen (if it is empty, the product name registered on Developer Center will be exposed)                        |
| Dev Payload  | When the order number created and managed in the business member’s interworking server is entered, the same value must be input in Consume & Acknowledge. |

<br>

**Response Type**

| <p><br></p>    | <p><br></p>                                                        |
| -------------- | ------------------------------------------------------------------ |
| On Success     | It is called up when billing is successfully made.                 |
| On Failure     | It is called up when billing fails to be made.                     |
| On Need Update | It is called up when ONE store billing module needs to be updated. |
| On Need Login  | It is called up when ONE store login is needed.                    |

<br>

**Response Params**

| <p><br></p>   | <p><br></p>                                                                                                   |
| ------------- | ------------------------------------------------------------------------------------------------------------- |
| Result Code   | Success : 0 / In case of failure, it forwards error codes (as for error codes, refer to the existing guides). |
| Purchase Data | In case of success, it forwards the detail data of in-apps that have been successfully purchased.             |

<br>

<br>

#### One Store Iap Consume Purchase <a href="#useonestoreiapinunreal-onestoreiapconsumepurchase" id="useonestoreiapinunreal-onestoreiapconsumepurchase"></a>

For consumable products that need to be re-purchased, you must proceed with ‘consume’ and item provision after successful purchase.

If these products are not processed as ‘consume’, they can never be purchased again.

For ONE store IAP SDK V19 and later, if ‘consume’ or ‘acknowledge’ is not made within 3 days, the purchase will be cancelled since it will be judged that items have not been provided.

<br>

![](https://2218522982-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgStyyzRzNh9x2u93ZH03%2Fuploads%2FjBWynqCe2u32z76nr39q%2Fimage.png?alt=media\&token=5f4f270d-6c75-492f-9094-44a285427200)

<br>

**Request Params**

| <p><br></p>   | <p><br></p>                                                                                                                                                                                                           |
| ------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Purchase Data | Purchase string received when searching billing and purchase history                                                                                                                                                  |
| Dev Payload   | The order number created and managed in the business member’s interworking server must be the same as dev payload entered during billing (if dev payload has not used during billing, a unique value can be entered). |

<br>

**Response Type**

| <p><br></p>    | <p><br></p>                                                        |
| -------------- | ------------------------------------------------------------------ |
| On Success     | It is called up when consumption is successfully made.             |
| On Failure     | It is called up when consumption fails to be made.                 |
| On Need Update | It is called up when ONE store billing module needs to be updated. |
| On Need Login  | It is called up when ONE store login is needed.                    |

<br>

**Response Params**

| <p><br></p>            | <p><br></p>                                                                                                   |
| ---------------------- | ------------------------------------------------------------------------------------------------------------- |
| Result Code            | Success : 0 / In case of failure, it forwards error codes (as for error codes, refer to the existing guides). |
| Original Purchase Data | It returns purchase data requesting ‘Consume’ as it is.                                                       |

<br>

<br>

#### One Store Iap Acknowledge Purchase <a href="#useonestoreiapinunreal-onestoreiapacknowledgepurchase" id="useonestoreiapinunreal-onestoreiapacknowledgepurchase"></a>

It is a function to acknowledge the in-app which has been successfully purchased. When it comes to Managed product to be used as non-consumable product, or Monthly auto-renewal product, it must call up ‘acknowledge’.

For ONE store IAP SDK V19 and later, if ‘consume’ or ‘acknowledge’ is not made within 3 days, the purchase will be cancelled since it will be judged that items have not been provided.

<br>

![](https://2218522982-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgStyyzRzNh9x2u93ZH03%2Fuploads%2FvFueKRyOSUAeDiW1tDUY%2Fimage.png?alt=media\&token=d87d6cb1-0909-4ddc-a7dc-266c2a71efbd)

**Request Params**

| <p><br></p>   | <p><br></p>                                                                                                                                                                                                           |
| ------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Purchase Data | Purchase string received when searching billing and purchase history.                                                                                                                                                 |
| Dev Payload   | The order number created and managed in the business member’s interworking server must be the same as dev payload entered during billing (if dev payload has not used during billing, a unique value can be entered). |

<br>

**Response Type**

| <p><br></p>    | <p><br></p>                                                         |
| -------------- | ------------------------------------------------------------------- |
| On Success     | It is called up when purchase acknowledgement is successfully made. |
| On Failure     | It is called up when purchase acknowledgement fails to be made.     |
| On Need Update | It is called up when ONE store billing module needs to be updated.  |
| On Need Login  | It is called up when ONE store login is needed.                     |

<br>

**Response Params**

| <p><br></p>            | <p><br></p>                                                                                                                                                          |
| ---------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Result Code            | Success : 0 / In case of failure, it forwards error codes (as for error codes, refer to the existing guides).                                                        |
| Original Purchase Data | <p>It returns purchase data requesting ‘Acknowledge’ as it is.</p><p>It uses ‘Get Purchase Data’ to confirm the change in ‘Acknowledge’ status of purchase data.</p> |

<br>

<br>

#### One Store Iap Manage Recurring <a href="#useonestoreiapinunreal-onestoreiapmanagerecurring" id="useonestoreiapinunreal-onestoreiapmanagerecurring"></a>

It changes Monthly auto-renewal product status.

There are 2 types of status: cancel or reactive. As for ‘cacel’, automatic payment will not be made on the next payment date.

<br>

![](https://2218522982-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgStyyzRzNh9x2u93ZH03%2Fuploads%2FW3hMDoNzEy7ZYLjeIEtH%2Fimage.png?alt=media\&token=d3b3da1b-5e5f-4b10-ae05-0fdc4478f463)

<br>

**Request Params**

| <p><br></p>   | <p><br></p>                                                           |
| ------------- | --------------------------------------------------------------------- |
| Purchase Data | Purchase string received when searching billing and purchase history. |

<br>

**Response Type**

| <p><br></p>    | <p><br></p>                                                                    |
| -------------- | ------------------------------------------------------------------------------ |
| On Success     | It is called up when Monthly auto-renewal product status successfully changes. |
| On Failure     | It is called up when Monthly auto-renewal product status fails to change.      |
| On Need Update | It is called up when ONE store billing module needs to be updated.             |
| On Need Login  | It is called up when ONE store login is needed.                                |

<br>

**Response Params**

| <p><br></p>            | <p><br></p>                                                                                                                                                                                                        |
| ---------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| Result Code            | Success : 0 / In case of failure, it forwards error codes (as for error codes, refer to the existing guides).                                                                                                      |
| Action                 | <p>Status change (cancel / reactivate)</p><p>cancel : reserve the cancellation of recurring payment of Monthly auto-renewal product</p><p>reactivate: reverse the cancellation and recover the original status</p> |
| Original Purchase Data | Original purchase data requesting status change.                                                                                                                                                                   |

<br>

<br>

#### One Store Iap Get Store Code <a href="#useonestoreiapinunreal-onestoreiapgetstorecode" id="useonestoreiapinunreal-onestoreiapgetstorecode"></a>

As for v19, it provides the API delivering market identification codes available in S2S API.

![](https://2218522982-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgStyyzRzNh9x2u93ZH03%2Fuploads%2FUdp2RJEc6xfIHzMNoH5y%2Fimage.png?alt=media\&token=4d552bfd-39fc-4631-b405-40b00b00e1fb)

<br>

**Response Type**

| <p><br></p>    | <p><br></p>                                                                             |
| -------------- | --------------------------------------------------------------------------------------- |
| On Success     | It is called up when market identification code specifications are successfully called. |
| On Failure     | It is called up when market identification code specifications fail to be called.       |
| On Need Update | It is called up when ONE store billing module needs to be updated.                      |
| On Need Login  | It is called up when ONE store login is needed                                          |

<br>

**Response Params**

| <p><br></p> | <p><br></p>                                                                                                   |
| ----------- | ------------------------------------------------------------------------------------------------------------- |
| Result Code | Success : 0 / In case of failure, it forwards error codes (as for error codes, refer to the existing guides). |
| Store Code  | It returns store’s unique value (ex. ONE store: MKT\_ONE)                                                     |

<br>

<br>

#### One Store Iap Request Login <a href="#useonestoreiapinunreal-onestoreiaprequestlogin" id="useonestoreiapinunreal-onestoreiaprequestlogin"></a>

It is used to process ONE store login when calling up On Need Login among the response types of the specifications above.

\
![](https://2218522982-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgStyyzRzNh9x2u93ZH03%2Fuploads%2FfTLE1eHEtJNvq69OJn4G%2Fimage.png?alt=media\&token=d78037fd-4fb0-4b02-a70f-8f34337c152a)

**Response Type**

| <p><br></p> | <p><br></p>                               |
| ----------- | ----------------------------------------- |
| On Success  | It is called up when login is successful. |
| On Failure  | It is called up when login fails.         |

<br>

**Response Params**

| <p><br></p> | <p><br></p>                                                                                                   |
| ----------- | ------------------------------------------------------------------------------------------------------------- |
| Result Code | Success : 0 / In case of failure, it forwards error codes (as for error codes, refer to the existing guides). |

<br>

<br>

#### One Store Iap Request Update <a href="#useonestoreiapinunreal-onestoreiaprequestupdate" id="useonestoreiapinunreal-onestoreiaprequestupdate"></a>

It is used to process ONE update when calling up On Need Update among the response types of the specifications above.

\
![](https://2218522982-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgStyyzRzNh9x2u93ZH03%2Fuploads%2FtfFxY879gHifoY2cDPIK%2Fimage.png?alt=media\&token=54e37469-d91d-418f-8f3e-0fca2d4c34e6)

**Response Type**

| <p><br></p> | <p><br></p>                                |
| ----------- | ------------------------------------------ |
| On Success  | It is called up when update is successful. |
| On Failure  | It is called up when update fails.         |

<br>

**Response Params**

| <p><br></p> | <p><br></p>                                                                                                  |
| ----------- | ------------------------------------------------------------------------------------------------------------ |
| Result Code | Success : 0 / In case of failure, it forwards error codes (as for error codes, refer to the existing guides) |

<br>

<br>

#### One Store Purchase Verify <a href="#useonestoreiapinunreal-onestorepurchaseverify" id="useonestoreiapinunreal-onestorepurchaseverify"></a>

It reviews signature and purchase data through the license key (public key) issued by Developer Center with the API supporting the review of the purchase data.

However, as for the review of servers, it is recommended to review server items rather than to use this API.

<br>

![](https://2218522982-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgStyyzRzNh9x2u93ZH03%2Fuploads%2F34O82bhROMoC22Mq8VOx%2Fimage.png?alt=media\&token=ecbdbdf0-0426-43af-aaa7-74c582dd1784)

**Request Params**

| <p><br></p>            | <p><br></p>                                                                                |
| ---------------------- | ------------------------------------------------------------------------------------------ |
| Public Key             | License key (public key) issued by Developer Center                                        |
| Original Purchase Data | Purchase data string received when calling up billing or non-consumed purchase history API |
| Signature data         | Signature string received when calling up billing or non-consumed purchase history API     |

<br>

**Response Params**

| <p><br></p>  | <p><br></p>                                                |
| ------------ | ---------------------------------------------------------- |
| Return Value | <p>true: review is a success</p><p>false: review fails</p> |

<br>

### **Sample Case** <a href="#useonestoreiapinunreal-samplecase" id="useonestoreiapinunreal-samplecase"></a>

The following example shows how to use Blueprint. It is not required to implement it as seen in the example, and you can modify the open blueprint and use it properly.

<br>

#### Managed product billing and consumption case <a href="#useonestoreiapinunreal-managedproductbillingandconsumptioncase" id="useonestoreiapinunreal-managedproductbillingandconsumptioncase"></a>

![](https://2218522982-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgStyyzRzNh9x2u93ZH03%2Fuploads%2FPGm5lhwDMVa1gkJcLwS0%2Fimage.png?alt=media\&token=10aa5d63-fb1d-4d94-86c9-1aa83df6301c)

<br>

#### **Monthly auto-renewal product billing and acknowledge case**  <a href="#useonestoreiapinunreal-monthlyauto-renewalproductbillingandacknowledgecase" id="useonestoreiapinunreal-monthlyauto-renewalproductbillingandacknowledgecase"></a>

![](https://2218522982-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgStyyzRzNh9x2u93ZH03%2Fuploads%2FBKeJtGN20IlqBtygj5hY%2Fimage.png?alt=media\&token=7e34b856-c821-4471-b7f6-6c82e054a4b8)

#### Managed product purchase history check & consumption case <a href="#useonestoreiapinunreal-managedproductpurchasehistorycheck-and-consumptioncase" id="useonestoreiapinunreal-managedproductpurchasehistorycheck-and-consumptioncase"></a>

![](https://2218522982-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgStyyzRzNh9x2u93ZH03%2Fuploads%2F18qvPJfv2wxCxQdX71ng%2Fimage.png?alt=media\&token=0988a202-cc42-4d83-963b-76e6b31b8fc6)

<br>

#### Managed product purchase history check & **acknowledge** case <a href="#useonestoreiapinunreal-managedproductpurchasehistorycheck-and-acknowledgecase" id="useonestoreiapinunreal-managedproductpurchasehistorycheck-and-acknowledgecase"></a>

![](https://2218522982-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgStyyzRzNh9x2u93ZH03%2Fuploads%2FjM7Vjz8ydbWCjrFhDTcc%2Fimage.png?alt=media\&token=b7208c37-8984-46a9-a071-5d8acab128ac)

<br>

#### Purchase history check & **Monthly auto-renewal product** status change case <a href="#useonestoreiapinunreal-purchasehistorycheck-and-monthlyauto-renewalproductstatuschangecase" id="useonestoreiapinunreal-purchasehistorycheck-and-monthlyauto-renewalproductstatuschangecase"></a>

![](https://2218522982-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgStyyzRzNh9x2u93ZH03%2Fuploads%2FoyWPNJQ7uR89I9KnxSpm%2Fimage.png?alt=media\&token=2c77273f-82eb-4b47-a810-7bd751a045b5)

<br>

#### Market identification code case <a href="#useonestoreiapinunreal-marketidentificationcodecase" id="useonestoreiapinunreal-marketidentificationcodecase"></a>

![](https://2218522982-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgStyyzRzNh9x2u93ZH03%2Fuploads%2FEufOXVYqHEnyzqq2ZJqj%2Fimage.png?alt=media\&token=724e0835-e62f-49c4-b9c6-218d510932c5)

<br>

#### Login & update processing case <a href="#useonestoreiapinunreal-login-and-updateprocessingcase" id="useonestoreiapinunreal-login-and-updateprocessingcase"></a>

![](https://2218522982-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgStyyzRzNh9x2u93ZH03%2Fuploads%2FOaOPLc46OgzoOy5VMbWy%2Fimage.png?alt=media\&token=c7f1d4fd-96bc-45f7-9836-0798e89fb0fd)
