Category: Opinions

The Toshl Web App Gets a New Design: a Chat with Janez and Jan

We’re starting something a little different on our blog today. Instead of just telling you what’s new, we’ll have a chat with Toshl’s team members. Today we’re meeting Janez and Jan. No, they are not one of the Toshl monsters, they are humans and they are real. Or at least we certainly hope so. ;) One envisions the app’s unique design, while the other puts the ideas into practice by coding. In this chat, we’ll talk about the redesign of the Toshl Finance Web App and their work in this project.

Guys, could you introduce yourself? What are your main duties at Toshl?

Janez: I’m in charge of the design and illustration. This part is quite important for Toshl Finance apps. So my job is about creating the interface of our apps and graphics in general.

Jan: I bring designs of Janez to life. I’m in charge of web app development. In other words, it is my task to transform the data into web pictures in the browser, so they look like we imagined them. And, of course, we discuss how things should look like together with Janez. It’s constant teamwork.

Toshl’s web app has changed significantly with the latest release. What was the purpose of this transformation?

Janez: We wanted to achieve a new feel for the whole app, so that it looks lighter. We paid attention to optimising the entire experience, not only the bare graphical interface.  

Jan: We saw a chance to make the app look fresh. The previous version of the web app was developed about 4 years ago, and these are light years in the IT industry. Thus it needed some updates. The timing of the overall redesign coincided with the code refactoring that we did. Now the things comply with the latest industry standards and it is easier to make additional upgrades.

How could we see it in user experience?

Jan: The previous version was very flat and hierarchical relationships between view parts and elements were not really clear.  Now, when we added different shadows to the elements and made them look floating, when we put some things in the background and placed others in the front, it looks more clear. With the recent changes, it is quite simple to understand what you need to click next on the screen.

All in all, the whole experience became easier, didn’t it?

Janez: Yes. Now it is easier to understand things. Colouring and shapes of the elements help you orient throughout the app.

Jan: Web app navigation got better, too. We have developed advanced animations that show what happens when you click some element. Before, when you clicked something, the next screen popped up immediately. It was not easy to process this instant change for the user. Now it transforms smoothly. Also, when some element gets hidden, it animates into the button that can bring it back. So you know where to find it to revert your change. For instance, all toggles, steps, and buttons on “Add budget” dialog are dynamically animated to give a sense of where they came from or where they go when we don’t need them anymore. Everything became more intuitive.

Janez: We worked on the systematisation of the app’s design as well. It relates to the changes in the buttons, there are some changes in the fonts. In this area, we made the first steps towards a wider design system that could better evolve over time.

Jan: Or, for instance, we improved the contrast. The background got light white, the fonts got darker. So the app is easier on the eye.

Could this redesign confuse the people who use Toshl Finance?

Jan: Not at all. All the elements are in their previous places. Some important parts are just more emphasized. Some less important things are in the background. The first contact with the overhauled app should be quite effortless.

Could you remember any funny story that happened on the way of this project?

Janez:  We are a serious company, no jokes.

You are serious but you have Toshl Monsters. Did they change somehow?

Janez: Monsters reflect Toshl’s humour. They stay the same.

Jan: Monsters are eternal. No need to change them.

Are there any hints you would like to share with Toshl users?

Janez: Overall, the app stays the same. So far functionalities did not change with this web app design update. It is just a refreshed look.

Jan: We didn’t want to complicate… Gradual changes are always a better option.

Otherwise, do you use Toshl Finance in everyday life?

Jan: Yes, I do.

Janez: Yes. Sometimes I fall asleep and forget to enter some cash expense in Toshl. Then I wake up and come back to the app… You know, we must use it because we’ll get lower salary otherwise… (Laughing)

Posted in Development, Opinions

The Missing Pieces in Apple’s In-App Payments System

The in-app purchases on iOS have evolved greatly, if not rapidly, over the years since Apple has introduced the option to pay from within iOS apps using their payment system. They’re available everywhere where the App Store is, subscriptions are now available for most apps, webhooks were added, reporting is better and the Apple fee now drops to 15 % after a customer is subscribed for 1 year. All good improvements, but a giant and glaring omission remains, making the user experience worse for customers and lives more difficult for developers. Further still, Apple doesn’t show any inclination to fix the situation and fill in the feature void:

