I am testing my billing and I got this exception:
java.lang.IllegalStateException: Can\'t start async operation (launchPurchaseFlow) because another async op
Just in case someone is missing the forest for the trees like I was...
I received a java.lang.IllegalStateException stack trace in the Play Developer Console which didn't provide much more than the error message... so I was stumped.
I couldn't figure out how this was happening at first because I never thought to try tapping the button that triggers IAB twice! (it looks disabled after the first tap due to an overlay that let's taps through, [sometimes]).
So, make sure your users can't tap your button twice.