0.0
No release in over a year
Solidus integration with Nexio
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies
 Project Readme

SolidusNexio

Welcome to your new gem! In this directory, you'll find the files you need to be able to package up your Ruby library into a gem. Put your Ruby code in the file lib/solidus_nexio. To experiment with that code, run bin/console for an interactive prompt.

TODO: Delete this and the text above, and describe your gem

Installation

Add this line to your application's Gemfile:

gem 'solidus_nexio'

And then execute:

$ bundle install

Or install it yourself as:

$ gem install solidus_nexio

Usage

This is a example of Spree config for Paragon in config/initializers/spree.rb

Spree.config do |config|
  ...

  Rails.configuration.after_initialize do
    config.static_model_preferences.add(
      SolidusNexio::PaymentMethod,
      'nexio',
      server: ENV['NEXIO_ENV'] || 'sandbox', # production || sandbox
      merchant_id: ENV['NEXIO_MERCHANT_ID'],
      auth_token: ENV['NEXIO_AUTH_TOKEN'],
      public_key: ENV['NEXIO_PUBLIC_KEY'],
      three_d_secure: ENV['NEXIO_THREE_D_SECURE'].present?
    )
    config.static_model_preferences.add(
      SolidusNexio::AlternativePaymentMethod,
      'braintree_paypal_apm',
      server: ENV['NEXIO_ENV'] || 'sandbox', # production || sandbox
      merchant_id: ENV['NEXIO_MERCHANT_ID'],
      auth_token: ENV['NEXIO_AUTH_TOKEN'],
      payment_method: 'braintreePayPal',
      save_token: true
    )
    Spree::PaymentMethod
    config.static_model_preferences.add(
      SolidusNexio::AlternativePaymentMethod,
      'paypal_redirect',
      server: ENV['NEXIO_ENV'] || 'sandbox', # production || sandbox
      merchant_id: ENV['NEXIO_MERCHANT_ID'],
      auth_token: ENV['NEXIO_AUTH_TOKEN'],
      payment_method: 'payPal',
      save_token: true,
      customer_redirect: true
    )
    config.static_model_preferences.add(
      SolidusNexio::AlternativePaymentMethod,
      'apple_pay_by_cyber_source',
      server: ENV.fetch('NEXIO_ENV', 'sandbox'), # production || sandbox
      merchant_id: ENV['NEXIO_MERCHANT_ID'],
      auth_token: ENV['NEXIO_AUTH_TOKEN'],
      payment_method: 'applePayCyberSource',
      token_domain_presence: 'applePayDomain',
      save_token: true
    )
  end
end

Frontend Development

  1. Set the development mode for the webpacker in line #22 of webpack.config.js
mode: 'development',
  1. Add the gem as a local one in your app Gemfile
gem 'solidus_nexio', path: '~/apps/solidus_gems/solidus_nexio'
  1. Uncomment the line #52 in app/helpers/solidus_nexio/checkout_helper.rb
`cd #{::SolidusNexio.gem_dir}; yarn webpack --config webpack.config.js` if Rails.env.development?
  1. Reload the page you're debugging after any change in a js-file.
  2. Nota Bene
    1. Revert all changes above after your development is completed.
    2. Bump version in the following files:
      1. lib/solidus_nexio/version.rb
      2. package.json
    3. Delete the precompiled asserts in the app/assets/javascripts/ folder
    4. Precompile asserts for production:
      1. yarn webpack --config webpack.config.js
    5. Push your update to RubyGems: (Ref: https://guides.rubygems.org/publishing/)
      1. Build Gem
      gem build solidus_nexio
      
      1. Push Gem
      gem push solidus_nexio-0.6.9.gem
      
    6. Update the gem in your app

Contributing

Bug reports and pull requests are welcome on GitHub at https://github.com/[USERNAME]/solidus_nexio.