It’s impossible for app developers to search, cancel or refund iOS in-app payments.


Why is this important? 

To provide a better service and user experience for our customers.

Refunds. Sometimes a customer just upgraded short while ago, but accidentally made a double purchase or had different expectations of the functionality. In such cases a customer would contact our support and request a refund. When this happens best we can do is to tell them to contact the App Store support, as we can’t authorise the refund ourselves. This can be a bit difficult to understand for some, as we’re the ones operating Toshl otherwise.

Cancellations API. Our apps are available on multiple platforms. Let’s say a customer previously used the Android app and subscribed through Google Play or used the web app and upgraded via PayPal. Then, the customer buys an iPhone and extends the Toshl Pro subscription using in-app purchase. In this case, we’d automatically cancel the previous subscription on Google Play or PayPal, so only the most recent subscription on iOS would remain going forward.

This isn’t possible in the other direction. If a customer first subscribes using an iOS in-app subscription, then upgrades via PayPal, we’re not able to cancel the existing subscription on iOS. Best we can do is to tell the person to follow these rather convoluted instructions to cancel the previous subscription on iOS.

Unfortunately, this can quickly lead to accidental double payments as the customer forgets to cancel the previous subscription manually. Logically, they’ll contact to our support, requesting a refund where we can again tell them only to request it from Apple’s App Store support, thus creating more ire and a user experience quickly approaching Kafkaesque territory.

Search. Sometimes, we need to look up a specific payment. Either we’re not sure if it was completed successfully, we’re investigating a potential double payment or testing something. There are many reasons why this would be useful and of course goes hand in hand with the ability to refund or cancel subscriptions as mentioned above. This isn’t possible with iOS payments. While some of the data could be checked via APIs, most can’t, there’s no graphic interface to check.

The lack of these crucial components is even more evident when comparing to the other payment methods that we use. All of the functions mentioned above are easily available on Google Play, PayPal and Adyen (our credit card processor).


Why isn’t Apple fixing this?

I can’t be sure, but other than the lack of time and focus on other areas, a few possible reasons come to mind. It could be that Apple is afraid of a loss of control here. But their refund policies with their own support are quite liberal as it is. Potential abuse of the refunds could quickly be algorithmically detected. Other payment providers can seem to make it work well.

Privacy could be a potential concern, but it need not be. We’re not asking for any card details of the customer, addresses and names can be hidden, as Google Play already does. What we need most is the unique ID of the transaction and the ability to search by it and email.

It is possible that the refund ratio of all purchases would go up slightly, but it’s doubtful it would do so significantly. In any case, it’s a better long term business practice to let your customer choose your product because they want it not because the cancellation process is so damn convoluted.


We’ve contacted Apple’s support regarding this, but all we got is a standard non-response:

“I do not have any information on whether this change is in the works. I can advise you that Apple does take your feedback very seriously. Many changes to our program have been implemented by feedback from our developers.”

I’m sure we’re not the only app developers, who face these problems and would greatly appreciate to see these issue sorted. If you agree, please share this article so we can get some improvements to happen.


We love Apple’s products and for the most part they make our lives easier, both on the user as well as the development part. This is why this feels so much more as a black spot on an otherwise great user experience record.


Apple we beseech thee, please help us make user experiences better for both your and our customers.


Posted in Development, Opinions

We support internet neutrality, let’s make sure The European Union does too

We don’t often take public political views at Toshl, but internet neutrality is a very important one, one that deserves our attention. The future free development of the internet depends on it.

The European Parliament will tomorrow (3rd of April) vote on an interesting piece of legislation. It’s a regulation, for all of you who aren’t EU-buffs, that means it’s directly applicable EU legislation. It’s directly applied in all member countries and is hierarchically above the national legislation. It’s entitled Regulation of the European Parliament and of the Council laying down measures concerning the European single market for electronic communications and to achieve a Connected Continent – COM(2013) 627.

We know, quite a mouthful. Because it’s a regulation it will be in force everywhere in the EU. It goes a long way toward establishing a single EU communications market, synchronising spectrum auctions, improving consumer rights for the most part… Simply put, if this goes well, there will be pan-European internet operators (mobile and stationary) and you can forget about the roaming charges completely, since it will be all one market. This means better services and content across The European Union and great opportunities for companies, organisations and individuals to make our lives easier.

