Avalara · Capability

Avalara AvaTax REST API — Transactions

Avalara AvaTax REST API — Transactions. 6 operations. Lead operation: Avalara Retrieve a Single Transaction by Code. Self-contained Naftiko capability covering one Avalara business surface.

Run with Naftiko AvalaraTransactions

What You Can Do

GET
Gettransactionbycode — Avalara Retrieve a Single Transaction by Code
/v1/api/v2/companies/{companycode}/transactions/{transactioncode}
POST
Adjusttransaction — Avalara Adjust a Committed Transaction
/v1/api/v2/companies/{companycode}/transactions/{transactioncode}/adjust
POST
Committransaction — Avalara Commit a Transaction
/v1/api/v2/companies/{companycode}/transactions/{transactioncode}/commit
POST
Voidtransaction — Avalara Void a Transaction
/v1/api/v2/companies/{companycode}/transactions/{transactioncode}/void
POST
Createtransaction — Avalara Create a New Transaction
/v1/api/v2/transactions/create
POST
Refundtransaction — Avalara Create a Refund for a Transaction
/v1/api/v2/transactions/{transactioncode}/refund

MCP Tools

avalara-retrieve-single-transaction-code

Avalara Retrieve a Single Transaction by Code

read-only idempotent
avalara-adjust-committed-transaction

Avalara Adjust a Committed Transaction

avalara-commit-transaction

Avalara Commit a Transaction

avalara-void-transaction

Avalara Void a Transaction

avalara-create-new-transaction

Avalara Create a New Transaction

avalara-create-refund-transaction

Avalara Create a Refund for a Transaction

Capability Spec

