krz/domain-dig

an ios app for DNS & SSL analysis

clone: git clone https://gitbay.org/krz/domain-dig.git

024f611fbbf4d2405a10d649a59968617321732a

unsigned

author: Christian Cleberg <hello@cleberg.net> · 2026-07-20T19:03:36Z

fix: match IAP product IDs to App Store Connect

The four product ID constants did not match the auto-renewable
subscriptions configured in App Store Connect, so Product.products(for:)
returned an empty array and tier(for:) resolved every purchase to .free.

Product IDs are permanent in App Store Connect, so the code is corrected
to match the configured values rather than the reverse:

  domaindig.pro.monthly      -> domaindig.pro.month
  domaindig.pro.yearly       -> domaindig.pro.annually
  domaindig.dataplus.monthly -> domaindig.proplus.monthly
  domaindig.dataplus.yearly  -> domaindig.proplus.annually
 DomainDig/PurchaseService.swift | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/DomainDig/PurchaseService.swift b/DomainDig/PurchaseService.swift
index dbc31ba..d31afc7 100644
--- a/DomainDig/PurchaseService.swift
+++ b/DomainDig/PurchaseService.swift
@@ -15,10 +15,10 @@ final class PurchaseService {
     }
 
     static let shared = PurchaseService()
-    static let monthlyProductID = "domaindig.pro.monthly"
-    static let yearlyProductID = "domaindig.pro.yearly"
-    static let proPlusMonthlyProductID = "domaindig.dataplus.monthly"
-    static let proPlusYearlyProductID = "domaindig.dataplus.yearly"
+    static let monthlyProductID = "domaindig.pro.month"
+    static let yearlyProductID = "domaindig.pro.annually"
+    static let proPlusMonthlyProductID = "domaindig.proplus.monthly"
+    static let proPlusYearlyProductID = "domaindig.proplus.annually"
     static let productIDs = [
         monthlyProductID,
         yearlyProductID,