BUT! There is a caveat, the proposed regulation also contains some very harmful provisions when dealing with internet neutrality. It doesn’t guarantee internet neutrality, in fact, it establishes the right of communications companies to set up special service agreements, which are poorly defined and limited and could lead into the negation of internet neutrality. In practice, that could mean that content providers (think of any website, internet content, tool, app etc.) could be forced to pay extra for preferred access on the network, smaller latencies etc. This would in turn make it harder for smaller entrants to the field to compete as only large players would be able to afford such fees and skew the playing field. It would lessen competition and we would no longer have a longer playing field. In the longer term it could also have effects on freedom of expression if this results in a tiered internet, where content providers need to pay the telcos for decent access and operators are the ones who choose which services they prefer, instead of consumers.

These kind of things are already starting to happen in the United States, where the FCC decided not to enforce internet neutrality. Just see what’s beginning to happen with Comcast and Netlfix. These are only the first steps. It’s likely to get much worse. It can mean higher prices for consumers, less choice and more difficult entry for new entrants to the market. Disrupting old giants could become much harder for startups.

Slovenia, the home country of the Toshl team, already has internet neutrality enshrined into law. It’s the 203. article of Zakon o elektronskih komunikacijah (ZEKom-1 – Law on electronic communications). In that respect we have one of the most advanced legislations in the world as only The Netherlands and Chile guarantee internet neutrality to this extent.

Let’s ensure we don’t fall to the lowest common denominator and ensure that internet neutrality will become part of EU legislation as well.

Read more about the net neutrality vote on La Quadrature Du Net.

They have also prepared email you can send to Members of Parliament or call them, to insure that net neutrality will become law. The members of ALDE, S&D, Greens and GUE/NGL have also prepared an amendment which includes much better guarantees of internet neutrality and stricter definitions and framing of specialised services that exist on the networks.

Keep in mind these is the first reading in the European parliament, to be followed by approval of Member States in the European Council and another round of voting after, depending on the amendments proposed. There is much to be done if the final text will become something that will be to the true benefit of the European Union, not just partial interest of electronic communications operators. The game is afoot.

Posted in News coverage, Opinions

Microsoft Responds to Our Woes, Publishing on Windows Phone Marketplace Much Improved

In July, I wrote about our experiences with publishing Windows Phone apps on the Marketplace and compared it to walking barefoot on broken glass. Few months leading up to the post we had horrible experiences with publishing Windows Phone apps that broke the camel’s back and I felt I had to share what’s been going on in hopes of improvement. I’m glad to say things have much improved on the Marketplace front since then.

What happened next

The blog post generated quite a lot of interest and a lively debate on Hacker News. It turned out that the post was making the rounds at Microsoft as well, as the next day Joe Belfiore, VP of Windows Phone at Microsoft replied in the comments apologising and promising improvements. It was very refreshing seeing people very high up at Microsoft responding directly to developer concerns. It’s something that Apple is very much unwilling to do, so Microsoft’s approach was truly a breath of fresh air.


In fact the next week I had a call with the team in charge of the Windows Phone Marketplace and we went through the issues that we faced in the past months. They explained some of the background issues and promised improvements soon. Since they were obviously instructed by the management to initiate this meeting to appease us I was a bit sceptical about the actual delivery on these promises.
Luckily, I was soon very pleasantly surprised. Microsoft indeed updated their Windows Phone Dev Center and addressed most of the issues that were causing us problems. Let’s look at our original complaints and whether they were addressed.


Publishing apps worldwide – mostly fixed
With the update, they’ve expanded the developer registration to a lot more countries, including Slovenia and have quickly been adding new ones. Microsoft guys mentioned that they were previously using some of the components from the xBox publishing side, thus bring a lot of legacy issues such as illogically limited country support along. We’re glad that’s fixed now.


Publishing tools – mostly fixed
Uploading is much nicer now, Silverlight components make a lot less appearances making for a much nicer process. I can finally enter data normally in various browsers. The new layout is also much clearer and pleasing to the eyes. Some questionable UX decisions still remain and I’m clueless why the latest statistics I can get for app downloads are a week old, but other than the statistics the Dev Publishing tools are now better or on-par with other app marketplaces.



