Giter Site home page Giter Site logo

samuelmartini / solidus_avatax Goto Github PK

View Code? Open in Web Editor NEW

This project forked from follain/solidus_avatax

0.0 2.0 0.0 266 KB

Avatax integration with Solidus

License: BSD 3-Clause "New" or "Revised" License

Ruby 99.85% JavaScript 0.08% CSS 0.08%

solidus_avatax's Introduction

Solidus Avatax

Build Status

Avatax integration with Solidus.

Installation

In your Gemfile:

gem "solidus_avatax"

Then run from the command line:

bundle install
rails g solidus_avatax:install

Configuration

Disabling Avatax and Avatax API Timeouts

In case of service problems or outages on Avatax's end, you can disable Avatax or change the API timeout. These values are stored in the database so that they can be applied instantly and without restarting your application. To change the values create a new SpreeAvatax::Config. The default values are:

SpreeAvatax::Config.create!(enabled: true, timeout: SpreeAvatax::Config::DEFAULT_TIMEOUT)

This is an append-only table and solidus_avatax will read these config values from the last record (by id).

Short Ships

If you want to notify Avatax about short ships you should configure the following:

Spree::OrderCancellations.short_ship_tax_notifier = ->(unit_cancels) do
  SpreeAvatax::ShortShipReturnInvoice.generate(unit_cancels: unit_cancels)
end

Known Issues

  1. "Additional tax" (e.g. US taxes) is supported but "included tax" (e.g. VAT) is not. This feature is not on the roadmap but we'd be willing to look at pull requests for it.
  2. Note for future development: There is currently a bug in Solidus where the "open all adjustments" admin button doesn't work for line item adjustments. See here. If that bug were ever fixed, we'd want to monkey patch the controller action to prevent tax adjustments from ever being re-opened. We always want tax adjustments to be "closed", which tells Solidus not to try to recalculate them automatically.

Testing

First bundle your dependencies, then run rake. rake will default to building the dummy app if it does not exist, then it will run specs. The dummy app can be regenerated by using rake test_app.

bundle
bundle exec rake

Live tests are provided to insure that the Avalara gem works as promised. The credentials must be provided under spec/avalara_config.yml to run them successfully. See the example YAML for guidance.

username: 'USERNAME'
password: 'PASSWORD'
company_code: 'COMPANY'

These tests will communicate against the test Avatax API.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.