The project is in a healthy, maintained state
A Ruby client for the Lemonway Onboarding API, providing an easy way to interact with the API for onboarding users and managing their accounts.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
 Dependencies

Runtime

>= 1.4
 Project Readme

LemonwayOnboarding

This gem provides access points to the new Lemonway onboarding API, making it easier to integrate and use the features offered by the Lemonway platform in your Ruby applications.

Installation

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

bundle add lemonway_onboarding

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

gem install lemonway_onboarding

Usage

To use the LemonwayOnboarding gem, first require it in your Ruby application:

require 'lemonway_onboarding'

Configuration

You can configure the gem globally, or pass a configuration to the client:

config = LemonwayOnboarding::Configuration.new do |c|
  c.token = 'your_api_token'
  c.environment = 'sandbox' # or 'production'
  # c.proxy = 'http://proxy.example.com:8080' # Optional
  # c.logger = Logger.new('lemonway.log')     # Optional
end

Creating a Client

Initialize a client with your Lemonway API credentials:

client = LemonwayOnboarding::Client.new(config)

Using the API

Accounts

accounts_api = LemonwayOnboarding::Api::Accounts.new(client)
# Create a business account
response = accounts_api.create('business', { name: 'My Company' })
# List accounts
accounts = accounts_api.index(status: 'active')
# Show a specific account
account = accounts_api.show(123)

Onboardings

onboardings_api = LemonwayOnboarding::Api::Onboardings.new(client)
# Create an onboarding
response = onboardings_api.create('individual', { first_name: 'John', last_name: 'Doe' })
# Resume an onboarding
resume = onboardings_api.update(456)

Documents

documents_api = LemonwayOnboarding::Api::Documents.new(client)
# Get a document for an account
doc = documents_api.get(789, 'identity')
# Update a document for an onboarding
updated = documents_api.update(321, { file: '...' })

Error Handling

All API calls will raise an exception if the request fails or times out. You can handle errors as follows:

begin
  response = accounts_api.create('business', { name: 'My Company' })
  puts response
rescue => e
  puts "Error: #{e.message}"
end

Logging

You can provide your own logger via the configuration. By default, logs are output to STDOUT.


For more advanced usage and available methods, please refer to the API documentation.

Development

After checking out the repo, run bin/setup to install dependencies. Then, run rake spec to run the tests. You can also run bin/console for an interactive prompt that will allow you to experiment.

To install this gem onto your local machine, run bundle exec rake install. To release a new version, update the version number in version.rb, and then run bundle exec rake release, which will create a git tag for the version, push git commits and the created tag, and push the .gem file to rubygems.org.

Contributing

Bug reports and pull requests are welcome on GitHub at https://github.com/Treize37/lemonway_onboarding. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the code of conduct.

License

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

Code of Conduct

Everyone interacting in the LemonwayOnboarding project's codebases, issue trackers, chat rooms and mailing lists is expected to follow the code of conduct.