oscar-team / avatax-laravel
A Laravel package for Avalara AvaTax SDK integration
v1.3
2024-06-09 11:21 UTC
Requires
- php: >=7.3
- avalara/avataxclient: ^21.2
- illuminate/support: ^7.0|^8.0|^9.0|^10.0|^11.0
README
This package provides an integration with Avalara's AvaTax API for Laravel applications. It includes services for handling transactions, tax codes, tax rules, and more.
Installation
Step 1: Install the Package
You can install the package via Composer:
composer require oscar-team/avatax-laravel
Step 2: Publish the Configuration
Publish the package configuration using the following Artisan command:
php artisan vendor:publish --provider="OscarTeam\AvaTax\AvaTaxServiceProvider"
Step 3: Configure AvaTax
Add your Avalara credentials to the .env file:
AVATAX_APP_NAME=demo AVATAX_APP_VERSION=1 AVATAX_MACHINE_NAME=localhost AVATAX_ACCOUNT_ID=your_account_id AVATAX_LICENSE_KEY=your_license_key AVATAX_ENVIRONMENT=sandbox # or production
Usage
Example 1: Creating a Simple Transaction
use OscarTeam\AvaTax\Facades\AvaTax; use Avalara\DocumentType; // Create a new transaction $transaction = AvaTax::createTransaction([ 'companyCode' => 'DEFAULT', 'type' => DocumentType::C_SALESINVOICE, 'customerCode' => 'ABC', 'addresses' => [ 'SingleLocation' => [ 'line1' => '123 Main Street', 'city' => 'Irvine', 'region' => 'CA', 'postalCode' => '92615', 'country' => 'US' ] ], 'lines' => [ [ 'amount' => 100.0, 'quantity' => 1, 'itemCode' => 'P0000000' ] ] ]); echo '<pre>' . json_encode($transaction, JSON_PRETTY_PRINT) . '</pre>';