We gladly accept new gateways or bugfixes to this library. Please read the guidelines for reporting issues and submitting pull requests below.
- Please make clear in the subject what gateway the issue is about.
- Include the version of OffsitePayments, Ruby, ActiveSupport, and Nokogiri you are using.
- Fork it and clone your new repo
- Create a branch (
git checkout -b my_awesome_feature
) - Commit your changes (
git add my/awesome/file.rb; git commit -m "Added my awesome feature"
) - Push your changes to your fork (
git push origin my_awesome_feature
) - Open a Pull Request
The most important guidelines:
- All new integrations must have unit tests and functional remote tests.
- Your code should support all the Ruby versions and ActiveSupport versions we have enabled on Travis CI.
- No new gem dependencies will be accepted.
- XML: use Nokogiri for generating and parsing XML.
- JSON: use
JSON
in the standard library to parse and generate JSON. - HTTP: use
ActiveUtils::PostsData
to do HTTP requests. - Do not update the CHANGELOG, or the
OffsitePayments::VERSION
constant.
The addition of your payment integration to offsite_payments does not guarantee placement within Shopify. In order to have your gateway considered, please send an email to payment-integrations@shopify.com with Offsite_Payment Integration in the subject. Be sure to include:
- Name, URL & description of the payment provider you wish to integrate
- Markets served by this integration
- List of major supported payment methods
- Your most recent Certificate of PCI Compliance
- Check the semantic versioning page for info on how to version the new release.
- Update the
OffsitePayments::VERSION
constant in lib/offsite_payments/version.rb. - Add a
CHANGELOG
entry for the new release with the date - Run
bundle install
and commit the changes you've made. - Tag the release commit on GitHub:
bundle exec rake tag_release
- Release the gem to rubygems using ShipIt