For my part, there are a few simple lessons here:

  • Plan further in advance.
  • Plan for the unexpected.
  • Acknowledge that big companies are often incompetent.

I am currently in Victoria, BC. I intended to head back to Vancouver, BC today prior to going home in early April. I had reached the end of my AirBnb booking in Victoria and so needed to book my onward travel/accomodation in Vancouver.

I logged into AirBnb, found a place, went through the checkout and was met with this:

Bank could not confirm

I have had this card on file for months and months and have used it numerous times from numerous countries to book accomodation. I was bemused as to why it was not working. I tried again. Same issue.

Fortunately I use Monzo and they have absolutely awesome live support. I started a chat request with them and went through a detailled Q & A seesion to help them debug it. I chatted directly with an appropriately skilled technician. It was not their issue. They were not getting the requests, and were certainly not declining them. They explained how their systems worked and noted how if its an issue on their end they can 'see it' in some capacity.

I contacted AirBnb. They took hours and hours to reply and then replied with 'We will send it to someone who can help'. More hours later I got 'Its not our fault'. More hours later I got 'Its the banks fault'. Then I just got repeated messages explaining how banks need to authorise the transactions. The agent completely ignored all my points and just repeated cookie cutter responses.

I appreciate that AirBnb probably get loads of requests from people who are just doing stupid things but in this case it was fairly apparent that this was their issue.

I tried a Barclays debit card and a Barclays credit card. Both have more explicit verification processes for 'unusual' transactions. e.g ones from abroad. They block the transaction, send a text message asking you to verify you attempted the transaction (to which you reply 'Y'), and then you try again. When you try again they accept the transaction. I do this with lots of merchant, all the time.

Barclays verification

I explained to the AirBnb agent that I had completed the authorisation process (multiple times). He ignored me. I explained to the agent that this issue is documented by numerous other people. Ignored. Same old cookie cutter.

At 1am in the morning, 7 hours prior to flying to Vancouver I had to change my flight and negotiate with a friend to let me sleep on their floor for the following night. For the first time in my life I was battling the possibility of genuinly being on the streets simply because AirBnb refuse to acknowledge that they have an issue. With near enough any other product or service this would be totally OK but AirBnb is a home rental service. They allow people to have somewhere to sleep. It is totally inappropriate to stick yout fingers in your ears and pretend that it is not your fault when it is peoples safety at risk.

How I resolved it.

This gets even more stupid because I only could resolve this because I work in software. Noting people stating (in the thread linked above) that this seems to be caused by some sort of mismatch between the issuing cards country, the currency of the payment, and the location of the user.. I had a play.

I used the console to monitor the API requests being made behind the scenes. It looks as though AirBnb pay serious attention to your locale and currency choices.

Screenshot-2018-03-21-09.25.56

I am aware from previous experience that they like to charge you in your home currency so that they can also rip you off on currency exchange rates.

The method response makes reference to braintree_client_token. There are also other API calls to 'Braintree' many of which were serving up cached responses and reusing the same keys.

I investigated Braintree payments a little. They are a payment processor owned by Paypal and used by AirBnb. I can understand that companies don't want to acknowledge that their products and processes don't work.. but.. they should probably fix these issues.

As further evidence that this was not a bank issue my resolution was as follows.

  • Use a VPN to pretend I am in the UK.
  • Set up a Paypal account. Add your debit card.
  • Visit AirBnb UK.
  • Because you are on the UK version, apparently in the UK you will get a Paypal option.
  • Pay with Paypal. Your bank won't reject it because it was never them rejecting it :)
  • Write a blog post about how AirBnb are being dangerously irresponsible in their effort to not acknowledge their shortcomings.
  • Be thankful that companies like HarbourAir have good, flexible, and working payment systems that allow you to adjust flights at the last minute.
  • Be thankful that people are nice and let you sleep on their floors.
  • Be appreciative to the Monzo team for putting serious effort into trying to help/resolve the issue even though it wasn't their problem.