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: $.