avatax-rest-transactions.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Avalara AvaTax REST API — Transactions
  description: 'Avalara AvaTax REST API — Transactions. 6 operations. Lead operation: Avalara Retrieve a Single Transaction
    by Code. Self-contained Naftiko capability covering one Avalara business surface.'
  tags:
  - Avalara
  - Transactions
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    AVALARA_API_KEY: AVALARA_API_KEY
capability:
  consumes:
  - type: http
    namespace: avatax-rest-transactions
    baseUri: https://rest.avatax.com
    description: Avalara AvaTax REST API — Transactions business capability. Self-contained, no shared references.
    resources:
    - name: api-v2-companies-companyCode-transactions-transactionCode
      path: /api/v2/companies/{companyCode}/transactions/{transactionCode}
      operations:
      - name: gettransactionbycode
        method: GET
        description: Avalara Retrieve a Single Transaction by Code
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: transactionCode
          in: path
          type: string
          description: The transaction code to retrieve
          required: true
        - name: $include
          in: query
          type: string
          description: Comma-separated list of optional data to include (e.g., Lines, Details, Summary)
    - name: api-v2-companies-companyCode-transactions-transactionCode-adjust
      path: /api/v2/companies/{companyCode}/transactions/{transactionCode}/adjust
      operations:
      - name: adjusttransaction
        method: POST
        description: Avalara Adjust a Committed Transaction
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: transactionCode
          in: path
          type: string
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: api-v2-companies-companyCode-transactions-transactionCode-commit
      path: /api/v2/companies/{companyCode}/transactions/{transactionCode}/commit
      operations:
      - name: committransaction
        method: POST
        description: Avalara Commit a Transaction
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: transactionCode
          in: path
          type: string
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: api-v2-companies-companyCode-transactions-transactionCode-void
      path: /api/v2/companies/{companyCode}/transactions/{transactionCode}/void
      operations:
      - name: voidtransaction
        method: POST
        description: Avalara Void a Transaction
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: transactionCode
          in: path
          type: string
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: api-v2-transactions-create
      path: /api/v2/transactions/create
      operations:
      - name: createtransaction
        method: POST
        description: Avalara Create a New Transaction
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: api-v2-transactions-transactionCode-refund
      path: /api/v2/transactions/{transactionCode}/refund
      operations:
      - name: refundtransaction
        method: POST
        description: Avalara Create a Refund for a Transaction
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: transactionCode
          in: path
          type: string
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    authentication:
      type: bearer
      token: '{{env.AVALARA_API_KEY}}'
  exposes:
  - type: rest
    namespace: avatax-rest-transactions-rest
    port: 8080
    description: REST adapter for Avalara AvaTax REST API — Transactions. One Spectral-compliant resource per consumed operation,
      prefixed with /v1.
    resources:
    - path: /v1/api/v2/companies/{companycode}/transactions/{transactioncode}
      name: api-v2-companies-companycode-transactions-transactioncode
      description: REST surface for api-v2-companies-companyCode-transactions-transactionCode.
      operations:
      - method: GET
        name: gettransactionbycode
        description: Avalara Retrieve a Single Transaction by Code
        call: avatax-rest-transactions.gettransactionbycode
        with:
          transactionCode: rest.transactionCode
          $include: rest.$include
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/v2/companies/{companycode}/transactions/{transactioncode}/adjust
      name: api-v2-companies-companycode-transactions-transactioncode-adjust
      description: REST surface for api-v2-companies-companyCode-transactions-transactionCode-adjust.
      operations:
      - method: POST
        name: adjusttransaction
        description: Avalara Adjust a Committed Transaction
        call: avatax-rest-transactions.adjusttransaction
        with:
          transactionCode: rest.transactionCode
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/v2/companies/{companycode}/transactions/{transactioncode}/commit
      name: api-v2-companies-companycode-transactions-transactioncode-commit
      description: REST surface for api-v2-companies-companyCode-transactions-transactionCode-commit.
      operations:
      - method: POST
        name: committransaction
        description: Avalara Commit a Transaction
        call: avatax-rest-transactions.committransaction
        with:
          transactionCode: rest.transactionCode
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/v2/companies/{companycode}/transactions/{transactioncode}/void
      name: api-v2-companies-companycode-transactions-transactioncode-void
      description: REST surface for api-v2-companies-companyCode-transactions-transactionCode-void.
      operations:
      - method: POST
        name: voidtransaction
        description: Avalara Void a Transaction
        call: avatax-rest-transactions.voidtransaction
        with:
          transactionCode: rest.transactionCode
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/v2/transactions/create
      name: api-v2-transactions-create
      description: REST surface for api-v2-transactions-create.
      operations:
      - method: POST
        name: createtransaction
        description: Avalara Create a New Transaction
        call: avatax-rest-transactions.createtransaction
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/v2/transactions/{transactioncode}/refund
      name: api-v2-transactions-transactioncode-refund
      description: REST surface for api-v2-transactions-transactionCode-refund.
      operations:
      - method: POST
        name: refundtransaction
        description: Avalara Create a Refund for a Transaction
        call: avatax-rest-transactions.refundtransaction
        with:
          transactionCode: rest.transactionCode
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: avatax-rest-transactions-mcp
    port: 9090
    transport: http
    description: MCP adapter for Avalara AvaTax REST API — Transactions. One tool per consumed operation, routed inline through
      this capability's consumes block.
    tools:
    - name: avalara-retrieve-single-transaction-code
      description: Avalara Retrieve a Single Transaction by Code
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: avatax-rest-transactions.gettransactionbycode
      with:
        transactionCode: tools.transactionCode
        $include: tools.$include
      outputParameters:
      - type: object
        mapping: $.
    - name: avalara-adjust-committed-transaction
      description: Avalara Adjust a Committed Transaction
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: avatax-rest-transactions.adjusttransaction
      with:
        transactionCode: tools.transactionCode
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: avalara-commit-transaction
      description: Avalara Commit a Transaction
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: avatax-rest-transactions.committransaction
      with:
        transactionCode: tools.transactionCode
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: avalara-void-transaction
      description: Avalara Void a Transaction
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: avatax-rest-transactions.voidtransaction
      with:
        transactionCode: tools.transactionCode
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: avalara-create-new-transaction
      description: Avalara Create a New Transaction
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: avatax-rest-transactions.createtransaction
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: avalara-create-refund-transaction
      description: Avalara Create a Refund for a Transaction
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: avatax-rest-transactions.refundtransaction
      with:
        transactionCode: tools.transactionCode
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.