Publishing time – fixed
This is an area with really big improvements for us. We needed more than a month to get the app up last time due to slow response times and incomprehensible rejections, but lately that time has really improved. We suspect that we might have been especially flagged due to the publicity from the last post so your mileage may vary, but we generally get the app approved by the Marketplace team in about 3 days. It’s a big improvement and much faster than the week or two Apple’s App Store usually takes.


Moving apps to other accounts – ?
To be honest we can’t really update on this one since we haven’t attempted this since the last time. If any of our readers have info on the possibility of moving apps among developer accounts please let us know.


Ridiculous morality standards – probably fixed
After quite long discussions we came to the conclusion that the funny sentences in our apps probably had nothing to do with the rejection. Turns out that they simply lumped all the local-rejection reasons into one policy, thus bundling together a China Bing maps issue with morality standards of Quatar and leaving the developer in the dark about what was actually the issue. They mentioned they fixed that, but I’d be curious to know if anyone got rejected for similar reasons lately and how were the reasons communicated?


In conclusion, many things have been improved and I certainly hope they continue to make lives of developers easier. The update my previous metaphor, publishing on the Windows Phone Marketplace is no longer like walking barefoot on broken glass, but reminds much more of a barefoot stroll on a pebble beach. What we’d like to see now is that beach become more popular with more people. We’d prefer to be flexing our abs on a beach where more than a few percent of the hot girls come to.


Good luck Windows Phone, may your user experiences be smooth!
Posted in Development, Opinions

Why Publishing on the Windows Phone Marketplace is Like Walking Barefoot On Broken Glass

We started developing Toshl for Windows Phone because we liked the platform and saw the potential in it. It’s a beautifully designed OS, even if the experience starts to wear a bit thin after a few weeks and a giant leap for Microsoft. Publishing apps for it though, has turned out to be a very painful experience. From time to time the tale gets so surreal and horrible I sometimes wish Franz Kafka were alive to describe it instead of me.


World outside the few largest markets does not exist

While it’s possible to download applications from the Windows Phone Marketplace in Slovenia and many other countries, it’s impossible for developers to publish them with their own account. You simply cannot register a developer account. We are not even talking about the possibility of accepting payments, it’s impossible to publish free applications as well. Why they would insist on such a limitation is truly baffling.

So Microsoft Slovenia is kind enough to publish all the apps from Slovenian developers under their account. While that was better than nothing, it also meant that we didn’t have the access to publishing our own app or statistics about how the app was doing. Everything could only be done through email with the Microsoft Slovenia employees. What that also meant is that any phone which we wanted to use for development purposes had to be physically taken to Ljubljana, to the local Microsoft HQ to be unlocked. Doable, but highly annoying and time-consuming.

Imagine badgering employees at another company to hurry up with the upload by email each time you need to publish a bug fix, let alone optimise the description of the app.

Impossible to move the app to another account

We kept working on Toshl Finance, got a lot of new users (with little thanks to Windows Phone), established a US corporation and got accepted into 500 Startups. Since we now had a US company we could finally get our own Windows Phone developer account, get the app there and live happily ever after, right? Not so fast, Mr. Naïve.

When making an account Microsoft’s site would not accept any of three credit cards. One credit card was Slovenian, one French and one US all issued by different banks so I’m pretty sure the problem was on their side. Luckily we were at the 500 Startups offices and were just talking to a Microsoft developer evangelist before and he helped us out so we could create the account without the credit card.

Once we got that done, we wanted to move the app from the old account owned by Slovenian Microsoft to our new one. We were building and improving the app for more than a year after all, got a considerable amount of downloads and great ratings on the Marketplace. As there wasn’t any way to do this in the web interface we contacted the support. The Slovenian Microsoft helped, as well as our helpful developer evangelist in the Silicon Valley. Result after weeks of wasted time: CANNOT BE DONE. They don’t have the “technical ability.”

Their answer was that we had to remove the app from the Marketplace and upload it all again. That meant losing all the download statistics, ratings as well as the inability of existing users to update through the Marketplace mechanism. To be fair, we have the same problem with Apple and the App Store and they’re being even greater assholes about it.

It was a tough pill to swallow, but we had to do it to actually have control over our publishing. We said: let’s do it quickly, like pulling of a band-aid. Take it off the Marketplace first, so we can keep the app name and uploading it the same day. What a mistake to make. Lesson learnt: never take off a live app until you have a replacement already up, rename later.

