Hi Michael,
Oops, sorry for responding quickly at first but then letting this sit.
stripe-php version is pretty well decoupled from API version, in that
stripe-php is willing to send whatever parameters you specify over the
wire, and stripe-php also infers object properties based on the
response that you get over the wire. In general, it should be safe to
upgrade to the latest-and-greatest stripe-php even if you want to keep
your API version as an old version.
Unfortunately, there isn't a way to view documentation for previous
API versions. We haven't done the required over time to differentiate
between bug fixes / changing mistakes in API docs, versus documenting
new features. With that being said, we'd be more than happy to answer
any particular questions that you have about old API versions (the
summaries of changes are always available at
https://stripe.com/docs/upgrades).
Also, as a general point about versioning
(
https://stripe.com/docs/api#versioning): when processing a request,
by default we use the API version that you have set on your account.
However, when you can set the API version specifically in your client
libraries, eg in PHP:
Stripe::setApiVersion("2013-10-29");
This will cause the library to send a Stripe-Version header over the
wire, overriding the default API version of your account
In terms of how API versioning plays with connect, we definitely bias
in favor of the connect application owner here. Plenty of connect
application users simply create Stripe accounts and connect them to
apps, making none of their own API requests, etc. Also, we want to
make sure that as a connect application owner, you experience unified
behavior across your connected merchants. So -- as a Connect
application *owner*, when you set your API version on your account,
this will apply to all requests that you make, even those that you are
making *on behalf of* your connected users. The same goes for using
Stripe::setApiVersion in PHP -- this works for requests made as your
own merchant, and also for requests that you are making on behalf of
your connected users. I hope I'm understanding your question there
and that that clarifies.
Cheers,
Jim