Skip to main content
POST
/
clients
Create client
curl --request POST \
  --url https://app.fintoro.sk/api/public/v1/clients \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "name": "Acme s.r.o.",
  "type": "company",
  "subjectId": "12345678",
  "taxId": "2020123456",
  "vatId": "SK2020123456",
  "isVatPayer": true,
  "email": "billing@acme.test",
  "street": "Main Street 1",
  "city": "Bratislava",
  "zip": "81101",
  "countryId": 703,
  "deliveryStreet": "Warehouse Street 9",
  "deliveryCity": "Kosice",
  "deliveryZip": "04001",
  "deliveryCountryId": 703,
  "preferredDeliveryMethodId": 1,
  "preferredPaymentMethodId": 1,
  "preferredCurrencyId": 1,
  "preferredLanguageId": 1,
  "preferredDueDays": 14,
  "preferredNote": "Due within 14 days.",
  "stripeCustomerId": "cus_public_api_123",
  "systemeioContactId": 123456,
  "preferredVariableSymbol": 2026001,
  "preferredConstantSymbol": 308,
  "preferredSpecificSymbol": 55,
  "preferredTextAboveItems": "Thank you for your cooperation."
}
'
{
  "id": 101,
  "name": "Acme s.r.o.",
  "type": "company",
  "subjectId": "12345678",
  "taxId": "2020123456",
  "vatId": "SK2020123456",
  "isVatPayer": true,
  "email": "billing@acme.test",
  "street": "Main Street 1",
  "city": "Bratislava",
  "zip": "81101",
  "country": {
    "id": 703,
    "name": "Slovakia",
    "code": "SK",
    "eu": true
  },
  "hasDeliveryAddress": true,
  "deliveryStreet": "Warehouse Street 9",
  "deliveryCity": "Kosice",
  "deliveryZip": "04001",
  "deliveryCountry": {
    "id": 703,
    "name": "Slovakia",
    "code": "SK",
    "eu": true
  },
  "createdAt": "2026-03-03T12:00:00+01:00",
  "updatedAt": "2026-03-03T15:45:00+01:00",
  "preferredDeliveryMethodId": 1,
  "preferredPaymentMethodId": 1,
  "preferredCurrencyId": 1,
  "preferredLanguageId": 1,
  "preferredDueDays": 14,
  "preferredNote": "Due within 14 days.",
  "preferredVariableSymbol": 2026001,
  "preferredConstantSymbol": 308,
  "preferredSpecificSymbol": 55,
  "preferredTextAboveItems": "Thank you for your cooperation."
}

Authorizations

Authorization
string
header
required

Bearer token created for a specific company in Integrations → API.

Headers

Idempotency-Key
string

Optional request identifier for safe retries. Use a unique value for each create request you want to retry safely.

Example:

"invoice-create-2026-03-03-001"

Body

application/json

Payload used to create a client. Send the client's business data and optional client-level defaults that should be stored as fallback values for future document creation.

name
string
required

Person name or company name. This field is required on create.

Maximum string length: 255
Example:

"Acme s.r.o."

type
enum<string>
default:person

Optional client type. Allowed values are person and company. If omitted, person is used by default, or company when subjectId, taxId, or vatId is provided.

Available options:
person,
company
Example:

"company"

subjectId
string | null

Business ID of the client or company. For Slovak entities, you can typically also find this value through the subject registry lookup.

Maximum string length: 40
Example:

"12345678"

taxId
string | null

Client tax ID.

Maximum string length: 40
Example:

"2020123456"

vatId
string | null

Client VAT ID.

Maximum string length: 40
Example:

"SK2020123456"

isVatPayer
boolean

Optional VAT payer flag. If omitted and vatId is provided, it is set to true automatically.

Example:

true

email
string<email> | null

Client contact email.

Maximum string length: 255
Example:

"billing@acme.test"

street
string | null

Street and number of the billing address.

Maximum string length: 255
Example:

"Main Street 1"

city
string | null

City of the billing address.

Maximum string length: 255
Example:

"Bratislava"

zip
string | null

ZIP or postal code of the billing address.

Maximum string length: 10
Example:

"81101"

countryId
integer | null

Billing country ID from the country reference table.

Example:

703

deliveryStreet
string | null

Street and number of the delivery address. When any delivery address value is provided, hasDeliveryAddress is inferred automatically.

Maximum string length: 255
Example:

"Warehouse Street 9"

deliveryCity
string | null

City of the delivery address. When any delivery address value is provided, hasDeliveryAddress is inferred automatically.

Maximum string length: 255
Example:

"Kosice"

deliveryZip
string | null

ZIP or postal code of the delivery address. When any delivery address value is provided, hasDeliveryAddress is inferred automatically.

Maximum string length: 10
Example:

"04001"

deliveryCountryId
integer | null

Delivery country ID from the country reference table. When any delivery address value is provided, hasDeliveryAddress is inferred automatically.

Example:

703

preferredDeliveryMethodId
integer | null

Default delivery method for the client. It is stored on the client and used as a fallback default when creating new documents for this client if you do not send an explicit value in the payload. The value comes from the delivery method reference table.

Example:

1

preferredPaymentMethodId
integer | null

Default payment method for the client. It is stored on the client and used as a fallback default when creating new documents for this client if you do not send an explicit value in the payload. The value comes from the payment method reference table.

Example:

1

preferredCurrencyId
integer | null

