Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AppStoreServerNotification ¶
type AppStoreServerNotification struct { Payload *NotificationPayload TransactionInfo *TransactionInfo RenewalInfo *RenewalInfo IsValid bool IsTest bool // contains filtered or unexported fields }
func New ¶
func New(payload string, appleRootCert string) *AppStoreServerNotification
type AppStoreServerRequest ¶
type AppStoreServerRequest struct {
SignedPayload string `json:"signedPayload"`
}
type ExternalPurchaseToken ¶ added in v1.2.0
type NotificationData ¶
type NotificationData struct { AppAppleId int `json:"appAppleId"` BundleId string `json:"bundleId"` BundleVersion string `json:"bundleVersion"` Environment string `json:"environment"` SignedRenewalInfo string `json:"signedRenewalInfo"` SignedTransactionInfo string `json:"signedTransactionInfo"` Status int32 `json:"status"` ConsumptionRequestReason string `json:"consumptionRequestReason,omitempty"` }
type NotificationHeader ¶
type NotificationPayload ¶
type NotificationPayload struct { jwt.StandardClaims NotificationType string `json:"notificationType"` Subtype string `json:"subtype"` NotificationUUID string `json:"notificationUUID"` Version string `json:"version"` SignedDate int `json:"signedDate"` Summary NotificationSummary `json:"summary,omitempty"` Data NotificationData `json:"data,omitempty"` ExternalPurchaseToken ExternalPurchaseToken `json:"externalPurchaseToken,omitempty"` }
type NotificationSummary ¶
type NotificationSummary struct { RequestIdentifier string `json:"requestIdentifier"` AppAppleId string `json:"appAppleId"` BundleId string `json:"bundleId"` ProductId string `json:"productId"` Environment string `json:"environment"` StoreFrontCountryCodes []string `json:"storefrontCountryCodes"` FailedCount int64 `json:"failedCount"` SucceededCount int64 `json:"succeededCount"` }
type RenewalInfo ¶
type RenewalInfo struct { jwt.StandardClaims AutoRenewProductId string `json:"autoRenewProductId"` AutoRenewStatus int32 `json:"autoRenewStatus"` Environment string `json:"environment"` Currency string `json:"currency"` EligibleWinBackOfferIds string `json:"eligibleWinBackOfferIds"` ExpirationIntent int32 `json:"expirationIntent"` GracePeriodExpiresDate int `json:"gracePeriodExpiresDate"` IsInBillingRetryPeriod bool `json:"isInBillingRetryPeriod"` OfferDiscountType string `json:"offerDiscountType"` OfferIdentifier string `json:"offerIdentifier"` OfferType int32 `json:"offerType"` OriginalTransactionId string `json:"originalTransactionId"` PriceIncreaseStatus int32 `json:"priceIncreaseStatus"` ProductId string `json:"productId"` RecentSubscriptionStartDate int `json:"recentSubscriptionStartDate"` RenewalDate int `json:"renewalDate"` RenewalPrice int `json:"renewalPrice"` SignedDate int `json:"signedDate"` }
type TransactionInfo ¶
type TransactionInfo struct { jwt.StandardClaims AppAccountToken string `json:"appAccountToken"` BundleId string `json:"bundleId"` Currency string `json:"currency,omitempty"` Environment string `json:"environment"` ExpiresDate int `json:"expiresDate"` InAppOwnershipType string `json:"inAppOwnershipType"` IsUpgraded bool `json:"isUpgraded"` OfferDiscountType string `json:"offerDiscountType"` OfferIdentifier string `json:"offerIdentifier"` OfferType int32 `json:"offerType"` OriginalPurchaseDate int `json:"originalPurchaseDate"` OriginalTransactionId string `json:"originalTransactionId"` Price int64 `json:"price,omitempty"` ProductId string `json:"productId"` PurchaseDate int `json:"purchaseDate"` Quantity int32 `json:"quantity"` RevocationDate int `json:"revocationDate"` RevocationReason int32 `json:"revocationReason"` SignedDate int `json:"signedDate"` StoreFront string `json:"storefront"` StoreFrontId string `json:"storefrontId"` SubscriptionGroupIdentifier string `json:"subscriptionGroupIdentifier"` TransactionId string `json:"transactionId"` TransactionReason string `json:"transactionReason"` Type string `json:"type"` WebOrderLineItemId string `json:"webOrderLineItemId"` }
Click to show internal directories.
Click to hide internal directories.