Fix case with declined card

We didn't account for the case where the user tried to pay
with a declined card. This adds the spec support for testing
declined cards.