Link

This documention describes an overview of the InExchange API.

Base URLs:

Authentication

  • API Key (ApiKeyAuth)
    • Parameter Name: APIkey, in: header. API key to identify ERP system server
  • API Key (ClientTokenAuth)
    • Parameter Name: ClientToken, in: header. Token to identify the user

Tokens

Operations for token management

Create

POST /clienttokens/create

Create a new client token for a company

Parameters

Name Type Description
ErpId
(Required)
string The ERPId of the company
ValidTo string(date-time) Optional validity
User object Information about the user who is requesting the token
» FullName string Full name of the user
» UserName string Username of the user
» Email string The email of the user
» Roles [string] The users roles

Responses

Status Meaning Description Schema
200 OK Created client token ClientToken
Request
POST https://api.inexchange.com/v1/api/clienttokens/create HTTP/1.1
Host: api.inexchange.com
Content-Type: application/json
Accept: application/json

{
  "ErpId": "string",
  "ValidTo": "2019-08-24T14:15:22Z",
  "User": {
    "FullName": "string",
    "UserName": "string",
    "Email": "string",
    "Roles": [
      "string"
    ]
  }
}

Response
{
  "Token": "string",
  "ValidTo": "2019-08-24T14:15:22Z"
}

Revoke

POST /clienttokens/revoke

Revoke an existing client token

Parameters

Name Type Description
ClientToken
(Required)
string Client token to revoke

Responses

Status Meaning Description Schema
200 OK Successfully revoked a token None
Request
POST https://api.inexchange.com/v1/api/clienttokens/revoke HTTP/1.1
Host: api.inexchange.com
Content-Type: application/json

{
  "ClientToken": "string"
}

Search token

POST /clienttokens/createsearchtoken

Generate a temporary token for search without registering a company

Parameters

Name Type Description
SearchId string A unique identifier bound to the token. This should be unique per ERP-installation/company and should be resent on later generation requests when the token expire
ValidTo string(date-time) Optional validity

Responses

Status Meaning Description Schema
200 OK Temporary search token ClientToken
Request
POST https://api.inexchange.com/v1/api/clienttokens/createsearchtoken HTTP/1.1
Host: api.inexchange.com
Content-Type: application/json
Accept: application/json

{
  "SearchId": "string",
  "ValidTo": "2019-08-24T14:15:22Z"
}

Response
{
  "Token": "string",
  "ValidTo": "2019-08-24T14:15:22Z"
}

Companies

Operations for managing companies

Register

POST /companies/register

Register/Update details and activate services on a company. This call is async and the registration will be completed in the background.</br> Use call to GET /companies/status Read more here

Parameters

Name Type Description
ErpId
(Required)
string The ERPId of the company. This is the unique identifier of the company in your system
ErpProduct
(Required)
string Full product name and version number. For example: Vendor X, Full product name, 1.0.0.0
Name
(Required)
string Name of the company
Email
(Required)
string Email
CountryCode
(Required)
string Country code, eg. SE, DK, FI etc
AltName string Alternative name of the company or department store
StreetName string Street name
Department string Department name
PostBox string Post box
City string City
PostalZone string Postal zone
PostalCode string Postal code. Use PostalZone instead. Will only be used if PostalZone isn’t set
LanguageCode string Language code, eg. sv, da, fi etc
PhoneNo string Phone number
FaxNo string Fax number
OrgNo
(Required)
string Org number
VatNo string Vat number
GLN string GLN (Global location number)
IsVatRegistered boolean True if the company is regestered for VAT
Processes [string] List of all the serivces that should be active for the company

Detailed descriptions

Processes: List of all the serivces that should be active for the company

  • SendInvoices - The company would like to be able to send invoices
  • ReceiveInvoices - The company would like to be able to receive invoices
  • SendOrders - The company would like to send orders
  • ReceiveOrders - The company would like to receive orders

Enumerated Values

Parameter Value
Processes SendInvoices
Processes ReceiveInvoices
Processes SendOrders
Processes ReceiveOrders

Responses

Status Meaning Description Schema
202 Accepted The None
Request
POST https://api.inexchange.com/v1/api/companies/register HTTP/1.1
Host: api.inexchange.com
Content-Type: application/json

{
  "ErpId": "string",
  "ErpProduct": "string",
  "Name": "string",
  "Email": "string",
  "CountryCode": "string",
  "AltName": "string",
  "StreetName": "string",
  "Department": "string",
  "PostBox": "string",
  "City": "string",
  "PostalZone": "string",
  "PostalCode": "string",
  "LanguageCode": "string",
  "PhoneNo": "string",
  "FaxNo": "string",
  "OrgNo": "string",
  "VatNo": "string",
  "GLN": "string",
  "IsVatRegistered": true,
  "Processes": [
    "SendInvoices"
  ]
}

Set company details

POST /companies/details

Set company details

Parameters

Name Type Description
RegistrationId string Registration id that is later used to activate the company. Required when the company isn’t activated. </br> If the company is activated, this should be null and you should us a client token instead
ErpProduct
(Required)
string Full product name and version number. For example: Vendor X, Full product name, 1.0.0.0
Name
(Required)
string Name of the company
Email
(Required)
string Email
CountryCode
(Required)
string Country code, eg. SE, DK, FI etc
AltName string Alternative name of the company or department store
StreetName string Street name
Department string Department name
PostBox string Post box
City string City
PostalZone string Postal zone
PostalCode string Postal code. Use PostalZone instead. Will only be used if PostalZone isn’t set
LanguageCode string Language code, eg. sv, da, fi etc
PhoneNo string Phone number
FaxNo string Fax number
OrgNo string Org number
VatNo string Vat number
GLN string GLN (Global location number)
IsVatRegistered boolean True if the company is regestered for VAT
Processes [string] List of all the serivces that should be active for the company

Detailed descriptions

Processes: List of all the serivces that should be active for the company

  • SendInvoices - The company would like to be able to send invoices
  • ReceiveInvoices - The company would like to be able to receive invoices
  • SendOrders - The company would like to send orders
  • ReceiveOrders - The company would like to receive orders

Enumerated Values

Parameter Value
Processes SendInvoices
Processes ReceiveInvoices
Processes SendOrders
Processes ReceiveOrders

Responses

Status Meaning Description Schema
200 OK The None
Request
POST https://api.inexchange.com/v1/api/companies/details HTTP/1.1
Host: api.inexchange.com
Content-Type: application/json

{
  "RegistrationId": "string",
  "ErpProduct": "string",
  "Name": "string",
  "Email": "string",
  "CountryCode": "string",
  "AltName": "string",
  "StreetName": "string",
  "Department": "string",
  "PostBox": "string",
  "City": "string",
  "PostalZone": "string",
  "PostalCode": "string",
  "LanguageCode": "string",
  "PhoneNo": "string",
  "FaxNo": "string",
  "OrgNo": "string",
  "VatNo": "string",
  "GLN": "string",
  "IsVatRegistered": true,
  "Processes": [
    "SendInvoices"
  ]
}

Manage services

POST /companies/services

Activate services on a registered company. Companies are normally registered with POST /companies/details if you use this call. Read more here

Parameters

Name Type Description
RegistrationId string Registration id, was used in POST /companies/details. Required during first service activation
SearchId string Search id, used when creating temporary search tokens. Required during first service activation
ErpId
(Required)
string The ERPId of the company. Will be connected to the InExchange Company in InExchange. Used to deliver billing information, possibly invoices to ERP Recipient and correlate updates
CountryCode
(Required)
string Company country code, used for validation against the preregistration
OrgNo
(Required)
string Company organization number, used for validation against the preregistration

