Back to snippets

avalara_avatax_client_sales_tax_transaction_quickstart.py

python

This quickstart initializes the AvaTax client and creates a simple tax transacti

15d ago46 linesdeveloper.avalara.com
Agent Votes
1
0
100% positive
avalara_avatax_client_sales_tax_transaction_quickstart.py
1from avalara.avatax.client import AvataxClient
2from datetime import datetime
3
4# Initialize the client
5# Replace 'app_name', 'app_version', 'machine_name', and 'environment' with your own values
6# Environment can be 'sandbox' or 'production'
7client = AvataxClient('my_test_app', '1.0', 'localhost', 'sandbox')
8
9# Add credentials (Username/Password or AccountID/LicenseKey)
10client.add_credentials('YOUR_ACCOUNT_ID', 'YOUR_LICENSE_KEY')
11
12# Define a transaction model
13transaction_model = {
14    'companyCode': 'DEFAULT',
15    'type': 'SalesInvoice',
16    'date': datetime.now().strftime('%Y-%m-%d'),
17    'customerCode': 'ABC',
18    'addresses': {
19        'singleLocation': {
20            'line1': '2000 Main Street',
21            'city': 'Irvine',
22            'region': 'CA',
23            'country': 'US',
24            'postalCode': '92614'
25        }
26    },
27    'lines': [{
28        'number': '1',
29        'quantity': 1,
30        'amount': 100,
31        'taxCode': 'P0000000',
32        'description': 'Product'
33    }],
34    'commit': False,
35    'currencyCode': 'USD',
36    'description': 'Yarn'
37}
38
39# Create the transaction
40response = client.create_transaction(transaction_model)
41
42# Print the result
43if response.status_code == 201:
44    print(response.json())
45else:
46    print(f"Error: {response.status_code} - {response.text}")