0.0
No release in over a year
Ruby bindings for the Paymob API.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Runtime

~> 2.7.5
~> 4.1.1
 Project Readme

Paymob

Unofficial Paymob Ruby gem for Paymob

Installation

Install the gem and add to the application's Gemfile by executing:

$ bundle add paymob

If bundler is not being used to manage dependencies, install the gem by executing:

$ gem install paymob

Next, you need to run the generator:

$ rails generate paymob:install

Usage

Configuration

Configure the gem with your configuration

PaymobRuby.configure do |config|
  config.api_key = "api_key"
  config.hmac_key = "hmac_key"
end

💡 You can get your API_KEY from Settings -> Account info -> API Key in your Paymob portal.

For reference on the internals & specifics of Paymob, please head to their official documentation here

Any API call will return an object with following methods:

result = PaymobRuby.doSomething
result.success?
result.failure?
result.payload
result.error

Creating a payment:

Using iframe:

user = { first_name: "John", last_name: "Doe", email: "johndoe@test.com", phone_number: "012xxxxxxxxx" }
result = PaymobRuby::PayCard.call(user:, amount: 10, integration_id: 12345678, iframe_id: 123)

Using motto:

user = { first_name: "John", last_name: "Doe", email: "johndoe@test.com", phone_number: "012xxxxxxxxx" }
result = PaymobRuby::PayToken.call(user:, amount: 10, integration_id: 12345678, token: "abc123")

Calculating hash

 PaymobRuby::Hmac.valid_signature?(paymob_response)

Errors:

Errors could be one of the following:

AuthenticationError
InvalidRequestError (With `param` attribute)
APIError

Contributing

Bug reports and pull requests are welcome.

License

The gem is available as open source under the terms of the MIT License.