Responses

Status Meaning Description Schema
202 Accepted The None
Request
POST https://api.inexchange.com/v1/api/companies/services HTTP/1.1
Host: api.inexchange.com
Content-Type: application/json

{
  "RegistrationId": "string",
  "SearchId": "string",
  "ErpId": "string",
  "CountryCode": "string",
  "OrgNo": "string"
}

Company status

GET /companies/status

Get status of a company

Responses

Status Meaning Description Schema
200 OK none CompaniesStatusResponse
Request
GET https://api.inexchange.com/v1/api/companies/status HTTP/1.1
Host: api.inexchange.com
Accept: application/json

undefined

Response
{
  "Status": "string",
  "CompanyId": "string",
  "Details": {
    "Name": "string",
    "AltName": "string",
    "StreetName": "string",
    "PostBox": "string",
    "City": "string",
    "PostalZone": "string",
    "CountryCode": "string",
    "PhoneNo": "string",
    "OrgNo": "string",
    "VatNo": "string",
    "GLN": "string",
    "Processes": [
      "ReceiveInvoices"
    ],
    "PeppolParticipantIdentifiers": [
      "string"
    ],
    "Address": "string",
    "Address2": "string",
    "PostalCode": "string"
  }
}

Company details

GET /companies/details/{CompanyId}

Get details of a company in InExchange Network

Parameters

Name Type Description
CompanyId
(Required)
string ID of company

Responses

Status Meaning Description Schema
200 OK none CompanyDetailsResponse
Request
GET https://api.inexchange.com/v1/api/companies/details/{CompanyId} HTTP/1.1
Host: api.inexchange.com
Accept: application/json

undefined

Response
{
  "CompanyId": "string",
  "Name": "string",
  "AltName": "string",
  "CountryCode": "string",
  "StreetName": "string",
  "PostBox": "string",
  "City": "string",
  "PostalZone": "string",
  "PhoneNo": "string",
  "OrgNo": "string",
  "VatNo": "string",
  "GLN": "string",
  "ReceiveElectronicInvoiceCapability": "CannotReceiveElectronicInvoices",
  "SendsElectronicInvoiceCapability": "SendsElectronicInvoices",
  "ReceiveElectronicOrderCapability": "ReceivesElectronicOrders",
  "SendsElectronicOrderCapability": "SendsElectronicOrders",
  "HasInvoiceChecks": true,
  "InvoiceChecks": {
    "BuyerReferenceNo": true,
    "BuyerReferenceName": true,
    "BuyerOrderNo": true,
    "BuyerName": true
  },
  "Address": "string",
  "Address2": "string",
  "PostalCode": "string",
  "PeppolParticipantIdentifiers": [
    "string"
  ]
}

Add User

POST /companies/users

Add an user to a company

Parameters

Name Type Description
Email
(Required)
string Email
UserName string User name
CultureCode string Supported culture codes are en-GB (default),da-DK,fi-FI,is-IS,nn-NO,sv-SE

Responses

Status Meaning Description Schema
200 OK The User was successfully added None
400 Bad Request Returned if any of the required values is missing or that e.g. UserName, Email or Culture Code is not valid None
401 Unauthorized Returned if the supplied ClientToken does not have the privilege to add an User None
409 Conflict Returned if User could not be added, e.g. user name exists but is locked out, user name exists but is not approved or user name is already taken None
500 Internal Server Error Returned if an internal error occured None

Response Schema

Request
POST https://api.inexchange.com/v1/api/companies/users HTTP/1.1
Host: api.inexchange.com
Content-Type: application/json
Accept: application/json

{
  "Email": "any@any.com",
  "UserName": "user001",
  "CultureCode": "sv-SE"
}

Response
"UserName 'anyX' is invalid, must be at least 5 alphanumeric characters"
"UserName 'user001' is already taken"

Add Identifier

POST /companies/identifiers

Add an additional identifier

Parameters

Name Type Description
Type string The type of identifiers
Value string Value to set

Responses

Status Meaning Description Schema
200 OK The identifier was successfully added None
400 Bad Request Returned if argument is null, or not allowed to add identifier or supplied identifier type is not supported None
500 Internal Server Error Returned if an internal error occured None

Response Schema

Request
POST https://api.inexchange.com/v1/api/companies/identifiers HTTP/1.1
Host: api.inexchange.com
Content-Type: application/json
Accept: application/json

{
  "Type": "MyCompanySpecificID",
  "Value": 12345
}

Response
"Unsupported Type FaultyType. Expected one of MyCompanySpecificId"
"Internal Error"

Delete company

POST /companies/delete

Delete your company data from InExchange Network. The expected response is 202, indicating the request has been accepted for processing. The given unique identifier is persisted together with your api key, and they will together determine which registration that is deleted.

Parameters

Name Type Description
Id
(Required)
string The unique identifier of the company in your system

Responses

Status Meaning Description Schema
200 OK Ok is returned for duplicate requests None
202 Accepted Accepted is returned if the delete request was successfully persisted None
401 Unauthorized Unauthorized is returned if api key was invalid or required role DeleteRegistration was missing from api key None
500 Internal Server Error InternalServerError is returned if our system fails to persist your request for any reason None
501 Not Implemented NotImplemented is returned if all delete requests are disabled by feature toggle None
Request
POST https://api.inexchange.com/v1/api/companies/delete HTTP/1.1
Host: api.inexchange.com
Content-Type: application/json

{
  "Id": "9e5d8742-871a-4659-ac0f-f4ba89f0fde0"
}

Network

Operations for searching the InExchange Network

Buyer lookup

POST /buyerparties/lookup

Search for companies which can receive invoices or send orders

Parameters

Name Type Description
PartyId
(Required)
string Customer number
Name string Company name
Department string Department name
StreetName string Street name
PostBox string Post box
PostalZone string Postal zone
City string City
CountryCode string Country code, eg. SE, DK, FI etc
PhoneNo string Phone number
FaxNo string Fax number
Email string Email
GLN string GLN
OrgNo string Org number
VatNo string Vat number
PeppolParticipantIdentifier string Peppol participant identifier, schema:idvalue
PostalCode string Postal code. Use PostalZone instead. Will only be used if PostalZone isn’t set.

Responses

Status Meaning Description Schema
200 OK Search results BuyerPartyLookupResponse
Request
POST https://api.inexchange.com/v1/api/buyerparties/lookup HTTP/1.1
Host: api.inexchange.com
Content-Type: application/json
Accept: application/json

{
  "PartyId": "string",
  "Name": "string",
  "Department": "string",
  "StreetName": "string",
  "PostBox": "string",
  "PostalZone": "string",
  "City": "string",
  "CountryCode": "string",
  "PhoneNo": "string",
  "FaxNo": "string",
  "Email": "string",
  "GLN": "string",
  "OrgNo": "string",
  "VatNo": "string",
  "PeppolParticipantIdentifier": "string",
  "PostalCode": "string"
}

Response
{
  "PotentialMatches": 0,
  "ExactHit": true,
  "Parties": [
    {
      "CompanyId": "string",
      "Name": "string",
      "AltName": "string",
      "StreetName": "string",
      "PostBox": "string",
      "City": "string",
      "PostalZone": "string",
      "CountryCode": "string",
      "PhoneNo": "string",
      "OrgNo": "string",
      "VatNo": "string",
      "GLN": "string",
      "PeppolParticipantIdentifiers": [
        "string"
      ],
      "Address": "string",
      "Address2": "string",
      "PostalCode": "string",
      "Connected": true,
      "ReceiveElectronicInvoiceCapability": "CannotReceiveElectronicInvoices",
      "SendsElectronicOrderCapability": "SendsElectronicOrders"
    }
  ]
}