Default currency for the client. It is stored on the client and used as a fallback default when creating new documents for this client if you do not send an explicit value in the payload. The value comes from the currency reference table.

Example:

1

preferredLanguageId
integer | null

Default language for the client. It is stored on the client and used as a fallback default when creating new documents for this client if you do not send an explicit value in the payload. The value comes from the language reference table.

Example:

1

preferredDueDays
integer | null

Default due days. It is stored on the client and used as a fallback default when creating new documents for this client if you do not send an explicit value in the payload.

Required range: 0 <= x <= 365
Example:

14

preferredNote
string | null

Default note. It is stored on the client and used as a fallback default when creating new documents for this client if you do not send an explicit value in the payload.

Example:

"Due within 14 days."

stripeCustomerId
string | null

External Stripe customer ID, if you store it on the client.

Maximum string length: 255
Example:

"cus_public_api_123"

systemeioContactId
integer | null

External Systeme.io contact ID, if you store it on the client.

Example:

123456

preferredVariableSymbol
integer | null

Default variable symbol. Allowed values have 1 to 10 digits.

Required range: 0 <= x <= 9999999999
Example:

2026001

preferredConstantSymbol
integer | null

Default constant symbol. Allowed values have 1 to 4 digits.

Required range: 0 <= x <= 9999
Example:

308

preferredSpecificSymbol
integer | null

Default specific symbol. Allowed values have 1 to 10 digits.

Required range: 0 <= x <= 9999999999
Example:

55

preferredTextAboveItems
string | null

Default text above items. It is stored on the client and used as a fallback default when creating new documents for this client if you do not send an explicit value in the payload.

Maximum string length: 3000
Example:

"Thank you for your cooperation."

Response

Client created.

Client, including client-scoped default values. The API does not apply these values automatically, but you can reuse them as recommended defaults when building payloads for new documents.

id
integer

Internal client ID in Fintoro.

Example:

101

name
string

Person name or company name.

Example:

"Acme s.r.o."

type
enum<string>

Client type. person represents an individual person, while company represents a company or self-employed business entity.

Available options:
person,
company
Example:

"company"

subjectId
string | null

Business ID of the client or company. For Slovak entities, you can typically also find this value through the subject registry lookup.

Example:

"12345678"

taxId
string | null

Client tax ID, when available.

Example:

"2020123456"

vatId
string | null

Client VAT ID, when available.

Example:

"SK2020123456"

isVatPayer
boolean

Indicates whether the client is currently recorded as a VAT payer.

Example:

true

email
string | null

Client contact email.

Example:

"billing@acme.test"

street
string | null

Street and number of the billing address.

Example:

"Main Street 1"

city
string | null

City of the billing address.

Example:

"Bratislava"

zip
string | null

ZIP or postal code of the billing address.

Example:

"81101"

country
object

Client billing country as a nested object.

hasDeliveryAddress
boolean

Indicates whether the client has a dedicated delivery address different from the billing address.

Example:

true

deliveryStreet
string | null

Street and number of the delivery address.

Example:

"Warehouse Street 9"

deliveryCity
string | null

City of the delivery address.

Example:

"Kosice"

deliveryZip
string | null

ZIP or postal code of the delivery address.

Example:

"04001"

deliveryCountry
object

Client delivery country as a nested object.

createdAt
string<date-time> | null

Date and time when the client was created.

Example:

"2026-03-03T12:00:00+01:00"

updatedAt
string<date-time> | null

Date and time when the client was last updated.

Example:

"2026-03-03T15:45:00+01:00"

preferredDeliveryMethodId
integer | null

Default delivery method for the client. It is stored on the client and used as a fallback default when creating new documents for this client if you do not send an explicit value in the payload. The value comes from the delivery method reference table.

Example:

1

preferredPaymentMethodId
integer | null

Default payment method for the client. It is stored on the client and used as a fallback default when creating new documents for this client if you do not send an explicit value in the payload. The value comes from the payment method reference table.

Example:

1

preferredCurrencyId
integer | null

Default currency for the client. It is stored on the client and used as a fallback default when creating new documents for this client if you do not send an explicit value in the payload. The value comes from the currency reference table.

Example:

1

preferredLanguageId
integer | null

Default language for the client. It is stored on the client and used as a fallback default when creating new documents for this client if you do not send an explicit value in the payload. The value comes from the language reference table.

Example:

1

preferredDueDays
integer | null

Default due days. It is stored on the client and used as a fallback default when creating new documents for this client if you do not send an explicit value in the payload.

Example:

14

preferredNote
string | null

Default note. It is stored on the client and used as a fallback default when creating new documents for this client if you do not send an explicit value in the payload.

Example:

"Due within 14 days."

preferredVariableSymbol
integer | null

Default variable symbol. It is stored on the client and used as a fallback default when creating new documents for this client if you do not send an explicit value in the payload.

Example:

2026001

preferredConstantSymbol
integer | null

Default constant symbol. It is stored on the client and used as a fallback default when creating new documents for this client if you do not send an explicit value in the payload.

Example:

308

preferredSpecificSymbol
integer | null

Default specific symbol. It is stored on the client and used as a fallback default when creating new documents for this client if you do not send an explicit value in the payload.

Example:

55

preferredTextAboveItems
string | null

Default text above items. It is stored on the client and used as a fallback default when creating new documents for this client if you do not send an explicit value in the payload.

Example:

"Thank you for your cooperation."