LogoLogo
  • Qvalia Developer Tools
    • API
    • JSON/XML or JSON to XML
    • Attachments to messages
  • Quick Start
  • API Documentation
    • API's
      • Transaction API
        • Invoice APIs
        • CreditNote APIs
        • Order APIs
        • OrderResponse APIs
        • OrderChange APIs
        • OrderCancellation APIs
        • Catalogue APIs
        • DespatchAdvice APIs
      • Enrichment API
        • Enrichment API
      • Partner API
        • Partner API
      • Account API
        • Account Functions/Invoice Functions
  • Sample Data
    • API Sample Data
      • Invoice
      • CreditNote
      • Order
      • OrderResponse
      • OrderChange
      • OrderCancellation
      • Catalogue
      • DespatchAdvice
  • SFTP Integration
    • SFTP Integration
  • VAN Operator
    • Operators
  • Qvalia
    • Home
Powered by GitBook
On this page

Was this helpful?

Export as PDF
  1. API Documentation
  2. API's
  3. Transaction API

Invoice APIs

PreviousTransaction APINextCreditNote APIs

Was this helpful?

Read incoming invoices [transaction-type: Invoice]

get

Through this endpoint you will get any unread (=previously fetched) message(s). After you have fetched through this request the message will be automatically marked as read