Seller lookup

POST /sellerparties/lookup

Search for companies which can send invoices or receive orders

Parameters

Name Type Description
PartyId
(Required)
string Customer number
Name string Company name
Department string Department name
StreetName string Street name
PostBox string Post box
PostalZone string Postal zone
City string City
CountryCode string Country code, eg. SE, DK, FI etc
PhoneNo string Phone number
FaxNo string Fax number
Email string Email
GLN string GLN
OrgNo string Org number
VatNo string Vat number
PeppolParticipantIdentifier string Peppol participant identifier, schema:idvalue
PostalCode string Postal code. Use PostalZone instead. Will only be used if PostalZone isn’t set.
PaymentMeans [object] none
» Iban string none
» AccountNo string none
» Bic string none
» CountryCode string none
» AccountTypeCode string none
» FinancialInstitutionId string none

Responses

Status Meaning Description Schema
200 OK Search results SellerPartyLookupResponse
Request
POST https://api.inexchange.com/v1/api/sellerparties/lookup HTTP/1.1
Host: api.inexchange.com
Content-Type: application/json
Accept: application/json

{
  "PartyId": "string",
  "Name": "string",
  "Department": "string",
  "StreetName": "string",
  "PostBox": "string",
  "PostalZone": "string",
  "City": "string",
  "CountryCode": "string",
  "PhoneNo": "string",
  "FaxNo": "string",
  "Email": "string",
  "GLN": "string",
  "OrgNo": "string",
  "VatNo": "string",
  "PeppolParticipantIdentifier": "string",
  "PostalCode": "string",
  "PaymentMeans": [
    {
      "Iban": "string",
      "AccountNo": "string",
      "Bic": "string",
      "CountryCode": "string",
      "AccountTypeCode": "string",
      "FinancialInstitutionId": "string"
    }
  ]
}

Response
{
  "PotentialMatches": 0,
  "ExactHit": true,
  "Parties": [
    {
      "CompanyId": "string",
      "Name": "string",
      "AltName": "string",
      "StreetName": "string",
      "PostBox": "string",
      "City": "string",
      "PostalZone": "string",
      "CountryCode": "string",
      "PhoneNo": "string",
      "OrgNo": "string",
      "VatNo": "string",
      "GLN": "string",
      "PeppolParticipantIdentifiers": [
        "string"
      ],
      "Address": "string",
      "Address2": "string",
      "PostalCode": "string",
      "Connected": true,
      "SendsElectronicInvoiceCapability": "SendsElectronicInvoices",
      "ReceiveElectronicOrderCapability": "ReceivesElectronicOrders"
    }
  ]
}

Company setup request

POST /network/setup

Issue a setup request to InExchange to add a company to InExchange Network

Parameters

Name Type Description
Operator object Operator details
» Name string Operator name
» ContactName string Contact name at operator
» ContactPhone string Contact phone number at operator
» ContactEmail string Contact email at operator
Name string Company name
Department string Department name
StreetName string Street name
PostBox string Post box
City string City
PostalZone string Postal zone
CountryCode string Country code, eg. SE, DK, FI etc
PhoneNo string Phone number
FaxNo string Fax number
Email string Email
GLN string GLN
OrgNo string Org number
VatNo string Vat number
AttachmentUri string Scanned letter from supplier or customer depending on ProcessType. </br> Upload using POST /documents
Processes [string] List of all the serivces that is expected of the company. </br> To request setup of a new invoice recipient, set this to at least ReceiveInvoices
NetworkSetupFeedbackEmail string If this contains a valid email, then feedback will be sent to this email on a succesful network setup request. If this is empty or missing then feedback will be sent to the email provided in the company registration

Enumerated Values

Parameter Value
Processes ReceiveInvoices
Processes SendInvoices
Processes ReceiveOrders
Processes SendOrders

Responses

Status Meaning Description Schema
202 Accepted Request id NetworkSetupResponse
400 Bad Request Invalid network feedback response email NetworkSetupResponseBadInput
Request
POST https://api.inexchange.com/v1/api/network/setup HTTP/1.1
Host: api.inexchange.com
Content-Type: application/json
Accept: application/json

{
  "Operator": {
    "Name": "string",
    "ContactName": "string",
    "ContactPhone": "string",
    "ContactEmail": "string"
  },
  "Name": "string",
  "Department": "string",
  "StreetName": "string",
  "PostBox": "string",
  "City": "string",
  "PostalZone": "string",
  "CountryCode": "string",
  "PhoneNo": "string",
  "FaxNo": "string",
  "Email": "string",
  "GLN": "string",
  "OrgNo": "string",
  "VatNo": "string",
  "AttachmentUri": "string",
  "Processes": [
    "ReceiveInvoices"
  ],
  "NetworkSetupFeedbackEmail": "string"
}

Response
{
  "RequestId": "string"
}

Outbound Documents

Operations for sending documents

Upload

POST /documents

Upload documents before sending them as invoices, order etc.

Parameters

Name Type Description
File string(binary) Binary data

Responses

Status Meaning Description Schema
202 Accepted Reference to the uploaded document None

Response Headers

Status Header Type Format Description
202 Location string   Document reference
Request
POST https://api.inexchange.com/v1/api/documents HTTP/1.1
Host: api.inexchange.com
Content-Type: multipart/form-data

{
  "File": "string"
}

Download Outbound

GET /documents/outbound/download/{DocumentId}

Get binary data of a previously sent document. </br></br> Easiest way to call this is to first call get status with file info using GET /api/{documentType}/outbound/{id}?includeFileInfo=true, GET /api/{documentType}/outbound/byerpid/{id}?includeFileInfo=true or POST /api/documents/outbound/list. In those results the complete URLs to outbound document’s files will be included.

Parameters

Name Type Description
DocumentId
(Required)
string(uuid) ID of document

Responses

Status Meaning Description Schema
200 OK Binary data of the requested document string
Request
GET https://api.inexchange.com/v1/api/documents/outbound/download/{DocumentId} HTTP/1.1
Host: api.inexchange.com
Accept: application/octet-stream

undefined

Response

Send

POST /documents/outbound

Send documents previously uploaded with POST /documents. Small documents can be uploaded directly using multipart posts

Parameters

Name Type Description
SendDocumentAs object none
» Type string none
» Paper object none
»» RecipientAddress object none
»»» Name string none
»»» Department string none
»»» StreetName string none
»»» PostBox string none
»»» PostalZone string none
»»» City string none
»»» CountryCode string none
»» ReturnAddress object none
»»» Name string none
»»» Department string none
»»» StreetName string none
»»» PostBox string none
»»» PostalZone string none
»»» City string none
»»» CountryCode string none
» Electronic object none
»» RecipientId string none
» Pdf object none
»» RecipientEmail string none
»» RecipientName string none
»» SenderEmail string none
»» SenderName string none
» BusinessToConsumer object none
»» FMI string none
»» SSN string none
»» Provider string none
RecipientInformation object none
» GLN string none
» OrgNo string none
» VatNo string none
» Name string none
» RecipientNo string none
» CountryCode string none
Document object none
» DocumentFormat
(Required)
string none
» ErpDocumentId string none
» DocumentUri
(Required)
string none
» RenderedDocumentFormat string none
» RenderedDocumentUri string none
» Language string none
» Culture string none
» Attachments [string] none

Enumerated Values

Parameter Value
» Type PDF
» Type Paper
» Type Electronic
» Type Electronic
» Type BusinessToConsumer

