Unverified Commit fa2b7259 authored by Simon Esposito's avatar Simon Esposito Committed by GitHub
Browse files

Add iap refund support (#959)

Add subscription raw response/notification.
Add userID to validated purchases/subscriptions.
Add Google refund scheduler.
Handle Google IAP refunds by polling their voided purchases API.
Invoke custom hooks on refund/subscription notification handling.
parent bc4b94aa
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -11,6 +11,7 @@ The format is based on [keep a changelog](http://keepachangelog.com) and this pr
- Add support for removing channel messages to all runtimes.
- Allow devconsole group view to add new members.
- Allow `DELETE` and `HEAD` methods in runtime HTTP request functions.
- Add In-App Purchase notification callback functions to runtimes.

### Changed
- Stricter validation of limit in runtime storage list operations.
@@ -36,6 +37,7 @@ The format is based on [keep a changelog](http://keepachangelog.com) and this pr
- Ensure rank cache is correctly updated when joining tournaments.
- Ensure default parameters for tournament listings are consistent between API and runtimes.
- Fix devconsole groups view incorrect visual removal of last group member.
- Fix iap subscription notification handling.

## [3.14.0] - 2022-10-14
### Added
+1 −1
Original line number Diff line number Diff line
@@ -18,7 +18,7 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// 	protoc-gen-go v1.28.1
// 	protoc        v3.21.9
// 	protoc        v3.21.11
// source: apigrpc.proto

package apigrpc
+29 −3
Original line number Diff line number Diff line
@@ -4981,6 +4981,10 @@
    "apiValidatedPurchase": {
      "type": "object",
      "properties": {
        "userId": {
          "type": "string",
          "description": "Purchase User ID."
        },
        "productId": {
          "type": "string",
          "description": "Purchase Product ID."
@@ -4996,17 +5000,22 @@
        "purchaseTime": {
          "type": "string",
          "format": "date-time",
          "description": "UNIX Timestamp when the purchase was done."
          "description": "Timestamp when the purchase was done."
        },
        "createTime": {
          "type": "string",
          "format": "date-time",
          "description": "UNIX Timestamp when the receipt validation was stored in DB."
          "description": "Timestamp when the receipt validation was stored in DB."
        },
        "updateTime": {
          "type": "string",
          "format": "date-time",
          "description": "UNIX Timestamp when the receipt validation was updated in DB."
          "description": "Timestamp when the receipt validation was updated in DB."
        },
        "refundTime": {
          "type": "string",
          "format": "date-time",
          "title": "Timestamp when the purchase was refunded. Set to UNIX"
        },
        "providerResponse": {
          "type": "string",
@@ -5026,6 +5035,10 @@
    "apiValidatedSubscription": {
      "type": "object",
      "properties": {
        "userId": {
          "type": "string",
          "description": "Subscription User ID."
        },
        "productId": {
          "type": "string",
          "description": "Purchase Product ID."
@@ -5062,6 +5075,19 @@
          "format": "date-time",
          "description": "Subscription expiration time. The subscription can still be auto-renewed to extend the expiration time further."
        },
        "refundTime": {
          "type": "string",
          "format": "date-time",
          "description": "Subscription refund time. If this time is set, the subscription was refunded."
        },
        "providerResponse": {
          "type": "string",
          "description": "Raw provider validation response body."
        },
        "providerNotification": {
          "type": "string",
          "description": "Raw provider notification body."
        },
        "active": {
          "type": "boolean",
          "description": "Whether the subscription is currently active or not."
+1 −1
Original line number Diff line number Diff line
// Code generated by protoc-gen-go-grpc. DO NOT EDIT.
// versions:
// - protoc-gen-go-grpc v1.2.0
// - protoc             v3.21.9
// - protoc             v3.21.11
// source: apigrpc.proto

package apigrpc
+1 −1
Original line number Diff line number Diff line
@@ -18,7 +18,7 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// 	protoc-gen-go v1.28.1
// 	protoc        v3.21.9
// 	protoc        v3.21.11
// source: console.proto

package console
Loading