Skip to main content
POST
/
accounting
/
suppliers
cURL
curl --request POST \
  --url https://api.maesn.dev/accounting/suppliers \
  --header 'Content-Type: application/json' \
  --header 'X-ACCOUNT-KEY: <x-account-key>' \
  --header 'X-API-KEY: <x-api-key>' \
  --data '{
  "addresses": [
    {
      "addressLine1": "Lucky street 1",
      "addressLine2": "2nd floor",
      "city": "Berlin",
      "countryCode": "DE",
      "postalCode": "10243",
      "type": "BILLING"
    }
  ],
  "bankAccount": {
    "bic": "COBADEFFXXX",
    "holder": "John Doe",
    "iban": "DE89370400440532013000",
    "isMainAccount": true,
    "name": "Sparkasse",
    "sepa": true
  },
  "companyName": "maesn",
  "contactType": "CONTACT_PERSON",
  "contactPersons": [
    {
      "emailAddresses": [
        {
          "email": "john.doe@company.com",
          "type": "BUSINESS"
        }
      ],
      "firstName": "John",
      "lastName": "Doe",
      "phoneNumbers": [
        {
          "number": "+49 7163307056",
          "type": "MOBILE"
        }
      ],
      "salutation": "Mr"
    }
  ],
  "documentId": "Z1248601M",
  "emailAddresses": [
    {
      "email": "john.doe@company.com",
      "type": "BUSINESS"
    }
  ],
  "number": "1042",
  "phoneNumbers": [
    {
      "number": "+49 7163307056",
      "type": "MOBILE"
    }
  ],
  "projectId": "3",
  "vatId": "DE123456789"
}'
{
  "meta": {
    "warnings": [
      "Field not used by target system"
    ],
    "pagination": {
      "total": 123,
      "perPage": 123,
      "currentPage": 123,
      "totalPages": 123
    }
  },
  "data": {
    "id": "92c4f3a2-5b8e-4d1b-8a0c-9f6e7d2f3e4b",
    "addresses": [
      {
        "addressLine1": "Lucky street 1",
        "addressLine2": "2nd floor",
        "city": "Berlin",
        "countryCode": "DE",
        "postalCode": "10243",
        "type": "BILLING"
      }
    ],
    "companyName": "maesn",
    "contactType": "CONTACT_PERSON",
    "contactPersons": [
      {
        "emailAddresses": [
          {
            "email": "john.doe@company.com",
            "type": "BUSINESS"
          }
        ],
        "firstName": "John",
        "lastName": "Doe",
        "phoneNumbers": [
          {
            "number": "+49 7163307056",
            "type": "MOBILE"
          }
        ],
        "salutation": "Mr"
      }
    ],
    "documentId": "Z1248601M",
    "emailAddresses": [
      {
        "email": "john.doe@company.com",
        "type": "BUSINESS"
      }
    ],
    "number": "1042",
    "phoneNumbers": [
      {
        "number": "+49 7163307056",
        "type": "MOBILE"
      }
    ],
    "projectId": "3",
    "updatedDate": "2018-01-01T13:00:00.000Z",
    "vatId": "DE123456789"
  }
}

Field support per integration