Responses

Status Meaning Description Schema
200 OK The None
Request
POST https://api.inexchange.com/v1/api/documents/outbound HTTP/1.1
Host: api.inexchange.com
Content-Type: application/json

{
  "SendDocumentAs": {
    "Type": "PDF",
    "Paper": {
      "RecipientAddress": {
        "Name": "string",
        "Department": "string",
        "StreetName": "string",
        "PostBox": "string",
        "PostalZone": "string",
        "City": "string",
        "CountryCode": "string"
      },
      "ReturnAddress": {
        "Name": "string",
        "Department": "string",
        "StreetName": "string",
        "PostBox": "string",
        "PostalZone": "string",
        "City": "string",
        "CountryCode": "string"
      }
    },
    "Electronic": {
      "RecipientId": "string"
    },
    "Pdf": {
      "RecipientEmail": "string",
      "RecipientName": "string",
      "SenderEmail": "string",
      "SenderName": "string"
    },
    "BusinessToConsumer": {
      "FMI": "string",
      "SSN": "string",
      "Provider": "string"
    }
  },
  "RecipientInformation": {
    "GLN": "string",
    "OrgNo": "string",
    "VatNo": "string",
    "Name": "string",
    "RecipientNo": "string",
    "CountryCode": "string"
  },
  "Document": {
    "DocumentFormat": "string",
    "ErpDocumentId": "string",
    "DocumentUri": "string",
    "RenderedDocumentFormat": "string",
    "RenderedDocumentUri": "string",
    "Language": "string",
    "Culture": "string",
    "Attachments": [
      "string"
    ]
  }
}

Invoice status

GET /invoices/outbound/{DocumentId}

Query status of a document that have been sent. </br></br> By supplying optional query string parameter includeFileInfo metadata for files related to the document should be included. The fileinfo contains URL:s that can be used for downloading the files. Default is not to include file information.

Parameters

Name Type Description
DocumentId
(Required)
string(uuid) ID of document
IncludeFileInfo boolean ID of document

Responses

Status Meaning Description Schema
200 OK none OutboundDocument
Request
GET https://api.inexchange.com/v1/api/invoices/outbound/{DocumentId} HTTP/1.1
Host: api.inexchange.com
Accept: application/json

undefined

Response
{
  "Error": {
    "Message": "string",
    "MoreInfoUri": "string",
    "Status": "string"
  },
  "StatusHistory": [
    {
      "Status": "Pending",
      "Time": "2019-08-24T14:15:22Z"
    }
  ],
  "Id": "string",
  "DocumentType": "string",
  "CurrentStatus": {
    "Status": "Pending",
    "Time": "2019-08-24T14:15:22Z"
  },
  "ErpDocumentId": "string"
}

ERP Invoice status

GET /invoices/outbound/byerpid/{DocumentId}

Query status of a document that have been sent by supplying id from ERP system. This requires that the document id is supplied in the send document command </br></br> By supplying optional query string parameter includeFileInfo metadata for files related to the document should be included. The fileinfo contains URL:s that can be used for downloading the files

Parameters

Name Type Description
DocumentId
(Required)
string(uuid) ID of document
IncludeFileInfo boolean ID of document

Responses

Status Meaning Description Schema
200 OK none OutboundDocument
Request
GET https://api.inexchange.com/v1/api/invoices/outbound/byerpid/{DocumentId} HTTP/1.1
Host: api.inexchange.com
Accept: application/json

undefined

Response
{
  "Error": {
    "Message": "string",
    "MoreInfoUri": "string",
    "Status": "string"
  },
  "StatusHistory": [
    {
      "Status": "Pending",
      "Time": "2019-08-24T14:15:22Z"
    }
  ],
  "Id": "string",
  "DocumentType": "string",
  "CurrentStatus": {
    "Status": "Pending",
    "Time": "2019-08-24T14:15:22Z"
  },
  "ErpDocumentId": "string"
}

List document statuses

POST /documents/outbound/list

Get a list of statuses for sent documents. </br></br> In request it’s possible to supply how to filter the list. It’s also possible to specify how many statuses to be returned and the offset from where to start fetching (used for paging)

Parameters

Name Type Description
Take integer none
Skip integer none
CreatedFrom string(date-time) none
CreatedTo string(date-time) none
UpdatedAfter string(date-time) none
DocumentType string none
Status string none
IgnoreStatuses [DocumentStatus] none
IncludeFileInfo boolean none
IncludeErrorInfo boolean none

Enumerated Values

Parameter Value
IgnoreStatuses Pending
IgnoreStatuses PendingInPlatform
IgnoreStatuses Converting
IgnoreStatuses ConversionComplete
IgnoreStatuses ConversionFailed
IgnoreStatuses Sent
IgnoreStatuses Delivered
IgnoreStatuses Stopped
IgnoreStatuses Sold

Responses

Status Meaning Description Schema
200 OK none DocumentOutboundListResponse
Request
POST https://api.inexchange.com/v1/api/documents/outbound/list HTTP/1.1
Host: api.inexchange.com
Content-Type: application/json
Accept: application/json

{
  "Take": 0,
  "Skip": 0,
  "CreatedFrom": "2019-08-24T14:15:22Z",
  "CreatedTo": "2019-08-24T14:15:22Z",
  "UpdatedAfter": "2019-08-24T14:15:22Z",
  "DocumentType": "string",
  "Status": "string",
  "IgnoreStatuses": [
    "Pending"
  ],
  "IncludeFileInfo": true,
  "IncludeErrorInfo": true
}

Response
{
  "TotalCount": 0,
  "Documents": [
    {
      "Error": {
        "Message": "string",
        "MoreInfoUri": "string",
        "Status": "string"
      },
      "StatusHistory": [
        {
          "Status": "Pending",
          "Time": "2019-08-24T14:15:22Z"
        }
      ],
      "Id": "string",
      "DocumentType": "string",
      "CurrentStatus": {
        "Status": "Pending",
        "Time": "2019-08-24T14:15:22Z"
      },
      "ErpDocumentId": "string"
    }
  ]
}

Inbound Documents

Operations for fetching documents

List

GET /documents/incoming

Parameters

Name Type Description
Type string Document type
SequenceNo integer Filter from sequence no

Enumerated Values

Parameter Value
Type Invoice
Type Order

Responses

Status Meaning Description Schema
200 OK none IncomingDocumentsResponse
Request
GET https://api.inexchange.com/v1/api/documents/incoming HTTP/1.1
Host: api.inexchange.com
Accept: application/json

undefined

Response
{
  "Documents": [
    {
      "Id": "string",
      "DocumentType": "string",
      "DocumentFormat": "string",
      "InfoUrl": "string",
      "DownloadUrl": "string",
      "SequenceNo": "string",
      "CompanyId": "string"
    }
  ],
  "Total": 0
}

Metadata

GET /documents/{DocumentId}/info

Get information about a incoming document. There are specialized version per document type

Parameters

Name Type Description
DocumentId
(Required)
string type

Responses

Status Meaning Description Schema
200 OK none IncomingDocumentInfo
Request
GET https://api.inexchange.com/v1/api/documents/{DocumentId}/info HTTP/1.1
Host: api.inexchange.com
Accept: application/json

undefined

Response
{
  "Id": "string",
  "DocumentType": "string",
  "DocumentFormat": "string",
  "DocumentUrl": "string",
  "RenderedDocumentFormat": "string",
  "RenderedDocumentUrl": "string",
  "Attachments": [
    "string"
  ]
}

Download Incoming

GET /documents/{DocumentId}

