api: pass expiration month and year in the purchase call

It seems that in some scenarii, the banks will verify the expiration
date (which is not stored in the Vault). We need to pass it along each
purchase call.

Signed-off-by: Pierre-Alexandre Meyer <pierre@ning.com>