summaryrefslogtreecommitdiff
path: root/lib
AgeCommit message (Collapse)Author
2020-02-03v0.17.0v0.17.0Jared Norman
2020-02-03Add support for modifying order paramsJared Norman
2020-02-02v0.16.0v0.16.0Jared Norman
2020-01-22Remove unnecessay safe navigatorandrea longhi
The safe navigator is not necessary here, as all other method calls on `address` don't have it.
2020-01-22Avoid raising unnecessary errors with incomplete addressandrea longhi
When validating addresses, it may happen that the address has no country, so trying to fetch the country ISO raises an unnecessary error. Using ruby safe navigation prevents this to happen. Of course, the address will still result invalid eventually.
2020-01-14Add tax rate calculator classandrea longhi
This new calculator allows to retrieve tax rate information starting from a `Spree::Address` model. It shares some logic with the tax calculator, for example the ability to handle exceptions using `SolidusTaxJar.exception_handler` lambda.
2020-01-14Add SolidusTaxJar::API#tax_rate_forandrea longhi
When calculating tax rates, the recommended endpoint from TaxJar support for live calculations is `/v2/taxes`, the same used for calculating order taxes, as it accounts for all factors like sourcing or nexus, while the `/v2/rates` endpoint will return the full combined rate for the queried location.
2020-01-14Add SolidusTaxJar::APIParams.tax_rate_address_paramsandrea longhi
This helper converts a `Spree::Address` to address params that can be used to retrieve the tax rate for that location.
2020-01-14Add generic default cache_key procandrea longhi
`SuperGood::SolidusTaxJar.cache_key` uses different `APIParams` methods for calculating cache keys for different models.
2020-01-14Add CalculatorHelper for sharing logicandrea longhi
This module includes helper methods that can be shared among different calculators.
2019-06-26v0.15.2v0.15.2Jared Norman
2019-06-26Add order number to params loggingJared Norman
Much easier to trace a request by doing this.
2019-06-25v0.15.1v0.15.1Jared Norman
2019-06-25Add loggingJared Norman
This will log the params sent to and responses received from TaxJar in order to facilitate debugging production issues.
2019-06-25Add option to control logging behaviourJared Norman
2019-06-25v0.15.0v0.15.0Jared Norman
2019-06-25Make cache key a stringJared Norman
2019-05-28v0.14.0v0.14.0Jared Norman
2019-05-28Make use of taxable order checkJared Norman
This just uses the taxable order check configuration added in the parent commit to provide a hook to short circuit order tax checks.
2019-05-28Add configuration option for order tax checkJared Norman
This will allow apps to use properties of an order to determine whether an order is taxable.
2019-05-20v0.13.0v0.13.0Jared Norman
2019-05-13Send customer_id to TaxJar APIJared Norman
This is required to support per-customer exemptions through the TaxJar API.
2019-04-24Bump to v0.12.0v0.12.0Jared Norman
2019-04-24More hacks to handle zero dollar ordersJared Norman
I have a plan for how to handle these better in v1.0 though!
2019-04-24Report no tax collected when order zeroed outJared Norman
2019-04-11Bump to v0.11.1v0.11.1Jared Norman
2019-04-11Avoid sending negative order totalsJared Norman
If an order is adjusted to zero, we don't want to subtract the tax from it... because that don't make no sense. A better solution that properly factors in order level adjustments will be coming eventually, this is just a hack to process some orders immediately.
2019-04-11Bump to v0.11.0v0.11.0Jared Norman
2019-04-11Avoid sending 0 quantity line itemsJared Norman
2019-04-05Bump to v0.10.0v0.10.0Jared Norman
2019-04-05Make shipping amount calculator configurableJared Norman
Necessary if you need to factor in order level adjustments (boooooo) into your shipping amounts to make things add up correctly.
2019-03-24Bump to v0.9.1Jared Norman
2019-03-24Remove cache key hackJared Norman
This never actually worked as expected. While imperfect, use the order params directly will produce better results.
2019-03-24Bump to v0.9.0Jared Norman
2019-03-24Make cache duration configurableJared Norman
2019-03-24Make cache key configurableJared Norman
Some stores may want to more aggressively cache the responses, preferring fewer requests to more accurate results.
2019-03-24Sort config optionsJared Norman
I just like any list with more than half a dozen things to be sorted.
2019-03-20Bump to v0.8.0 and update changelogv0.8.0Jared Norman
2019-03-20Increase cache expiry timeJared Norman
2019-03-19Bump to v0.7.0, update CHANGELOG.mdJared Norman
2019-03-19Report full line item list for transactionsJared Norman
This sends the full list of line items in the order with their SKUs and tax codes when creating/updating transactions in TaxJar.
2019-03-14Bump VersionJuan Carlos Ruiz
2019-03-14Add guard clause for TaxLocation addressesJuan Carlos Ruiz
From Solidus Documentation: An order's tax_address can – through duck typing – be a Spree::TaxLocation instead of the shipping address. This adds a guard clause that validates if the tax_address is a TaxLocation, in this case we know that the address is incomplete.
2019-03-12Bump versionJuan Carlos Ruiz
2019-03-12Add incomplete_address? check methodJuan Carlos Ruiz
Solidus has deprecated the `empty?` method on https://github.com/solidusio/solidus/pull/1686 . This adds a private `incomplete_address?` method for avoid future problems and remove the deprecation warning in projects that uses this gem.
2019-02-06Provide Spree line items to label makerv0.6.0Jared Norman
2019-02-05Make labels customizable.Jared Norman
2019-02-05Make shipping tax label configurableJared Norman
2019-02-05Bump to v0.6.0Jared Norman
2019-02-05Introduce configurable taxable address checkv0.5.0Jared Norman