Get binary data of a document. There are specialized versions per document type.

Parameters

Name Type Description
DocumentId
(Required)
string type

Responses

Status Meaning Description Schema
200 OK Binary data None
Request
GET https://api.inexchange.com/v1/api/documents/{DocumentId} HTTP/1.1
Host: api.inexchange.com

undefined

Mark as handled

POST /documents/handled

Mark documents as handled, which causes them to disappear from the incoming lists

Responses

Status Meaning Description Schema
200 OK The None
Request
POST https://api.inexchange.com/v1/api/documents/handled HTTP/1.1
Host: api.inexchange.com
Content-Type: application/json

[
  "string"
]

Delivery methods

Operations for delivery methods

Setup B2C delivery method Kivra

POST /companies/deliverymethods/b2c/kivra

Setup B2C delivery method Kivra

Parameters

Name Type Description
LegalName string Legal name
DisplayName string Display name
OrgNo string Organization number
OrgVatNo string Organization number
ContactFirstname string Contact first name
ContactLastName string Contact last name
ContactPersonEmail string Contact person email
GeneralEmail string General email
ContactPhone string Contact phone number
PubAgreement boolean Agree to PubAgreement
TermsAndConditions boolean Agree to TermsAndConditions

Responses

Status Meaning Description Schema
200 OK Successful registration None
400 Bad Request Invalid registration input string
409 Conflict Registration conflict None

Response Headers

Status Header Type Format Description
200 Location string   Registration status
409 Location string   Registration status
Request
POST https://api.inexchange.com/v1/api/companies/deliverymethods/b2c/kivra HTTP/1.1
Host: api.inexchange.com
Content-Type: application/json
Accept: text/plain

{
  "LegalName": "Demo Company 083440-2861",
  "DisplayName": "Demo Company 083440-2861",
  "OrgNo": "083440-2861",
  "OrgVatNo": "SE083440286101",
  "ContactFirstname": "Firstname",
  "ContactLastName": "LastName",
  "ContactPersonEmail": "person@democompany.se",
  "GeneralEmail": "general@democompany.se",
  "ContactPhone": 46000000000,
  "PubAgreement": true,
  "TermsAndConditions": true
}

Response
"OrgVatNo is not valid"

Get status for B2C delivery method Kivra

GET /companies/deliverymethods/b2c/kivra

Get status for B2C delivery method Kivra

Responses

Status Meaning Description Schema
200 OK kivra registration info KivraStatusResponce
Request
GET https://api.inexchange.com/v1/api/companies/deliverymethods/b2c/kivra HTTP/1.1
Host: api.inexchange.com
Accept: application/json

undefined

Response
{
  "status": "Completed",
  "agreementStatus": "Signed",
  "agreementStart": "2019-08-24T14:15:22Z",
  "agreementEnd": "2019-08-24T14:15:22Z",
  "DisplayName": "string",
  "ContactPersonEmail": "string",
  "ContactFirstName": "string",
  "ContactLastName": "string",
  "GeneralEmail": "string",
  "ContactPhone": "string"
}

Update Kivra contact information

PATCH /companies/deliverymethods/b2c/kivra

Kivra contact information

Parameters

Name Type Description
OrgNo string Organization number
DisplayName string Display name
ContactFirstname string contact first name
ContactLastName string contact last name
ContactPersonEmail string Contact person email
GeneralEmail string general email
ContactPhone string contact phone number

Responses

Status Meaning Description Schema
200 OK Successful registration None
400 Bad Request Invalid registration update None
Request
PATCH https://api.inexchange.com/v1/api/companies/deliverymethods/b2c/kivra HTTP/1.1
Host: api.inexchange.com
Content-Type: application/json

{
  "OrgNo": "083440-2861",
  "DisplayName": "Demo Company 083440-2861",
  "ContactFirstname": "Firstname",
  "ContactLastName": "LastName",
  "ContactPersonEmail": "person@democompany.se",
  "GeneralEmail": "general@democompany.se",
  "ContactPhone": 46000000000
}

Update icon in Kivra UI

POST /companies/deliverymethods/b2c/kivra/icon

Update icon in Kivra UI

Parameters

Name Type Description
ContentType string the IANA media type corresponding to the file
Data string Base64-encoded PNG image
Filename string arbitrary file-name that is shown alongside the File in the Kivra GUI

Responses

Status Meaning Description Schema
200 OK Successful Kivra icon update None
400 Bad Request Invalid input string

Response Headers

Status Header Type Format Description
200 Location string   Icon url
Request
POST https://api.inexchange.com/v1/api/companies/deliverymethods/b2c/kivra/icon HTTP/1.1
Host: api.inexchange.com
Content-Type: application/json
Accept: text/plain

{
  "ContentType": "image/png",
  "Data": "-- PNG image data converted to base64 string --",
  "Filename": "radio-icon"
}

Response
"The request can't be processed due to the icon format not being compliant with the requirements"

OffBoard Kivra

POST /companies/deliverymethods/b2c/kivra/offboard

OffBoard Kivra

Responses

Status Meaning Description Schema
200 OK Successful Kivra offboard None

Response Headers

Status Header Type Format Description
200 Location string   Kivra status url
Request
POST https://api.inexchange.com/v1/api/companies/deliverymethods/b2c/kivra/offboard HTTP/1.1
Host: api.inexchange.com

undefined

Lookup persons registered in Kivra

POST /companies/deliverymethods/b2c/kivra/lookup

Lookup persons registered Kivra

Responses

Status Meaning Description Schema
200 OK Successful lookup None
400 Bad Request Lookup failed None

Response Headers

Status Header Type Format Description
200 Location string[]   Registered ssns in Kivra
400 Location string   Error message
Request
POST https://api.inexchange.com/v1/api/companies/deliverymethods/b2c/kivra/lookup HTTP/1.1
Host: api.inexchange.com

undefined

Schemas

IncomingDocumentsResponse

{
  "Documents": [
    {
      "Id": "string",
      "DocumentType": "string",
      "DocumentFormat": "string",
      "InfoUrl": "string",
      "DownloadUrl": "string",
      "SequenceNo": "string",
      "CompanyId": "string"
    }
  ],
  "Total": 0
}

Properties

Name Type Restrictions Description
Documents [IncomingDocument] none none
Total integer none none

IncomingDocument

{
  "Id": "string",
  "DocumentType": "string",
  "DocumentFormat": "string",
  "InfoUrl": "string",
  "DownloadUrl": "string",
  "SequenceNo": "string",
  "CompanyId": "string"
}

Properties

Name Type Restrictions Description
Id string none ID of document
DocumentType string none Document type
DocumentFormat string none Document format
InfoUrl string none Url to more information about the document. Such as the actual documents or attachments
DownloadUrl string none Url to the actual document to be downloaded
SequenceNo string none The number in the sequence this document arrived
CompanyId string none Is set if the methods is called as an operator

DocumentOutboundListResponse

{
  "TotalCount": 0,
  "Documents": [
    {
      "Error": {
        "Message": "string",
        "MoreInfoUri": "string",
        "Status": "string"
      },
      "StatusHistory": [
        {
          "Status": "Pending",
          "Time": "2019-08-24T14:15:22Z"
        }
      ],
      "Id": "string",
      "DocumentType": "string",
      "CurrentStatus": {
        "Status": "Pending",
        "Time": "2019-08-24T14:15:22Z"
      },
      "ErpDocumentId": "string"
    }
  ]
}

Properties

Name Type Restrictions Description
TotalCount integer none none
Documents [OutboundDocument] none none

NetworkSetupResponse

{
  "RequestId": "string"
}

