def redeem!(account_code, currency = nil)
      redemption = redeem(account_code, currency)
      raise Invalid.new(self) unless redemption && redemption.persisted?
      redemption
    end
def redeem!(account_code, currency = nil)
      redemption = redeem(account_code, currency)
      raise Invalid.new(self) unless redemption && redemption.persisted?
      redemption
    end
Redeem a coupon on the given account code

 @param account_code [String] Acccount's account code
 @param currency [String] Three-letter currency code
 @raise [Invalid] If the coupon cannot be redeemed
 @return [Redemption] The Coupon Redemption