마켓 취소·환불 내역 조회 API는 수집된 구매 취소 내역을 조회하고, 환불 처리 결과를 Hive IAP 취소·환불 내역 조회 시스템에 알리는 기능을 제공합니다. 현재 Google Play Store과 Apple App Store의 환불 정보를 수집합니다.
- Google Play Store
앱센터에 활성 상태로 등록된 시점을 기준으로 한 달 이내에 취소된 구매 내역을 수집, 저장합니다. 이후 30분 단위로 지난 24시간 동안의 구매 취소 데이터를 수집합니다. - Apple App Store
환불 발생 후 Apple측에 등록된 콜백 API를 이용해 수집, 저장합니다. Apple에서 제공하는 정보에는 환불 유저에 대한 데이터 최신 100건이 포함되어 있습니다.
구매 취소 내역 조회 API
Hive IAP 취소·환불 목록 수집 시스템에 수집된 구매 취소 내역 데이터를 조회할 수 있는 API 입니다.
마켓 | 상용 URL |
---|---|
https://hiveiap-void.qpyou.cn/api/Voided_purchases/google | |
Apple | https://hiveiap-void.qpyou.cn/api/Voided_purchases/apple_market |
호출
- 구글
12345curl -L -v-d '{"package_name" : "com.com2us.hivesdk.normal.freefull.google.global.android.common", "start_time_utc" : "2019-11-01 00:00:00","end_time_utc" : "2019-11-30 00:00:00","max_results" : 100,"next_page_token" : "163711"}'-H "Content-Type: text/html"https://hiveiap-void.qpyou.cn/api/Voided_purchases/google
- 애플
12345curl -L -v-d '{"package_name" : "com.com2us.hivesdk.normal.freefull.apple.global.ios.universal", "start_time_utc" : "2022-01-01 00:00:00","end_time_utc" : "2022-01-30 00:00:00","max_results" : 100,"next_page_token" : "11329"}'-H "Content-Type: text/html"https://hiveiap-void.qpyou.cn/api/Voided_purchases/apple_market
요청
- 구글
1234567> POST /api/Voided_purchases/google HTTP/2> Host: hiveiap-void.qpyou.cn> user-agent: curl/7.68.0> accept: /> content-type: text/html> content-length: 214
- 애플
1234567> POST /api/Voided_purchases/apple_market HTTP/2> Host: hiveiap-void.qpyou.cn> user-agent: curl/7.68.0> accept: /> content-type: text/html> content-length: 211
필드 | 타입 | 설명 | 필수 |
---|---|---|---|
package_name | String | 조회할 게임의 패키지 이름(게임 앱의 appid와 동일) | Y |
start_time_utc | String | 수집한 데이터를 조회할 조건 본 필드에 설정한 시간부터 Hive IAP 취소·환불 내역 조회에 수집된 취소 데이터를 조회합니다. (기준: UTC) |
N |
end_time_utc | String | 수집한 데이터를 조회할 조건start_time_utc 필드에 설정한 시간부터 본 필드에 설정한 시간까지 Hive IAP 취소·환불 내역 조회에 수집된 취소 데이터를 조회합니다. (기준: UTC) |
N |
max_results | Integer | 조회 요청 시 전달받을 최대 취소 내역 건수
|
N |
next_page_token | String | 직전 요청에 대한 응답에 next_page_token 값이 있었다면 해당 값을 next_page_token 필드에 명시합니다.조회 요청 결과가 max_results 값보다 많아서 전달받지 못한 조회 결과를 받을 목적으로 사용하는 필드입니다. |
N |
응답
- 구글
123456< HTTP/2 200< server: nginx< date: Thu, 24 Mar 2022 01:32:35 GMT< content-type: application/json; charset=utf-8{"result_code":20000,"result_message":"Succeeded","voided_purchases":[ {"purchase_token":"nimnofdhakfgpndiimdppolj.AO-J1OzMqlDpj4SghQhWmva1TiBCiFDl71BDNLoQwMBJKF56Ge5XOnZxV5MnQSOsvHaGvDEjcW-NDFEAq8ld2HGJ7C5WYfe66OSJzRwLEWYN6uIWv-KtwKK03UDJ5g6_rGUP-ehkzgxakxW6Po_IO7ar-LnGeNLAT935luu21mo7Ro8x2QI_hT0","order_id":"GPA.3364-7355-8595-58210","status":0,"registered_time_utc":"2019-11-05 07:00:56","purchase_time_millis":1572936787736,"voided_time_millis":1572936853385},{"purchase_token":"nmoilhbkohgenagijdjjgmco.AO-J1Ow_xd8YXmXyEa4rIFYQM8tz54uktbwDwfc0RCPpD4DU4hgUxvfS_8xF7ZaFCO24z1mnksIQIBd558CwGMKrKk3V2k2McmVDAY-YTSm-LifuwfsKjqvwB3XsS9glxOCBwYh8tOm8aOnpkc88KlSQvCGFBc37DE-15DYjfWDn4NFJKURW6lk","order_id":"GPA.3302-9874-8010-18227..0","status":0,"registered_time_utc":"2019-11-14 03:30:56","purchase_time_millis":1573540262622,"voided_time_millis":1573701048994},{"purchase_token":"iblchmcpehfbhedjholmkngj.AO-J1Ow6q92hVFf-zJ_u9xdIGkoV6ULuwGtHEl8LTo5APyWqXPpK61ZgbWwv5tdgwvVEGrC6C5UUzlhYyufaEjQ7kHsjNOMF38zjvYpHPuwYSR1g8pV_jEJgLy2WOqHB_dbHYQ01NAAwSOsxA4_Rn65ZvegawHC_q0zb27B3xWv5aja6aom_ZJo","order_id":"GPA.3371-5271-9000-27948","status":0,"registered_time_utc":"2019-11-14 08:00:45","purchase_time_millis":1573716825539,"voided_time_millis":1573717331520},{"purchase_token":"ikeopdikcnkhjhfagkeooeah.AO-J1OxcGjF4mf6eEKli4-7sx_vM0bSUbC5KVjxL57qa1pPR6M6V7ezOti1Y43qp872TxWVkWDSGA3VDUDsWqee2C9w6WFkqAhIH0ilP8EQnBRJmldiKJEcqaV4bYj0b-ZopuwpC9eIVQROujoRJMsFqvmOOYYz3JHNvw5miOPFegOAr2mCyn2Y","order_id":"GPA.3308-4991-8630-89395","status":0,"registered_time_utc":"2019-11-14 09:00:43","purchase_time_millis":1573721480826,"voided_time_millis":1573721534896},{"purchase_token":"jpnlafggchpcglggpcdadjgb.AO-J1OxZpu_VbhEGrheSBic3CjBx3wA427JkLVAUIUVMD71vZuubpms6pXrjNpLkA4WtrUYlt46zYboEtW2rNaHv4syxbGw8wBg0IRtJZlLKqR7myU0fQRKiWoTbqckVLOaaO4_JRFuGpI3Pb-WzLrA29HSOToikOn4giGUpLwR_i3TKr5f9cKI","order_id":"GPA.3303-9815-1327-18145..3","status":0,"registered_time_utc":"2019-11-14 11:30:41","purchase_time_millis":1573728780371,"voided_time_millis":1573729383849},{"purchase_token":"miadpmaofimfadmmledfhihg.AO-J1Oy4sTIqKXTONZcADTKckq2OUcdUivAlbsZaSFOWv0nzIYSxMlR1bjfcF6HUgm_iOlio4P1FWCSFcVEJ4tlVUVruWhtOpJzkDoUgdE3j_Ett6xiYZuyJGK6ffHIIjqCB5fj8E29TIznh11hrqZZcMI_X5YNGRF3HIzHfaSfNVE_530MC4G8","order_id":"GPA.3364-8480-1760-01214","status":0,"registered_time_utc":"2019-11-14 11:30:41","purchase_time_millis":1573729400909,"voided_time_millis":1573730167917},{"purchase_token":"ikilbjmfcljflmfpkifdhloi.AO-J1OyFGfdYcB5wx4X9I_599faosOkiDDMR0ZeNHm3VrCirXP7B_4r45bI3dccczTLufrggwK0pKtHRKbhMVjF6DkXGxVb11OG6KgzRT0Vrhlzc-8O38BmemFy36joXjfolLEoGer7S7U9IUseT-j_vt90wp1yec5c5BbwXKkz9DhOQfY3HiVI","order_id":"GPA.3384-1503-8759-99590..0","status":0,"registered_time_utc":"2019-11-15 01:30:44","purchase_time_millis":1573780142959,"voided_time_millis":1573780809998},{"purchase_token":"kddfedlkijolchceakffbocn.AO-J1OxH59SYZAnEPrLfx5K5JBADSss6QZ7rfmA7LOefWuTvw1xSKv-3B1rasObXEOgnQaEXvZNgpqddIU1kx0Ln4wG9mgXNBMxz21qloKsuhOkFkIiQeuzP6zPRnz23FIQcZPvskHGBXjcFrdrUPGnNcfHeqzuQKsyfP7GZIwONiQWnTzdBfZw","order_id":"GPA.3323-2576-1681-97375","status":0,"registered_time_utc":"2019-11-15 02:30:42","purchase_time_millis":1573782984745,"voided_time_millis":1573783022433},{"purchase_token":"jhgeodjefndjkkjmgkekphmd.AO-J1OzGGnIlHKVhsPdicVOMc-m1xVlEor87iUngE9mnlLslRzrDSvu0XtlSIJ1YfN-UzlnkRSOvBk4MWdnsQYJXQ3GDL1D2eu8rAmg7trUK7Idzjor0H0LV7XPXEhrT2Jv81vfHAHxHlVj1X1xqsTQsznBXX9_d5qEyr7jTAaq4KaCbqp-4ojg","order_id":"GPA.3392-9331-9250-68037","status":0,"registered_time_utc":"2019-11-15 04:30:43","purchase_time_millis":1573790396163,"voided_time_millis":1573791436637},{"purchase_token":"dehnmoeoccgndnpndhplpjkp.AO-J1OyU_iBnRt3Bx8Xku25mybFfJ0CdyXtrAow6mMvzKTzMW_y9tpCdkjrDaKtdG6os8RsYI6QJ4KIvi2My0Vf5IKxJ_dBxbYEw4s6LlS1Q9YZXcC9opVSPyt1_ZOyqRdxYue6qPEKRdI8B5IWpssD0uTv2DaWPo5n8da0PmWmuytNBp4A-C1Q","order_id":"GPA.3377-2190-1206-08177","status":0,"registered_time_utc":"2019-11-15 05:00:54","purchase_time_millis":1573791556860,"voided_time_millis":1573792061248},{"purchase_token":"olaahnikehmpmmnpfbmmmblg.AO-J1OyjXIQ0_OSAde0lXD1xwAf8p_Z_3-IiI4eHjLUlUasSxFtFOh2SK3SIIu7-JfiEIhkzwISuz8rUz8JFhJX7TuGYAFLo5AWBlX4YaStX0YFRgvvxMn1HudPe-uAAeFyDYfW8uiSlmapcWPwZnLDReqGmTYKYCL9FOu8fzWHKqViyLxMyyqA","order_id":"GPA.3313-7990-3887-66093","status":0,"registered_time_utc":"2019-11-15 05:00:54","purchase_time_millis":1573792862847,"voided_time_millis":1573793178326},{"purchase_token":"jlpobfgbhpbkcjopgnhklgal.AO-J1OxJgsyr6XLu67RZ8NOsKC6kPhwVLEevvTsvjwWrqicc60yejCPfFjkcXCm847JIDLfazD9Iv3gP2j6dc3nVFeMxoGNfGabDJzqS-uSYt0RUsmGCwSZA7NixoVEXjkzBGZAjLet1540PHSWmvCapwxuNW5RGgMweicaUr2SAITdHfDJvB70","order_id":"GPA.3357-2981-4445-04923","status":0,"registered_time_utc":"2019-11-15 10:00:42","purchase_time_millis":1573811046441,"voided_time_millis":1573811554285}]}
- 애플
123456< HTTP/2 200< server: nginx< date: Thu, 24 Mar 2022 01:33:24 GMT< content-type: application/json; charset=utf-8{"result_code":20000,"result_message":"Succeeded","voided_purchases":[ {"transaction_id":"1000000379060860","status":3,"registered_time_utc":"2022-01-04 10:53:09","purchase_time_millis":1519712927000,"voided_time_millis":1631524849000},{"transaction_id":"1000000379036369","status":3,"registered_time_utc":"2022-01-27 11:10:24","purchase_time_millis":1519709832000,"voided_time_millis":1631524849000},{"transaction_id":"1000000379070488","status":3,"registered_time_utc":"2022-01-27 18:58:52","purchase_time_millis":1519714183000,"voided_time_millis":1631524849000}]}
필드 | 타입 | 설명 | 반환필수 | |
---|---|---|---|---|
result_code | Integer | 응답 코드
|
Y | |
result_message | String | 요청을 수행한 결과 메시지 | Y | |
next_page_token | String | 조회하여 전달해야 하는 취소 데이터 개수가 요청 시 명시된 max_results 값 이상일 때, 전달하지 못한 데이터를 요청자가 다시 요청할 수 있도록 알려주는 토큰 값 |
N | |
voided_purchases | Array | 실제 취소된 구매 내역 데이터 목록voided_purchases.registered_time_utc 값을 기준으로 수집 시각에 따라 항목이 나열됩니다. |
N | |
order_id | String | Google 영수증에 기입된 Order ID | Google일 경우 Y | |
transaction_id | String | Apple 영수증에 기입된 Transaction ID | Apple일 경우 Y | |
status | Integer | 인앱 구매 항목의 회수 여부
|
N | |
registered_time_utc | String | 구매 취소 내역 데이터가 Hive IAP 취소/환불 내역 조회에 수집된 시각 (형식: UTC) | N | |
purchase_time_millis | BigInt | 구매 취소한 아이템을 유저가 구입했던 시각 (형식: UNIX 시간 값의 밀리세컨드) | N | |
voided_time_millis | BigInt | 구매 취소한 시각 (형식: UNIX 시간 값의 밀리세컨드) | N |
처리 결과 등록 API
구매 취소 내역 조회 API를 이용해 수집된 정보를 기반으로 게임 서버에서 회수 처리하고 아이템 지급 여부를 통보하는 API 입니다.
마켓 | 상용 URL |
---|---|
https://hiveiap-void.qpyou.cn/api/Consequence/google | |
Apple | https://hiveiap-void.qpyou.cn/api/Consequence/apple |
호출
- 구글
12345curl -L -v -d'{"order_id" : "GPA.1355-5275-2154-58380","is_item_delivered" : true,"withdrawal_status" : 3}'-H "Content-Type: text/html"https://hiveiap-void.qpyou.cn/api/Consequence/google
- 애플
12345curl -L -v -d'{"transaction_id" : "360000588196546","is_item_delivered" : true,"withdrawal_status" : 1}'-H "Content-Type: text/html"https://hiveiap-void.qpyou.cn/api/Consequence/apple
요청
- 구글
1234567> POST /api/Consequence/google HTTP/1.1> User-Agent: curl/7.29.0> Host: hiveiap-void.qpyou.cn> Accept: */*> Content-Type: text/html> Content-Length: 92
- 애플
1234567> POST /api/Consequence/apple HTTP/1.1> User-Agent: curl/7.29.0> Host: hiveiap-void.qpyou.cn> Accept: */*> Content-Type: text/html> Content-Length: 89
필드 | 타입 | 설명 | 필수 |
---|---|---|---|
order_id | String | Google 영수증에 기입된 Order ID | Google일 경우 Y |
transaction_id | String | Apple 영수증에 기입된 Transaction ID | Apple일 경우 Y |
is_item_delivered | Bool | 해당되는 구매 아이템 지급 여부 | Y |
withdrawal_status | Integer | 변경할 항목의 회수 상태
|
Y |
응답
- 구글
12{"result_code":20000,"result_message":"Registration Succeeded"}
- 애플
12{"result_code":20000,"result_message":"Registration Succeeded"}
필드 | 타입 | 설명 | 반환필수 |
---|---|---|---|
result_code | Integer | 응답 코드
|
Y |
result_message | String | 요청을 수행한 결과 메시지 | Y |