Arbitrary Marketplace certification ridiculous “morality” standards

Beacuse Microsoft (like Apple), manually inspects and certifies each app it takes about a week from the upload to the publishing of the app. Since the app was already present on the Marketplace for a year without a problem we assumed it should be a routine thing and the app will again be available to our users very soon. Wrong again!

It took A MONTH to get the app back on the Marketplace, during which time our users could not download the app, many of them paying users. While dealing with the outfall Microsoft and the Windows Phone certification team kept coming up with stupider and stupider reasons to decline our app.

First we needed to state the privacy policy again (even though it was already explained in the app and our Privacy Policy available on our site). Keep in mind that was all ok for an entire year before and numerous updates. Then they decided that we logged location data without permission. The tracking of the location of the expense was of course completely optional and up to the user, but it was true that it was marked improperly at one place. Again, that was fine for an entire year before then!

Then came the icing on the cake. The third rejection because our app used a Bing map (which isn’t allowed in China), but more importantly, our app was immoral and contained inappropriate material. As such it could not be published in Indonesia, Malaysia, Saudi Arabia, Qatar, Iraq, United Arab Emirates… Keep in mind that Toshl is a personal finance app, it’s not about porn or gambling. Even after contacting their support they refused to elaborate on what was the offensive element.

We do try to put some humour into the apps. For example the Toshl monsters say funny sentences while syncing. We went through them one more time and the absolutely juiciest we could find is “I saw that expense you marked as “other toys.” Naughty.” It shows up randomly during sync and for max. 3 seconds. That was enough to get us banned in all those countries. We had no choice as they wouldn’t explain which exact thing was the violation and our loyal users have been already waiting for more than a month. We also refused to censor ourselves everywhere else due to puritanism of some Microsoft bureaucrats. So we disabled the distribution in those countries and published again. Finally, we got through.
We still had to email all our users, as they couldn’t update automatically from the Marketplace.

Incompetent publishing tools

The publishing platform on is of course built with Microsoft tools. Which means forms made in Silverlight. Which means PAIN. When our Windows Phone developer sends me the .XAP file to publish the app I usually publish from my Mac. I need to switch browsers to publish the app and even then it’s a horrible experience. Why?

Google Chrome: Cannot even open the submit form, keeps loading in perpetuity.
Firefox: The same.
Safari (what I use in the end): Can open the form, but each time I hit space in one of the text fields it jumps to the bottom of the page, making it impossible to edit any text and actually seeing it.

Furthermore the page is confusing and the statistics poor. Microsoft bury Silverlight once and for all!

Low numbers user numbers

The results in new users from publishing on the Windows Phone Marketplace are also very low. Negligible compared to the the App Store or the Android Market. I suppose you could also blame this on us and our promotional skills but we did quite a few things to get Toshl Finance better numbers on the Marketplace, got reviews on a lot of the Windows Phone dedicated sites etc. Quite simply there aren’t a lot of Windows Phone users. In the Toshl Finance ecosystem there’s even a few percent more BlackBerry users and A LOT more Symbian^3 and MeeGo users than Windows Phone.

Promotional bait and switch

We were talking to a Windows Phone developer evangelist a while back about how we could get our app featured in the Marketplace and get more users that way. We do have a 5 star rating in the Marketplace and the users love the app, problem is getting exposure. Don’t believe the 5 star? Check out the app on the Marketplace.

We wanted to get the app on our account first, how quickly that went you already know. They told us that we’d have a lot better chance with more Windows Phone specific features, like live tiles and to try and apply later on. Live tiles are a great idea, we love them and they really make understanding your finances at a glance easy, so we went for it.

Talking to the Windows Phone evangelist today we found out there’s basically no way to get into the Marketplace nomination program currently and that they’re only focusing on promoting the upcoming Windows 8 apps…. Not even on the phone (for which SDK isn’t available), but on the desktop. He also mentioned we should do desktop app as well. Yeah right. After a developer relationship like this, who in their right mind would hop on another “burning platform” of theirs.

Microsoft and the Windows Phone team: Get your act together! If you think you can make your platform matter on mobile while offering such experiences to developers you are sorely mistaken.

Posted in Development, Opinions