Solved

INITIAL_PURCHASE event with expiration_at_ms=0

  • 6 August 2021
  • 3 replies
  • 39 views

Badge

On one of our apps RevenueCat received the following event for a Play Store transaction:

{
"app_user_id": "<redacted>",
"currency": "EUR",
"entitlement_ids": ["<redacted>"],
"environment": "PRODUCTION",
"event_timestamp_ms": 1596557712345,
"expiration_at_ms": 0,
"is_family_share": null,
"period_type": "NORMAL",
"price": 0,
"price_in_purchased_currency": 0,
"product_id": "<redacted>",
"purchased_at_ms": 1627860712345,
"store": "PLAY_STORE",
"takehome_percentage": <redacted>,
"transaction_id": "GPA.<redacted>"
}

(https://app.revenuecat.com/activity/9a2a29ee/event/32a3c4b0-2fad-464e-9f37-5c0151af98ee)

How can “expiration_at_ms” be zero?

From what I can tell this user had a yearly subscription, opted-out a year ago then enabled it back. Is this a RevenueCat bug?

icon

Best answer by jazmine 6 August 2021, 21:13

View original

3 replies

Userlevel 2
Badge +6

Hey @caer :wave:

We have sent this post into our ticketing system, where our Support team will handle your request.

Badge

@jazmine If it has to handle by support team then what is the use of creating this community if you can’t post the direct answer on the post.

I am also facing the same@caer how did you solve this?

Badge

Their answer :

 

The error comes from the customer receipt from Google. That is causing the expiration date to come back as 0. 

 

Here is the customer receipt : 

 

    {

    "latest_receipts": [

        {

            "is_sandbox": false,

            "last_checked_at": "2021-08-xxxx",

            "last_refresh_reason": "ENDPOINT_SUBSCRIBERS",

            "receipt_fetch_error": "PlayStorePurchaseNoLongerAvailableException('Status = 410, Response = {\\n \"error\": {\\n \"code\": 410,\\n \"message\": \"The subscription purchase is no longer available for query because it has been expired for too long.\",\\n \"errors\": [\\n {\\n \"message\": \"The subscription purchase is no longer available for query because it has been expired for too long.\",\\n \"domain\": \"androidpublisher\",\\n \"reason\": \"subscriptionPurchaseNoLongerAvailable\"\\n }\\n ]\\n }\\n}\\n')",

            ... }

 

Google is returning this because the subscription has been expired for 60 days or more.

Their engineering team may make this a feature request to add more information to the dashboard. 

Reply