Supported Request Parameters:
contactType
enum
required
Available options: COMPANY
companyName
string
contactPersons
ContactPerson[]
addresses
Address[]
emailAddresses
EmailAddress[]
If you’re not using the Interactive Authentication Flow, make sure the query parameters environmentName and companyId are correctly populated. You can obtain these values by using the GET Environments and GET Companies endpoints available under the Authentication section.
Supported Request Parameters:
contactType
enum
required
Available options: CONTACT_PERSON, COMPANY
companyName
string
contactPersons
ContactPerson[]
addresses
Address[]
emailAddresses
EmailAddress[]
number
string
phoneNumbers
PhoneNumber[]
If you’re not using the Interactive Authentication Flow, make sure the query parameter companyId is correctly populated. You can obtain this value by using the GET Companies endpoint available under the Authentication section.
Supported Request Parameters:
contactType
enum
Available options: CONTACT_PERSON, COMPANY
companyName
string
contactPersons
ContactPerson[]
addresses
Address[]
emailAddresses
EmailAddress[]
phoneNumbers
PhoneNumber[]
Supported Request Parameters:
contactType
enum
Available options: COMPANY
companyName
string
addresses
Address[]
emailAddresses
EmailAddress[]
phoneNumbers
PhoneNumber[]
projectId
string
Ensure that the query parameter _companyId_ is correctly filled with the account ID associated with the contact. This value can be retrieved by using the GET Companies endpoint in the Authentication section. Use the returned id as the value for _companyId_.
Supported Request Parameters:
contactType
enum
required
Available options: CONTACT_PERSON, COMPANY
companyName
string
contactPersons
ContactPerson[]
addresses
Address[]
emailAddresses
EmailAddress[]
phoneNumbers
PhoneNumber[]
Supported Request Parameters:
id
string
contactType
enum
Available options: CONTACT_PERSON, COMPANY
companyName
string
contactPersons
ContactPerson[]
addresses
Address[]
emailAddresses
EmailAddress[]
phoneNumbers
PhoneNumber[]
Please note that it is not possible to create or update customers with more than one contact person in Lexware Office via the API. While it is possible to retrieve such contacts through the API, creating them must be done directly within the user interface.
Supported Request Parameters:
contactType
enum
required
Available options: CONTACT_PERSON, COMPANY
companyName
string
contactPersons
ContactPerson[]
addresses
Address[]
emailAddresses
EmailAddress[]
phoneNumbers
PhoneNumber[]
Supported Request Parameters:
addresses
Address[]
companyName
string
contactType
enum
required
Available options: COMPANY
emailAddresses
EmailAddress[]
updatedDate
string
vatId
string
Supported Request Parameters:
contactType
enum
required
Available options: CONTACT_PERSON, COMPANY
companyName
string
contactPersons
ContactPerson[]
addresses
Address[]
emailAddresses
EmailAddress[]
phoneNumbers
PhoneNumber[]
This endpoint is available only for the following countries: Accounting Plus: 🇨🇦, 🇬🇧, 🇮🇪
Accounting Standard: 🇬🇧, 🇮🇪
Accounting Start: 🇨🇦, 🇬🇧, 🇮🇪
When handling a new connection in your integration, it is advisable to first determine which subscription your customer is using to ensure compatibility. To do this, you can use the GET Companies call to retrieve all businesses available for the user. The user will then select one of these businesses. It is also a good practice to verify that the active property of the selected business is set to true before proceeding with the integration setup.
Supported Request Parameters:
contactType
enum
required
Available options: CONTACT_PERSON, COMPANY
companyName
string
contactPersons
ContactPerson[]
addresses
Address[]
If you’re not using the Interactive Authentication Flow, make sure the query parameters environmentName and companyId are correctly populated. You can obtain these values by using the GET Companies endpoint available under the Authentication section. Please use the id field as the companyId and the environmentId field as the environmentName.
Supported Request Parameters:
companyName
string
required
contactPersons
ContactPerson[]
documentId
string
addresses
Address[]
required
vatId
string
If the supplier is from Germany (DE): the VAT number is recommended, but not mandatory.If the supplier is from another EU country but not DE: the VAT number is mandatory.If the supplier is from outside the EU : the VAT number is not used at all.
Supported Request Parameters:
contactType
enum
required
Available options: CONTACT_PERSON, COMPANY
companyName
string
contactPersons
ContactPerson[]
addresses
Address[]
emailAddresses
EmailAddress[]
number
string
phoneNumbers
PhoneNumber[]
If you’re not using the Interactive Authentication Flow, make sure the query parameter companyId is correctly populated. You can obtain this value by using the GET Companies endpoint available under the Authentication section.
Supported Request Parameters:
contactType
enum
required
Available options: COMPANY
companyName
string
addresses
Address[]
emailAddresses
EmailAddress[]
phoneNumbers
PhoneNumber[]
Supported Request Parameters:
contactType
enum
required
Available options: CONTACT_PERSON, COMPANY
companyName
string
contactPersons
ContactPerson[]
addresses
Address[]

Headers

X-API-KEY
string
required

API key

X-ACCOUNT-KEY
string
required

Account key

Query Parameters

companyId
string
environmentName
string

Body

application/json
addresses
object[]
bankAccount
object
companyName
string
Example:

"maesn"

contactType
enum<string>
Available options:
CONTACT_PERSON,
COMPANY,
UNDEFINED
Example:

"CONTACT_PERSON"

contactPersons
object[]
documentId
string
Example:

"Z1248601M"

emailAddresses
object[]
number
string
Example:

"1042"

phoneNumbers
object[]
projectId
string
Example:

"3"

vatId
string
Example:

"DE123456789"

Response

200 - application/json
meta
object
data
object
I