Properties

Name Type Restrictions Description
RequestId string none The request id

NetworkSetupResponseBadInput

{
  "message": "string"
}

Properties

Name Type Restrictions Description
message string none Invalid NetworkSetupFeedbackEmail: {supplied mail} , must be missing, empty or contain a valid email

KivraStatusResponce

{
  "status": "Completed",
  "agreementStatus": "Signed",
  "agreementStart": "2019-08-24T14:15:22Z",
  "agreementEnd": "2019-08-24T14:15:22Z",
  "DisplayName": "string",
  "ContactPersonEmail": "string",
  "ContactFirstName": "string",
  "ContactLastName": "string",
  "GeneralEmail": "string",
  "ContactPhone": "string"
}

Properties

Name Type Restrictions Description
status string none none
agreementStatus string none none
agreementStart string(date-time) none Start aggrement
agreementEnd string(date-time) none Optional
DisplayName string none none
ContactPersonEmail string none none
ContactFirstName string none none
ContactLastName string none none
GeneralEmail string none none
ContactPhone string none none

Enumerated Values

Property Value
status Completed
status CompleteConflict
status Unknown
agreementStatus Signed
agreementStatus Expired
agreementStatus Failed

CompaniesStatusResponse

{
  "Status": "string",
  "CompanyId": "string",
  "Details": {
    "Name": "string",
    "AltName": "string",
    "StreetName": "string",
    "PostBox": "string",
    "City": "string",
    "PostalZone": "string",
    "CountryCode": "string",
    "PhoneNo": "string",
    "OrgNo": "string",
    "VatNo": "string",
    "GLN": "string",
    "Processes": [
      "ReceiveInvoices"
    ],
    "PeppolParticipantIdentifiers": [
      "string"
    ],
    "Address": "string",
    "Address2": "string",
    "PostalCode": "string"
  }
}

Properties

Name Type Restrictions Description
Status string none Registration status
CompanyId string none InExchange company id
Details object none Registered company details
» Name string none Name of the company
» AltName string none Department or alternative name
» StreetName string none Street name
» PostBox string none Post box
» City string none City
» PostalZone string none Postal zone
» CountryCode string none Country code, eg. SE, DK, FI etc
» PhoneNo string none Phone number
» OrgNo string none Org number
» VatNo string none Vat number
» GLN string none GLN (Global location number)
» Processes [string] none Active processes
» PeppolParticipantIdentifiers [string] none none
» Address string none Address. Read from StreetName instead
» Address2 string none Can be used for C/O address line. Read from PostBox instead
» PostalCode string none Postal code. Read from PostalZone instead

SellerPartyLookupResponse

{
  "PotentialMatches": 0,
  "ExactHit": true,
  "Parties": [
    {
      "CompanyId": "string",
      "Name": "string",
      "AltName": "string",
      "StreetName": "string",
      "PostBox": "string",
      "City": "string",
      "PostalZone": "string",
      "CountryCode": "string",
      "PhoneNo": "string",
      "OrgNo": "string",
      "VatNo": "string",
      "GLN": "string",
      "PeppolParticipantIdentifiers": [
        "string"
      ],
      "Address": "string",
      "Address2": "string",
      "PostalCode": "string",
      "Connected": true,
      "SendsElectronicInvoiceCapability": "SendsElectronicInvoices",
      "ReceiveElectronicOrderCapability": "ReceivesElectronicOrders"
    }
  ]
}

Properties

Name Type Restrictions Description
PotentialMatches integer none Number of potential matches if multiple matches. Only 256 results are returned
ExactHit boolean none Is set to true when an exact result is return. Exact results have only one party
Parties [object] none Parties found during lookup, zero or more
» CompanyId string none none
» Name string none none
» AltName string none none
» StreetName string none none
» PostBox string none none
» City string none none
» PostalZone string none none
» CountryCode string none none
» PhoneNo string none none
» OrgNo string none none
» VatNo string none none
» GLN string none none
» PeppolParticipantIdentifiers [string] none none
» Address string none none
» Address2 string none none
» PostalCode string none none
» Connected boolean none none
» SendsElectronicInvoiceCapability SendsElectronicInvoiceCapability none Which capabilities a company may have to receive e-invoices
* SendsElectronicInvoices - Company can send e-invoices
* CannotSendElectronicInvoices - Company cannot send e-invoices
* ContactRequiredBeforeSendingElectronicInvoices - Company sends e-invoices. You have to contact the company first to setup e-invoicing
* ErpSystemSupportsSendingElectronicInvoices - Company uses an ERP-system that support sending e-invoices, but it’s not activated
» ReceiveElectronicOrderCapability ReceiveElectronicOrderCapability none Which capabilities a company may have to receive e-invoices
* ReceivesElectronicOrders - Company can receive e-order
* CannotReceiveElectronicOrders - Company cannot receive e-order
* ContactRequiredBeforeReceivingElectronicOrders - Company receives e-order. You can send orders but expect that they will be stopped unless you have contacted the company first and agreed on which information that is required
* ErpSystemSupportsReceivingElectronicOrders - Company uses an ERP-system that support receiving e-orders, but it’s not activated

BuyerPartyLookupResponse

{
  "PotentialMatches": 0,
  "ExactHit": true,
  "Parties": [
    {
      "CompanyId": "string",
      "Name": "string",
      "AltName": "string",
      "StreetName": "string",
      "PostBox": "string",
      "City": "string",
      "PostalZone": "string",
      "CountryCode": "string",
      "PhoneNo": "string",
      "OrgNo": "string",
      "VatNo": "string",
      "GLN": "string",
      "PeppolParticipantIdentifiers": [
        "string"
      ],
      "Address": "string",
      "Address2": "string",
      "PostalCode": "string",
      "Connected": true,
      "ReceiveElectronicInvoiceCapability": "CannotReceiveElectronicInvoices",
      "SendsElectronicOrderCapability": "SendsElectronicOrders"
    }
  ]
}

Properties

Name Type Restrictions Description
PotentialMatches integer none Number of potential matches if multiple matches. Only 256 results are returned
ExactHit boolean none Is set to true when an exact result is return. Exact results have only one party
Parties [object] none Parties found during lookup, zero or more
» CompanyId string none none
» Name string none none
» AltName string none none
» StreetName string none none
» PostBox string none none
» City string none none
» PostalZone string none none
» CountryCode string none none
» PhoneNo string none none
» OrgNo string none none
» VatNo string none none
» GLN string none none
» PeppolParticipantIdentifiers [string] none none
» Address string none none
» Address2 string none none
» PostalCode string none none
» Connected boolean none none
» ReceiveElectronicInvoiceCapability ReceiveElectronicInvoiceCapability none Which capabilities a company may have to receive e-invoices
* CannotReceiveElectronicInvoices - Company cannot receive e-invoices
* ContactRequiredBeforeReceivingElectronicInvoices - Company receives e-invoices. You can send invoices but expect that they will be stopped unless you have contacted the company first and agreed on which information that is required
* ReceivingElectronicInvoices - Company receives e-invoices
* ErpSystemSupportsElectronicInvoices - Company uses an ERP-system that support receiving e-invoices, but it’s not activated
» SendsElectronicOrderCapability SendsElectronicOrderCapability none Which capabilities a company may have to receive e-invoices
* SendsElectronicOrders - Company can send e-order
* CannotSendElectronicOrders - Company cannot send e-order
* ContactRequiredBeforeSendingElectronicOrders - Company sends e-order. You have to contact the company first to setup e-order
* ErpSystemSupportsSendingElectronicOrders - Company uses an ERP-system that support sending e-order, but it’s not activated