The response, in JSON, will always include the three latest messages, per default. Using XML you always only get one (as there's no "array" function for XML).

With JSON, use the limit parameter to change the number of returned messages and combine it with offset to traverse through your available messages.

Authorizations
Path parameters
accountRegNostringRequired

Account registration number issued by Qvalia

Default: ""
Query parameters
limitstringOptional

How many messages to return in Array (XML is always one!)

Default: 3
offsetstringOptional

Where to start index for using limit/offset listing

Default: 0
includeReadstringOptional

If you are using the "read" enpoints, make it include previously read messages

Default: false
Header parameters
AuthorizationstringRequired

API key

Default: ""
AcceptstringOptional

Either "application/json" (default) or "application/xml"

Default: application/json
Responses
200
OK
204
No content
application/json
400
Bad Request
application/json
401
Unauthorized
application/json
403
Forbidden
application/json
404
Not Found
application/json
409
Conflict
application/json
422
Unprocessable Entity
application/json
500
Internal Server Error
application/json
get
GET /transaction/{accountRegNo}/invoices/incoming/readinvoices HTTP/1.1
Host: api-qa.qvalia.com
Authorization: 
Accept: */*
{
  "status": "success",
  "data": [
    {
      "{transaction-type}": {},
      "integrationId": "text"
    }
  ]
}

Get incoming invoices [transaction-type: Invoice]

get

The response, in JSON, will always include the three latest messages, per default. Using XML you always only get one (as there's no "array" function for XML).

With JSON, use the limit parameter to change the number of returned messages and combine it with offset to traverse through your available messages.

To get new messages only, use the "Read" endpoint instead!

Authorizations
Path parameters
accountRegNostringRequired

Account registration number issued by Qvalia

Default: ""
Query parameters
limitstringOptional

How many messages to return in Array (XML is always one!)

Default: 3
offsetstringOptional

Where to start index for using limit/offset listing

Default: 0
includeReadstringOptional

If you are using the "read" enpoints, make it include previously read messages

Default: false
integrationIdstringOptional

Qvalia unique identifier for the transaction/message

Default: ""
documentIdstringOptional

The document identifier of teh message, e.g. Invoice number

Default: ""
fromstringOptional

YYYY-MM-DD, e.g. 2024-01-01

Default: ""
tostringOptional

YYYY-MM-DD, e.g. 2024-01-01

Default: ""
updatedAtFromstringOptional

YYYY-MM-DD, e.g. 2024-01-01

Default: ""
updatedAtTostringOptional

YYYY-MM-DD, e.g. 2024-01-01

Default: ""
Header parameters
AuthorizationstringRequired

API key

Default: ""
AcceptstringOptional

Either "application/json" (default) or "application/xml"

Default: application/json
Responses
200
OK
204
No content
application/json
400
Bad Request
application/json
401
Unauthorized
application/json
403
Forbidden
application/json
404
Not Found
application/json
409
Conflict
application/json
422
Unprocessable Entity
application/json
500
Internal Server Error
application/json
get
GET /transaction/{accountRegNo}/invoices/outgoing HTTP/1.1
Host: api-qa.qvalia.com
Authorization: 
Accept: */*
{
  "status": "success",
  "data": [
    {
      "{transaction-type}": {},
      "integrationId": "text"
    }
  ]
}

Read outgoing invoices [transaction-type: Invoice]

get

Through this endpoint you will get any unread (=previously fetched) message(s). After you have fetched through this request the message will be automatically marked as read

The response, in JSON, will always include the three latest messages, per default. Using XML you always only get one (as there's no "array" function for XML).

With JSON, use the limit parameter to change the number of returned messages and combine it with offset to traverse through your available messages.

Authorizations
Path parameters
accountRegNostringRequired

Account registration number issued by Qvalia

Default: ""
Query parameters
limitstringOptional

How many messages to return in Array (XML is always one!)

Default: 3
offsetstringOptional

Where to start index for using limit/offset listing

Default: 0
includeReadstringOptional

If you are using the "read" enpoints, make it include previously read messages

Default: false
Header parameters
AuthorizationstringRequired

API key

Default: ""
AcceptstringOptional

Either "application/json" (default) or "application/xml"

Default: application/json
Responses
200
OK
204
No content
application/json
400
Bad Request
application/json
401
Unauthorized
application/json
403
Forbidden
application/json
404
Not Found
application/json
409
Conflict
application/json
422
Unprocessable Entity
application/json
500
Internal Server Error
application/json
get
GET /transaction/{accountRegNo}/invoices/outgoing/readinvoices HTTP/1.1
Host: api-qa.qvalia.com
Authorization: 
Accept: */*
{
  "status": "success",
  "data": [
    {
      "{transaction-type}": {},
      "integrationId": "text"
    }
  ]
}
  • GETGet incoming invoices [transaction-type: Invoice]
  • POSTCreate incoming invoices [transaction-type: Invoice]
  • GETRead incoming invoices [transaction-type: Invoice]
  • GETGet incoming invoices [transaction-type: Invoice]
  • POSTCreate outgoing invoices [transaction-type: Invoice]
  • GETRead outgoing invoices [transaction-type: Invoice]

Get incoming invoices [transaction-type: Invoice]

get

The response, in JSON, will always include the three latest messages, per default. Using XML you always only get one (as there's no "array" function for XML).

With JSON, use the limit parameter to change the number of returned messages and combine it with offset to traverse through your available messages.

To get new messages only, use the "Read" endpoint instead!

Authorizations
Path parameters
accountRegNostringRequired

Account registration number issued by Qvalia

Default: ""
Query parameters
limitstringOptional

How many messages to return in Array (XML is always one!)

Default: 3
offsetstringOptional

Where to start index for using limit/offset listing

Default: 0
includeReadstringOptional

If you are using the "read" enpoints, make it include previously read messages

Default: false
integrationIdstringOptional

Qvalia unique identifier for the transaction/message

Default: ""
documentIdstringOptional

The document identifier of teh message, e.g. Invoice number

Default: ""
fromstringOptional

YYYY-MM-DD, e.g. 2024-01-01

Default: ""
tostringOptional

YYYY-MM-DD, e.g. 2024-01-01

Default: ""
updatedAtFromstringOptional

YYYY-MM-DD, e.g. 2024-01-01

Default: ""
updatedAtTostringOptional

YYYY-MM-DD, e.g. 2024-01-01

Default: ""
Header parameters
AuthorizationstringRequired

API key

Default: ""
AcceptstringOptional

Either "application/json" (default) or "application/xml"

Default: application/json
Responses
200
OK
204
No content
application/json
400
Bad Request
application/json
401
Unauthorized
application/json
403
Forbidden
application/json
404
Not Found
application/json
409
Conflict
application/json
422
Unprocessable Entity
application/json
500
Internal Server Error
application/json
get
GET /transaction/{accountRegNo}/invoices/incoming HTTP/1.1
Host: api-qa.qvalia.com
Authorization: 
Accept: */*
{
  "status": "success",
  "data": [
    {
      "{transaction-type}": {},
      "integrationId": "text"
    }
  ]
}

Create incoming invoices [transaction-type: Invoice]

post

The request can be either JSON or XML. Each individual message must be POST'ed as an object, JSON Array is not suported!

Authorizations
Path parameters
accountRegNostringRequired

Account registration number issued by Qvalia

Default: ""
Query parameters
overWritebooleanOptional

For POST requests, chose to overwrite existing message upon 409 Conflict response

Default: false
Header parameters
AuthorizationstringRequired

API key

Default: ""
Content-TypestringOptional

Either "application/json" (default) or "application/xml"

Default: application/json
Body
InvoiceobjectOptional
Responses
200
OK
204
No content
application/json
400
Bad Request
application/json
401
Unauthorized
application/json
403
Forbidden
application/json
404
Not Found
application/json
409
Conflict
application/json
422
Unprocessable Entity
application/json
500
Internal Server Error
application/json
post
POST /transaction/{accountRegNo}/invoices/incoming HTTP/1.1
Host: api-qa.qvalia.com
Authorization: 
Content-Type: application/json
Accept: */*
Content-Length: 14

{
  "Invoice": {}
}
{
  "status": "success",
  "data": {
    "message": "{transaction-type} 100-1000 sent",
    "{transaction-type}_id": "100-1000",
    "integrationId": "4725a033-e501-4e2f-afa5-3a5c24eb5e28"
  }
}

Create outgoing invoices [transaction-type: Invoice]

post

The response, in JSON, will always include the three latest messages, per default. Using XML you always only get one (as there's no "array" function for XML).

With JSON, use the limit parameter to change the number of returned messages and combine it with offset to traverse through your available messages.

To get new messages only, use the "Read" endpoint instead!

Authorizations
Path parameters
accountRegNostringRequired

Account registration number issued by Qvalia

Default: ""
Query parameters
overWritebooleanOptional

For POST requests, chose to overwrite existing message upon 409 Conflict response

Default: false
Header parameters
AuthorizationstringRequired

API key

Default: ""
Content-TypestringOptional

Either "application/json" (default) or "application/xml"

Default: application/json
Body
InvoiceobjectOptional
Responses
200
OK
204
No content
application/json
400
Bad Request
application/json
401
Unauthorized
application/json
403
Forbidden
application/json
404
Not Found
application/json
409
Conflict
application/json
422
Unprocessable Entity
application/json
500
Internal Server Error
application/json
post
POST /transaction/{accountRegNo}/invoices/outgoing HTTP/1.1
Host: api-qa.qvalia.com
Authorization: 
Content-Type: application/json
Accept: */*
Content-Length: 14

{
  "Invoice": {}
}
{
  "status": "success",
  "data": {
    "message": "{transaction-type} 100-1000 sent",
    "{transaction-type}_id": "100-1000",
    "integrationId": "4725a033-e501-4e2f-afa5-3a5c24eb5e28"
  }
}