A Porter provider for Stripe, an online payment processor. Unlike the official library, this implementation supports multiple instances and testing with mocks because it does not rely on global state.
This implementation currently is incomplete, however the API design currently serves as one of the better reference implementations for those wishing to write similar providers for other services. Pull requests for missing Stripe API features are more than welcome.
Add the dependency to your Composer files
Once the provider is registered simply import any of its resources to invoke Stripe functionality. For example, to create a charge we could import
$card = new Card('4242424242424242', 12, 2020, '123'); $response = $porter->importOne(new ImportSpecification(new CreateCharge($card)));