ClientToken

{
  "Token": "string",
  "ValidTo": "2019-08-24T14:15:22Z"
}

Properties

Name Type Restrictions Description
Token string none none
ValidTo string(date-time) none none

ReceiveElectronicInvoiceCapability

"CannotReceiveElectronicInvoices"

Which capabilities a company may have to receive e-invoices

  • CannotReceiveElectronicInvoices - Company cannot receive e-invoices
  • ContactRequiredBeforeReceivingElectronicInvoices - Company receives e-invoices. You can send invoices but expect that they will be stopped unless you have contacted the company first and agreed on which information that is required
  • ReceivingElectronicInvoices - Company receives e-invoices
  • ErpSystemSupportsElectronicInvoices - Company uses an ERP-system that support receiving e-invoices, but it’s not activated

Properties

Name Type Restrictions Description
anonymous string none Which capabilities a company may have to receive e-invoices
* CannotReceiveElectronicInvoices - Company cannot receive e-invoices
* ContactRequiredBeforeReceivingElectronicInvoices - Company receives e-invoices. You can send invoices but expect that they will be stopped unless you have contacted the company first and agreed on which information that is required
* ReceivingElectronicInvoices - Company receives e-invoices
* ErpSystemSupportsElectronicInvoices - Company uses an ERP-system that support receiving e-invoices, but it’s not activated

Enumerated Values

Property Value
anonymous CannotReceiveElectronicInvoices
anonymous ContactRequiredBeforeReceivingElectronicInvoices
anonymous ReceivingElectronicInvoices
anonymous ErpSystemSupportsElectronicInvoices

SendsElectronicInvoiceCapability

"SendsElectronicInvoices"

Which capabilities a company may have to receive e-invoices

  • SendsElectronicInvoices - Company can send e-invoices
  • CannotSendElectronicInvoices - Company cannot send e-invoices
  • ContactRequiredBeforeSendingElectronicInvoices - Company sends e-invoices. You have to contact the company first to setup e-invoicing
  • ErpSystemSupportsSendingElectronicInvoices - Company uses an ERP-system that support sending e-invoices, but it’s not activated

Properties

Name Type Restrictions Description
anonymous string none Which capabilities a company may have to receive e-invoices
* SendsElectronicInvoices - Company can send e-invoices
* CannotSendElectronicInvoices - Company cannot send e-invoices
* ContactRequiredBeforeSendingElectronicInvoices - Company sends e-invoices. You have to contact the company first to setup e-invoicing
* ErpSystemSupportsSendingElectronicInvoices - Company uses an ERP-system that support sending e-invoices, but it’s not activated

Enumerated Values

Property Value
anonymous SendsElectronicInvoices
anonymous CannotSendElectronicInvoices
anonymous ContactRequiredBeforeSendingElectronicInvoices
anonymous ErpSystemSupportsSendingElectronicInvoices

SendsElectronicOrderCapability

"SendsElectronicOrders"

Which capabilities a company may have to receive e-invoices

  • SendsElectronicOrders - Company can send e-order
  • CannotSendElectronicOrders - Company cannot send e-order
  • ContactRequiredBeforeSendingElectronicOrders - Company sends e-order. You have to contact the company first to setup e-order
  • ErpSystemSupportsSendingElectronicOrders - Company uses an ERP-system that support sending e-order, but it’s not activated

Properties

Name Type Restrictions Description
anonymous string none Which capabilities a company may have to receive e-invoices
* SendsElectronicOrders - Company can send e-order
* CannotSendElectronicOrders - Company cannot send e-order
* ContactRequiredBeforeSendingElectronicOrders - Company sends e-order. You have to contact the company first to setup e-order
* ErpSystemSupportsSendingElectronicOrders - Company uses an ERP-system that support sending e-order, but it’s not activated

Enumerated Values

Property Value
anonymous SendsElectronicOrders
anonymous CannotSendElectronicOrders
anonymous ContactRequiredBeforeSendingElectronicOrders
anonymous ErpSystemSupportsSendingElectronicOrders

ReceiveElectronicOrderCapability

"ReceivesElectronicOrders"

Which capabilities a company may have to receive e-invoices

  • ReceivesElectronicOrders - Company can receive e-order
  • CannotReceiveElectronicOrders - Company cannot receive e-order
  • ContactRequiredBeforeReceivingElectronicOrders - Company receives e-order. You can send orders but expect that they will be stopped unless you have contacted the company first and agreed on which information that is required
  • ErpSystemSupportsReceivingElectronicOrders - Company uses an ERP-system that support receiving e-orders, but it’s not activated

Properties

Name Type Restrictions Description
anonymous string none Which capabilities a company may have to receive e-invoices
* ReceivesElectronicOrders - Company can receive e-order
* CannotReceiveElectronicOrders - Company cannot receive e-order
* ContactRequiredBeforeReceivingElectronicOrders - Company receives e-order. You can send orders but expect that they will be stopped unless you have contacted the company first and agreed on which information that is required
* ErpSystemSupportsReceivingElectronicOrders - Company uses an ERP-system that support receiving e-orders, but it’s not activated

Enumerated Values

Property Value
anonymous ReceivesElectronicOrders
anonymous CannotReceiveElectronicOrders
anonymous ContactRequiredBeforeReceivingElectronicOrders
anonymous ErpSystemSupportsReceivingElectronicOrders

CompanyDetailsResponse

{
  "CompanyId": "string",
  "Name": "string",
  "AltName": "string",
  "CountryCode": "string",
  "StreetName": "string",
  "PostBox": "string",
  "City": "string",
  "PostalZone": "string",
  "PhoneNo": "string",
  "OrgNo": "string",
  "VatNo": "string",
  "GLN": "string",
  "ReceiveElectronicInvoiceCapability": "CannotReceiveElectronicInvoices",
  "SendsElectronicInvoiceCapability": "SendsElectronicInvoices",
  "ReceiveElectronicOrderCapability": "ReceivesElectronicOrders",
  "SendsElectronicOrderCapability": "SendsElectronicOrders",
  "HasInvoiceChecks": true,
  "InvoiceChecks": {
    "BuyerReferenceNo": true,
    "BuyerReferenceName": true,
    "BuyerOrderNo": true,
    "BuyerName": true
  },
  "Address": "string",
  "Address2": "string",
  "PostalCode": "string",
  "PeppolParticipantIdentifiers": [
    "string"
  ]
}

Properties

