title: How to verify that apple subscription offer is redeemed successfully for users with active subscription
body: <p>We're implementing <a href="https://developer.apple.com/documentation/storekit/in-app_purchase/implementing_subscription_offers_in_your_app" rel="nofollow noreferrer">subscription offers</a> in our app and all goes fairly well. However, if user has an active subscription while redeeming the offer, we're getting failed transaction from the payment queue, despite system popover states that "You're all set". </p>
  
  <p>I'm not aware if it's documented anywhere, but I assume that the failed transaction in this case indicates, that user hasn't been charged. And yet, this is source of confusion — how do we know after all, if user redeemed the offer successfully or not?</p>
  
  <p>What's more, the error property of the failed transaction, which is <a href="https://developer.apple.com/documentation/storekit/skpaymenttransactionstate/skpaymenttransactionstatefailed" rel="nofollow noreferrer">expected</a> to be used "to determine what happened" is actually <em>nil</em>. I'd like to consider the absence of error as an indirect evidence, that the transaction was actually successful, and yet I haven't seen any documentation to support this hypothesis.</p>
  
  <p>I realise that subscriptions offers were introduced very recently, but maybe we're missing something here?</p>
  
  <p>UPDATE: It looks like the <code>transaction.error</code> and <code>transaction.payment.paymentDiscount</code> are <em>nil</em> on the mac, but present on iPad (for same test account) for existing subscribers, though error message is still vague in the latter case: </p>
  
  <blockquote>
    <p>Error Domain=SKErrorDomain Code=0 "Cannot connect to iTunes Store"
    UserInfo={NSLocalizedDescription=Cannot connect to iTunes Store}</p>
  </blockquote>