SmartPay
Provides HMAC signing and verification when passing parameters
to and from Barclays SmartPay hosted payment pages.
More information can be found in the SmartPay hosted payment process integration guide
Usage
req = SmartPay::Request.new("Kah942*$7sdp0)", {
:merchant_reference => "Internet Order 12345",
:payment_amount => 10000,
:currency_code => "GBP",
:ship_before_date => "2007-10-20",
:skin_code => "4aD37dJA",
:merchant_account => "TestMerchant",
:shopper_locale => "en_GB",
:order_data => "H4sIAAAAAAAAALMpsOPlCkssyswvLVZIz89PKVZIzEtRKE4tKstMTi3W4+Wy0S+wAwDOGUCXJgAAAA==",
:session_validity => "2007-10-11T11:00:00Z",
:merchant_signature => "yARtfsxD47jeXzOlEyZ0j3pg="
})
req.hmac_signature # => 'x58ZcRVL1H6y+XSeBGrySJ9ACVo=\n'
res = SmartPay::Response.new("Kah942*$7sdp0)", {
:merchant_reference => "Internet Order 12345",
:skin_code => "4aD37dJA",
:shopper_locale => "en_GB",
:auth_result => "AUTHORISED",
:psp_reference => "1211992213193029",
:merchant_sig => "ytt3QxWoEhAskUzUne0P5VA9lPw="
})
res.verified # => true
Contributing
- Fork it
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Add some feature'
) - Run the tests (
bundle exec rake
) - Push to the branch (
git push origin my-new-feature
) - Create new Pull Request