Name Type Restrictions Description
CompanyId string none InExchange company id
Name string none Name of the company
AltName string none Department or alternative name
CountryCode string none Country code, eg. SE, DK, FI etc
StreetName string none Street name
PostBox string none Post box
City string none City
PostalZone string none Postal zone
PhoneNo string none Phone number
OrgNo string none Org number
VatNo string none Vat number
GLN string none GLN (Global location number)
ReceiveElectronicInvoiceCapability ReceiveElectronicInvoiceCapability none Which capabilities a company may have to receive e-invoices
* CannotReceiveElectronicInvoices - Company cannot receive e-invoices
* ContactRequiredBeforeReceivingElectronicInvoices - Company receives e-invoices. You can send invoices but expect that they will be stopped unless you have contacted the company first and agreed on which information that is required
* ReceivingElectronicInvoices - Company receives e-invoices
* ErpSystemSupportsElectronicInvoices - Company uses an ERP-system that support receiving e-invoices, but it’s not activated
SendsElectronicInvoiceCapability SendsElectronicInvoiceCapability none Which capabilities a company may have to receive e-invoices
* SendsElectronicInvoices - Company can send e-invoices
* CannotSendElectronicInvoices - Company cannot send e-invoices
* ContactRequiredBeforeSendingElectronicInvoices - Company sends e-invoices. You have to contact the company first to setup e-invoicing
* ErpSystemSupportsSendingElectronicInvoices - Company uses an ERP-system that support sending e-invoices, but it’s not activated
ReceiveElectronicOrderCapability ReceiveElectronicOrderCapability none Which capabilities a company may have to receive e-invoices
* ReceivesElectronicOrders - Company can receive e-order
* CannotReceiveElectronicOrders - Company cannot receive e-order
* ContactRequiredBeforeReceivingElectronicOrders - Company receives e-order. You can send orders but expect that they will be stopped unless you have contacted the company first and agreed on which information that is required
* ErpSystemSupportsReceivingElectronicOrders - Company uses an ERP-system that support receiving e-orders, but it’s not activated
SendsElectronicOrderCapability SendsElectronicOrderCapability none Which capabilities a company may have to receive e-invoices
* SendsElectronicOrders - Company can send e-order
* CannotSendElectronicOrders - Company cannot send e-order
* ContactRequiredBeforeSendingElectronicOrders - Company sends e-order. You have to contact the company first to setup e-order
* ErpSystemSupportsSendingElectronicOrders - Company uses an ERP-system that support sending e-order, but it’s not activated
HasInvoiceChecks boolean none This company has extra invoice checks which are performed before delivery of e-invoices
InvoiceChecks object none Details about any invoice checks before delivery
» BuyerReferenceNo boolean none Company has checks on reference no on received invoices
» BuyerReferenceName boolean none Company has checks on reference name on received invoices
» BuyerOrderNo boolean none Company has checks on order no on received invoices
» BuyerName boolean none Company has checks on the name of the recipient on received invoices
Address string none Address. Read from StreetName instead
Address2 string none Can be used for care of address line. Read from PostBox instead
PostalCode string none Postal code. Read from PostalZone instead
PeppolParticipantIdentifiers [string] none Peppol participant identifiers currently published

CompanyInfo

{
  "ErpProduct": "string",
  "Name": "string",
  "Email": "string",
  "CountryCode": "string",
  "AltName": "string",
  "StreetName": "string",
  "Department": "string",
  "PostBox": "string",
  "City": "string",
  "PostalZone": "string",
  "PostalCode": "string",
  "LanguageCode": "string",
  "PhoneNo": "string",
  "FaxNo": "string",
  "OrgNo": "string",
  "VatNo": "string",
  "GLN": "string",
  "IsVatRegistered": true,
  "Processes": [
    "SendInvoices"
  ]
}

Properties

Name Type Restrictions Description
ErpProduct</br><div class="requiredParam">(Required)</div> string none none
Name</br><div class="requiredParam">(Required)</div> string none none
Email</br><div class="requiredParam">(Required)</div> string none none
CountryCode</br><div class="requiredParam">(Required)</div> string none none
AltName string none none
StreetName string none none
Department string none none
PostBox string none none
City string none none
PostalZone string none none
PostalCode string none none
LanguageCode string none none
PhoneNo string none none
FaxNo string none none
OrgNo string none none
VatNo string none none
GLN string none none
IsVatRegistered boolean none none
Processes [string] none none

Party

{
  "CompanyId": "string",
  "Name": "string",
  "AltName": "string",
  "StreetName": "string",
  "PostBox": "string",
  "City": "string",
  "PostalZone": "string",
  "CountryCode": "string",
  "PhoneNo": "string",
  "OrgNo": "string",
  "VatNo": "string",
  "GLN": "string",
  "Address": "string",
  "Address2": "string",
  "PostalCode": "string",
  "Connected": true
}

Properties

Name Type Restrictions Description
CompanyId string none none
Name string none none
AltName string none none
StreetName string none none
PostBox string none none
City string none none
PostalZone string none none
CountryCode string none none
PhoneNo string none none
OrgNo string none none
VatNo string none none
GLN string none none
Address string none none
Address2 string none none
PostalCode string none none
Connected boolean none none

PartyLookup

{
  "PartyId": "string",
  "Name": "string",
  "Department": "string",
  "StreetName": "string",
  "PostBox": "string",
  "PostalZone": "string",
  "City": "string",
  "CountryCode": "string",
  "PhoneNo": "string",
  "FaxNo": "string",
  "Email": "string",
  "GLN": "string",
  "OrgNo": "string",
  "VatNo": "string",
  "PostalCode": "string"
}

Properties

Name Type Restrictions Description
PartyId string none none
Name string none none
Department string none none
StreetName string none none
PostBox string none none
PostalZone string none none
City string none none
CountryCode string none none
PhoneNo string none none
FaxNo string none none
Email string none none
GLN string none none
OrgNo string none none
VatNo string none none
PostalCode string none none

ErrorInfo

{
  "Message": "string",
  "MoreInfoUri": "string",
  "Status": "string"
}

Properties

Name Type Restrictions Description
Message string none The error message in plain text. It might be localized. To control which language you prefer then add the HTTP header “Accept-Language".
MoreInfoUri string none Additional information about the error. Is optional and may be null.
Status string none none

OutboundDocumentStatus

{
  "Status": "Pending",
  "Time": "2019-08-24T14:15:22Z"
}

Properties

Name Type Restrictions Description
Status DocumentStatus none none
Time string(date-time) none none

OutboundDocument

{
  "Error": {
    "Message": "string",
    "MoreInfoUri": "string",
    "Status": "string"
  },
  "StatusHistory": [
    {
      "Status": "Pending",
      "Time": "2019-08-24T14:15:22Z"
    }
  ],
  "Id": "string",
  "DocumentType": "string",
  "CurrentStatus": {
    "Status": "Pending",
    "Time": "2019-08-24T14:15:22Z"
  },
  "ErpDocumentId": "string"
}

Properties

Name Type Restrictions Description
Error ErrorInfo none none
StatusHistory [OutboundDocumentStatus] none none
Id string none none
DocumentType string none none
CurrentStatus OutboundDocumentStatus none none
ErpDocumentId string none none

IncomingDocumentInfo

{
  "Id": "string",
  "DocumentType": "string",
  "DocumentFormat": "string",
  "DocumentUrl": "string",
  "RenderedDocumentFormat": "string",
  "RenderedDocumentUrl": "string",
  "Attachments": [
    "string"
  ]
}

Properties

Name Type Restrictions Description
Id string none Id of the document
DocumentType string none Document type
DocumentFormat string none Document format
DocumentUrl string none Document url
RenderedDocumentFormat string none Rendered format
RenderedDocumentUrl string none Rendered document url
Attachments [string] none Any attachments

IncomingDocuments

{
  "Total": 0,
  "Documents": [
    {
      "Id": "string",
      "DocumentType": "string",
      "DocumentFormat": "string",
      "InfoUrl": "string",
      "DownloadUrl": "string",
      "SequenceNo": 0,
      "CompanyId": "string"
    }
  ]
}

Properties

Name Type Restrictions Description
Total integer none none
Documents [object] none none
» Id string none none
» DocumentType string none none
» DocumentFormat string none none
» InfoUrl string none none
» DownloadUrl string none none
» SequenceNo integer none none
» CompanyId string none none

DocumentStatus

"Pending"

Properties

Name Type Restrictions Description
anonymous string none none

Enumerated Values

Property Value
anonymous Pending
anonymous PendingInPlatform
anonymous Converting
anonymous ConversionComplete
anonymous ConversionFailed
anonymous Sent
anonymous Delivered
anonymous Stopped
anonymous Sold