Vic.ai VAT Codes API
In some regions, VAT codes are part of your *ERP* **Masterdata**, that represent timeboxed VAT codes and VAT values that Vic.ai can automatically assign to invoice line items.
In some regions, VAT codes are part of your *ERP* **Masterdata**, that represent timeboxed VAT codes and VAT values that Vic.ai can automatically assign to invoice line items.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/vicai-vat-codes-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
version: v10.40.4
contact: {}
title: Vic.ai VAT Codes API
description: '## Introduction
The Vic.ai API provides a seamless connection between your Enterprise Resource
Planning (ERP) system and the Vic.ai product suite.'
servers:
- url: https://api.no.stage.vic.ai
description: staging server, NO
- url: https://api.us.vic.ai
description: production server, US
- url: https://api.no.vic.ai
description: production server, NO
security:
- BearerAuth: []
tags:
- name: VAT Codes
description: 'In some regions, VAT codes are part of your *ERP* **Masterdata**, that
represent timeboxed VAT codes and VAT values that Vic.ai can automatically
assign to invoice line items.'
paths:
/v0/vatCodes:
get:
description: 'Use this request to query all the VAT code data that are stored in
Vic.ai.'
summary: List all VAT codes
operationId: listVatCodes
tags:
- VAT Codes
parameters:
- $ref: '#/components/parameters/PagingLimit'
- $ref: '#/components/parameters/PagingCursor'
- $ref: '#/components/parameters/SinceFilter'
- $ref: '#/components/parameters/SortOrder'
- $ref: '#/components/parameters/VatCodeFilter'
- $ref: '#/components/parameters/UseSystemDefaultExternal'
responses:
'200':
$ref: '#/components/responses/VatCodesResponse'
'429':
$ref: '#/components/responses/TooManyRequestsResponse'
4XX:
$ref: '#/components/responses/ErrorResponse'
/v0/vatCodes/synchronize:
post:
description: 'Tells the ERP to synchronize the Vat Code resource. If the ERP is using
the API, the call will be sent via the normal webhook methods. If the
ERP is not using this API then this will call the native integration''s
synchronize functionality.'
summary: Synchronize Vat Codes
operationId: synchronizeVatCodes
tags:
- VAT Codes
responses:
'204':
$ref: '#/components/responses/SynchronizeVatCodesResponse'
'429':
$ref: '#/components/responses/TooManyRequestsResponse'
4XX:
$ref: '#/components/responses/ErrorResponse'
/v0/vatCodes/{id}:
get:
description: 'Use this request to get data for a single VAT code that is stored in
Vic.ai'
summary: Info for a specific VAT code
operationId: getVatCode
tags:
- VAT Codes
parameters:
- $ref: '#/components/parameters/PathId'
- $ref: '#/components/parameters/UseSystemDefaultExternal'
responses:
'200':
$ref: '#/components/responses/VatCodeResponse'
'429':
$ref: '#/components/responses/TooManyRequestsResponse'
4XX:
$ref: '#/components/responses/ErrorResponse'
put:
description: 'Use this request to *upsert* VAT code into Vic.ai.
The request body should contain the VAT code object as JSON.
If the VAT code is known by Vic.ai, the id supplied will be used to
resolve the VAT code and perform an update of the data, otherwise, a new
VAT code will be inserted.'
summary: Upserts a VAT code
operationId: upsertVatCode
tags:
- VAT Codes
parameters:
- $ref: '#/components/parameters/PathId'
- $ref: '#/components/parameters/UseSystemDefaultExternal'
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/VatCodeUpsert'
responses:
'201':
$ref: '#/components/responses/VatCodeUpsertedResponse'
'429':
$ref: '#/components/responses/TooManyRequestsResponse'
4XX:
$ref: '#/components/responses/ErrorResponse'
delete:
description: 'Use this request to delete data for a single VAT code that is stored in
Vic.ai'
summary: Deletes a VAT code
operationId: deleteVatCode
tags:
- VAT Codes
parameters:
- $ref: '#/components/parameters/PathId'
- $ref: '#/components/parameters/UseSystemDefaultExternal'
responses:
'201':
$ref: '#/components/responses/VatCodeDeletedResponse'
'429':
$ref: '#/components/responses/TooManyRequestsResponse'
4XX:
$ref: '#/components/responses/ErrorResponse'
components:
responses:
VatCodesResponse:
description: An array of VAT codes
content:
application/json:
schema:
$ref: '#/components/schemas/VatCodes'
VatCodeResponse:
description: A single VAT code.
content:
application/json:
schema:
$ref: '#/components/schemas/VatCode'
SynchronizeVatCodesResponse:
description: 'A request to synchronize the vat codes was acknowledged and is in the
process of being ran.
'
VatCodeDeletedResponse:
description: Vat code deleted successfully.
content:
application/json:
schema:
$ref: '#/components/schemas/VatCode'
TooManyRequestsResponse:
description: HTTP call rate limit exceeded.
headers:
Retry-After:
description: Number of seconds to wait before retrying the request. Waiting this long guarantees the rate-limit window has reset.
schema:
type: integer
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
ErrorResponse:
description: An unexpected error has occurred. Check the body for more details.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
VatCodeUpsertedResponse:
description: Vat code upserted successfully.
content:
application/json:
schema:
$ref: '#/components/schemas/VatCode'
schemas:
InternalId:
description: The internal id Vic uses for the record.
type: string
example: '47'
readOnly: true
VatCodeUpsert:
type: object
required:
- externalUpdatedAt
properties:
code:
type: string
maxLength: 255
description:
type: string
maxLength: 255
externalId:
oneOf:
- $ref: '#/components/schemas/ExternalId'
- type: 'null'
externalUpdatedAt:
type: string
format: date-time
description: 'The date time when the invoice was updated in the ERP system. This
does not have UTC normalization.
'
activeStartingAt:
type: string
format: date-time
activeEndingAt:
type: string
format: date-time
rate:
type: number
remoteData:
type: object
defaultInvoiceCreditAccount:
type: string
maxLength: 255
vatCreditAccount:
type: string
maxLength: 255
vatDebitAccount:
type: string
maxLength: 255
VatCodes:
type: array
items:
$ref: '#/components/schemas/VatCode'
VatCode:
type: object
required:
- internalId
- internalUpdatedAt
- code
- description
properties:
internalId:
$ref: '#/components/schemas/InternalId'
internalUpdatedAt:
type: string
description: The date time in UTC when the record was updated at.
format: date-time
externalId:
oneOf:
- $ref: '#/components/schemas/ExternalId'
- type: 'null'
externalUpdatedAt:
type: string
format: date-time
description: 'The date time when the invoice was updated in the ERP system. This
does not have UTC normalization.
'
code:
type: string
maxLength: 255
description:
type: string
maxLength: 255
activeStartingAt:
type: string
format: date-time
activeEndingAt:
type: string
format: date-time
rate:
type: number
remoteData:
type: object
defaultInvoiceCreditAccount:
type: string
maxLength: 255
vatCreditAccount:
type: string
maxLength: 255
vatDebitAccount:
type: string
maxLength: 255
ExternalId:
description: 'The external id set by the ERP system. It does not have to be a UUID and
can be any non empty string desired.
'
type: string
example: 21b31bc7-1267-4335-893c-d7fe4706a238
maxLength: 255
ErrorString:
type: string
maxLength: 255
Error:
description: 'generic error message in JSON format. Note the ''code'' field should
match the HTTP status code of the wrapping HTTP request.
'
type: object
required:
- code
- message
properties:
code:
type: integer
minimum: 100
maximum: 599
message:
$ref: '#/components/schemas/ErrorString'
parameters:
PagingLimit:
name: limit
in: query
description: How many items to return at one time (max 100) (default 100)
required: false
schema:
type: integer
minimum: 1
maximum: 100
UseSystemDefaultExternal:
name: useSystem
in: query
description: 'Which system to use for id or updatedAt filters.
'
required: false
schema:
type: string
enum:
- INTERNAL
- EXTERNAL
- internal
- external
default: EXTERNAL
SortOrder:
name: sortOrder
in: query
description: what sort order should be used for queries
required: false
schema:
type: string
enum:
- ASCENDING
- DESCENDING
default: ASCENDING
PathId:
name: id
in: path
required: true
description: The id of the database entry
schema:
type: string
SinceFilter:
name: since
in: query
description: 'Datetime value for incremental updates.
**NOTE**: For external datetimes, the expected format is not in UTC. for
vic-internal datetimes (see `SinceIsExternal`) the format is UTC.
'
required: false
schema:
type: string
format: date-time
PagingCursor:
name: cursor
in: query
description: Which item to start from. See [Pagination](#section/Pagination) for more information.
required: false
schema:
type: string
VatCodeFilter:
name: vatCode
in: query
description: selects the VAT code which is to be displayed
required: false
schema:
type: string
securitySchemes:
BearerAuth:
type: http
scheme: bearer
x-tagGroups:
- name: Integration
tags:
- Authentication
- Pagination
- Webhooks
- Webhook Subscriptions
- Webhook Events
- Synchronizing
- Status
- name: Master Data
tags:
- Accounts
- Dimensions
- Vendors
- Vendor Groups
- Vendor Tags
- Tags
- Tax Codes
- VAT Codes
- Payment Terms
- name: Organization & Access
tags:
- Partners
- Organizations
- Companies
- Users
- name: Invoices & Bills
tags:
- Invoices
- Bills
- Attachments
- Invoice Approval Flows
- Invoice Posting Guide
- Training Invoices
- name: Purchase Orders
tags:
- Purchase Orders
- Purchase Order Line Items
- Purchase Order Matching Guide
- name: Payments
tags:
- Payment Batches
- Payment Confirmations
- Credit Confirmations
- name: Reporting
tags:
- CSV Reports
- name: Reference
tags:
- Changelog