Skip to main content
Answer

Capacitor + Vue 3 + RevenueCat: Purchase Sheet Not Appearing

  • October 14, 2025
  • 2 replies
  • 33 views

Forum|alt.badge.img+1

Hey everyone,

I’m running into an odd issue while testing subscriptions. I’ve gone through all the usual setup steps, and the offerings fetch seems okay, but the purchase sheet never appears.

 

What I have so far

  • App built with Vue 3 + Capacitor.

  • Integrated the RevenueCat SDK (capacitor-purchases).

  • Offerings are fetched successfully from RevenueCat, so configuration seems correct.

  • Testing on a physical device via Xcode, not TestFlight.

  • Device is signed in with my personal Apple ID, while the sandbox ID is logged into developer settings

  • On the manual subscription test (developer settings), the Apple sandbox pay sheet showed up, I subscribed, and in my app I can see the purchase reflected in customerInfo. ✅

 

The issue


When I try to purchase the package (the code executes correctly and uses the correct package data), I don’t get nothing. No xcode logs, no freezes, no pay sheets. It’s like I’m not pressing the button. The function is being called and the logs stop right before.

await Purchases.purchasePackage({
aPackage: monthlyPackage,
});

 

The issue

Has anyone else run into this? It’s really hard to debug since I don’t receive any error logs from the Purchases.purchasePackage itself.

 

Thanks in advance!

Best answer by medve-gnz

The issue is solved! This is the reason why it silently fails:

await Purchases.purchasePackage({
aPackage: toRaw(monthlyPackage),
});

If it’s a reactive object, you need to unwrap the object from the Proxy before passing it to the function.

Thanks to the guys from this thread → 

 

This post has been closed for comments

2 replies

Forum|alt.badge.img+1
  • Author
  • Helper
  • Answer
  • October 14, 2025

The issue is solved! This is the reason why it silently fails:

await Purchases.purchasePackage({
aPackage: toRaw(monthlyPackage),
});

If it’s a reactive object, you need to unwrap the object from the Proxy before passing it to the function.

Thanks to the guys from this thread → 

 


joan-cardona
RevenueCat Staff
Forum|alt.badge.img+6
  • RevenueCat Staff
  • October 17, 2025

Hi ​@medve-gnz,

Thanks for sharing it, this will be useful for others too!

 

Best,