---
title: "Duplicate a ticket from a ticketid (sets it as draft mode)"
method: POST
path: "/tickets/duplicate/{ticketId}"
tags: ["Tickets"]
---

# Duplicate a ticket from a ticketid (sets it as draft mode)

`POST /tickets/duplicate/{ticketId}`

## Request

- Base URL: `https://api.c1st.com/api`
- URL: `https://api.c1st.com/api/tickets/duplicate/{ticketId}`
- Auth: HTTP bearer

## Path parameters

- `ticketId` integer, required

## Response `200`

Ok

- TicketResponse: A ticket response
  - `storeid` integer
  - `content` Ticket: A ticket representing a repair or work task.
    - `id` integer: A unique ticket ID
    - `customerid` integer, nullable: The ID of the customer.
    - `customer` Customer: The representation of a customer.
      - `id` integer: A unique customer ID
      - `storeid` integer: ID for the store for which the customer is associated
      - `createddate` string, nullable
      - `name` string, nullable: The name of the customer.
      - `phone` string, nullable: The phone number of the customer. Should start with country code, like +45. If not, assume +45.
      - `phone_e164` string, nullable: Phone number in E.164 format, might sometimes be the same as "phone" but this field is guaranteed to be in E.164 format
      - `country` string, nullable: The country of the phone number. Must be in format ISO 3166-1 alpha-2.
      - `email` string, nullable: The email of the customer.
      - `barcode` string, nullable: Barcode used for POS customer lookup via barcode scanning.
      - `address` string, nullable: The address of the customer.
      - `city` string, nullable: The city of the customer.
      - `zipcode` string, nullable: The zip code of the customer.
      - `addr_country` string, nullable: The country of the customers address.
      - `lat` number, double, nullable: The latitude of the customer.
      - `lng` number, double, nullable: The longitude of the customer.
      - `birthdate` string, nullable
      - `ean` string, nullable: The EAN number associated with the customer. Must be a valid EAN.
      - `vat` string, nullable: The VAT/CVR number associated with the customer.
      - `customerno` string, nullable: The customer-number associated with the customer.
      - `economic_customernumber` integer, nullable: The e-conomic number of the customer.
      - `balance` number, nullable: The customer's balance
      - `note` string, nullable: A note about the customer.
      - `draft` integer: Whether or not the customer is in draft mode
      - `deleted` integer: Whether or not the customer is deleted
      - `tags` CustomerTag[], nullable: Tags associated with the customer.
        - `title` string, required: The title of the tag
        - `id` integer, nullable: The id of the tag
        - `handle` string, nullable: Unique handle for the produttag. Will be set automatically if not set. This value cannot be changed once set.
        - `color` string, nullable: The color used when displaying the tag in the app
      - `permission_marketing` string, nullable: Timestamp for if when the permission has been granted. `null` if permission hasn't been granted.
      - `updated_at` string, nullable: Timestamp for when the last time the customer is updated.
      - `deleted_at` string, nullable: Timestamp for when the last time the customer is deleted.
      - `loyaltypointsbalance` number, nullable: The customers loyalty point balance
      - `loyalty_member_since` string, nullable: Datetime of when the customer joined the loyalty club. If null, the customer is not part of the loyalty club
      - `loyalty_member_id` number, nullable: Assigned loyalty membership ID when the customer joined the loyalty club. If null, the customer is not part of the loyalty club
      - `shopify_customer_id` number, nullable: The corresponding ShopifyCustomerId if customer is syncronized with Shopify
      - `store` object: Name of partner store that customer is registered in. requires scope 'customerlookup'
        - `id` integer: Store id
        - `title` string: Store title
    - `customerarticleids` integer[]
    - `customerarticles` CustomerArticle[]
      - `id` integer, nullable: A unique CustomerArticle ID
      - `dateadded` string, nullable: The date the customertarticle was created
      - `customerid` integer: The ID of the customer the customerarticle belongs to
      - `customer` Customer: The representation of a customer.
        - `id` integer: A unique customer ID
        - `storeid` integer: ID for the store for which the customer is associated
        - `createddate` string, nullable
        - `name` string, nullable: The name of the customer.
        - `phone` string, nullable: The phone number of the customer. Should start with country code, like +45. If not, assume +45.
        - `phone_e164` string, nullable: Phone number in E.164 format, might sometimes be the same as "phone" but this field is guaranteed to be in E.164 format
        - `country` string, nullable: The country of the phone number. Must be in format ISO 3166-1 alpha-2.
        - `email` string, nullable: The email of the customer.
        - `barcode` string, nullable: Barcode used for POS customer lookup via barcode scanning.
        - `address` string, nullable: The address of the customer.
        - `city` string, nullable: The city of the customer.
        - `zipcode` string, nullable: The zip code of the customer.
        - `addr_country` string, nullable: The country of the customers address.
        - `lat` number, double, nullable: The latitude of the customer.
        - `lng` number, double, nullable: The longitude of the customer.
        - `birthdate` string, nullable
        - `ean` string, nullable: The EAN number associated with the customer. Must be a valid EAN.
        - `vat` string, nullable: The VAT/CVR number associated with the customer.
        - `customerno` string, nullable: The customer-number associated with the customer.
        - `economic_customernumber` integer, nullable: The e-conomic number of the customer.
        - `balance` number, nullable: The customer's balance
        - `note` string, nullable: A note about the customer.
        - `draft` integer: Whether or not the customer is in draft mode
        - `deleted` integer: Whether or not the customer is deleted
        - `tags` CustomerTag[], nullable: Tags associated with the customer.
          - `title` string, required: The title of the tag
          - `id` integer, nullable: The id of the tag
          - `handle` string, nullable: Unique handle for the produttag. Will be set automatically if not set. This value cannot be changed once set.
          - `color` string, nullable: The color used when displaying the tag in the app
        - `permission_marketing` string, nullable: Timestamp for if when the permission has been granted. `null` if permission hasn't been granted.
        - `updated_at` string, nullable: Timestamp for when the last time the customer is updated.
        - `deleted_at` string, nullable: Timestamp for when the last time the customer is deleted.
        - `loyaltypointsbalance` number, nullable: The customers loyalty point balance
        - `loyalty_member_since` string, nullable: Datetime of when the customer joined the loyalty club. If null, the customer is not part of the loyalty club
        - `loyalty_member_id` number, nullable: Assigned loyalty membership ID when the customer joined the loyalty club. If null, the customer is not part of the loyalty club
        - `shopify_customer_id` number, nullable: The corresponding ShopifyCustomerId if customer is syncronized with Shopify
        - `store` object: Name of partner store that customer is registered in. requires scope 'customerlookup'
          - `id` integer: Store id
          - `title` string: Store title
      - `title` string
      - `serieno` string, nullable
      - `color` string, nullable
      - `size` string, nullable
      - `customfield1` string, nullable
      - `customfield2` string, nullable
      - `customfield3` string, nullable
      - `customfield4` string, nullable
      - `storeid` integer: ID of the owning store
      - `servicesubscription` ServiceSubscription
        - `id` integer, nullable: A unique service id
        - `customerarticleid` integer: Which customer article that has been assigned to this subcription
        - `serviceplanid` integer, nullable: The id of the serviceplan it is attached to.
        - `serviceplan` ServicePlan
          - `id` integer, nullable: A unique service id
          - `title` string: title for service
          - `handle` string, nullable: Unique handle for service. Will be set automatically if not set
          - `servicecallgroupid` integer, nullable: Which servicegroup should automatically be selected, if the service is on a customerarticle
          - `servicecallgroupids` integer[], nullable: An array of which servicegroup should automatically be selected, if the service is on a customerarticle
          - `servicecallgroup` ServiceNotificationTemplateGroup: A group of service notification templates
            - `id` integer: Id of the group
            - `title` string, required: Title of the group
            - `enabled` boolean, required: Boolean determening whether the group will be selected by default
            - `producttags` ProductTag[], nullable: Product tags assoicated with the group
              - …
            - `vatmode` string, nullable: VAT associated with the group
            - `templates` ServiceNotificationTemplate[], nullable: Array of templates associated with this group
              - …
            - `deleted_at` string, nullable: The date and time this ServiceNotificationTemplateGroup was deleted. Null if it is not deleted
          - `servicecallgroups` ServiceNotificationTemplateGroup[], nullable
            - `id` integer: Id of the group
            - `title` string, required: Title of the group
            - `enabled` boolean, required: Boolean determening whether the group will be selected by default
            - `producttags` ProductTag[], nullable: Product tags assoicated with the group
              - …
            - `vatmode` string, nullable: VAT associated with the group
            - `templates` ServiceNotificationTemplate[], nullable: Array of templates associated with this group
              - …
            - `deleted_at` string, nullable: The date and time this ServiceNotificationTemplateGroup was deleted. Null if it is not deleted
          - `producttagidsrestriction` integer[], nullable: Array of producttag ids where this service can be applied to. If tagid 1 and 2 is set as restriction, the product have to at least one of them in order to be included in the search
          - `producttaghandlesrestriction` string[], nullable: Array of producttag handles where this service can be applied to. If handle bike and mountainbike is set as restriction, the product have to at least one of them in order to be included in the search.
          - `producttagsrestriction` ProductTag[], nullable: Array of producttags where this service can be applied to.
            - `title` string: The title of the tag
            - `id` integer, nullable: The ID of the tag
            - `accountno` integer, nullable: The accountno used for book keeping
            - `promotionfilter` PromotionTagFilter, nullable
              - …
            - `handle` string, nullable: Unique handle for the produttag. Will be set automatically if not set. The handle is write once, and can not be changed after the tag is created.
            - `position` number, nullable: Number used to determine order of product tags.
            - `positionafterid` number, nullable: If this is set, the position of this product tag will be between positionafterid and the tag below if it exists.
            - `positionbeforeid` number, nullable: If this is set, the position of this product tag will be between positionbeforeid and the tag above if it exists.
          - `visibility` 'all' | 'secondhandvat' | 'normalvat': Determines what types of products this plan is visible for. All makes the plan visible for products with normalvat and secondhandvat
          - `price` number, nullable: If set, when adding a serviceplan to a serial product, it will create a material with the given price, and set the type of the material as "serivceplan"
          - `terms` integer, nullable: If set, when adding a serviceplan, an enddate is set to be x months from startdate for a subscription
          - `updated_at` string, date-time, nullable: When the service was last updated
          - `created_at` string, date-time, nullable: When the service was created
          - `deleted_at` string, date-time, nullable: When the service was soft deleted
          - `followproductno` string, nullable: When adding a service to a customerarticle, the product with the given followproductno will added as an additional material.
        - `draft` integer, nullable: Whether or not the subscription is in draft mode or not.
        - `updated_at` string, date-time, nullable: When the service was last updated
        - `created_at` string, date-time, nullable: When the service was created
        - `deleted_at` string, date-time, nullable: When the service was deleted
        - `startdate` string, nullable: When the service has started
        - `enddate` string, nullable: When the service is supposed to end. Set if the serviceplan has terms
        - `price` number, nullable: The price of the serviceplan when the service was activated
        - `permission` Permission
          - `read` boolean
          - `write` boolean
        - `active` boolean, nullable: Whether or not the subscription is active, by looking at start- and enddate compared to today
      - `hasservicenotices` boolean: Whether or not the customer article has any service notices, check servicenotices_count instead
      - `servicenotices_count` integer: Amount of service notices
      - `permission` 'none' | 'readonly' | 'full'
      - `deleted` integer, nullable: If 1 this means that the customerarticle is deleted, 0 is not deleted.
      - `updated_at` string, nullable: Timestamp for when the last time the customer is updated.
      - `last_sold_at` string, nullable: Timestamp of when the customerarticle was last sold on a payment (this does not include return payments)
    - `assignee` integer, nullable: The ID of the employee assigned to the ticket.
    - `createByUserId` integer, nullable: The ID of the employee who created the ticket.
    - `assigneeName` string, nullable: The name of the employee assigned to the ticket.
    - `createByUserName` string, nullable: The name of the user that created the ticket.
    - `cardno` string, nullable: An identifier for the ticket. This will default to next auto incremented value if not set
    - `autoincrementno` integer, nullable: A unique auto incrementing ID for the ticket
    - `description` string, nullable: A description of what will or has been done.
    - `created` string
    - `startTime` string, nullable
    - `pickup` string, nullable
    - `payments` POSPayment[]
      - `id` integer, nullable: A global unique payment id
      - `paymentno` integer, nullable: a sequential autoincremented payment no
      - `userid` integer, nullable: The id of the user who created the payment
      - `customerid` integer, nullable: The id of the customer if any was attached to the payment
      - `date` string, nullable: The date of the payment
      - `numberofmaterials` number, double, nullable: the total number of payment articles sold
      - `sum` number, double, nullable: The sum of the payment materials
      - `discountsum` number, double, nullable: the sum of all discounts in the purchase
      - `remainingamount` number, nullable: The amount left to pay for the payment
      - `cashRegisterId` integer, nullable: The id of the cash register used for the payment. Provide null if you don't use cash regiters
      - `cashRegisterTitle` string, nullable: Deprecated. Refer to cashregister.title
      - `updated_at` string, nullable: Timestamp for when the last time the payment is updated.
      - `invoice` integer: 1 if payment is a invoice payment. For example if the payment is paid via an invoice in economic.
      - `customerpayment` integer: 1 if payment is a customer payment
      - `cashregister` object, nullable: The cashregister referered to by cashRegisterId
        - `title` string
        - `id` number
      - `receiptcopycount` integer, nullable: Number of receipt copies printed (requires Efsta)
      - `fiscalisation` object, nullable: Information about fiscalisation if enabled
        - `event` string, nullable
        - `no` string, nullable
        - `signature` string, nullable
        - `code` string, nullable
        - `payload` string, nullable
        - `tags` object, nullable
        - `message` string, nullable
        - `created_at` string
      - `user` object, nullable: The user refered to by userid
        - `name` string
        - `id` number
      - `customer` Customer: The representation of a customer.
        - `id` integer: A unique customer ID
        - `storeid` integer: ID for the store for which the customer is associated
        - `createddate` string, nullable
        - `name` string, nullable: The name of the customer.
        - `phone` string, nullable: The phone number of the customer. Should start with country code, like +45. If not, assume +45.
        - `phone_e164` string, nullable: Phone number in E.164 format, might sometimes be the same as "phone" but this field is guaranteed to be in E.164 format
        - `country` string, nullable: The country of the phone number. Must be in format ISO 3166-1 alpha-2.
        - `email` string, nullable: The email of the customer.
        - `barcode` string, nullable: Barcode used for POS customer lookup via barcode scanning.
        - `address` string, nullable: The address of the customer.
        - `city` string, nullable: The city of the customer.
        - `zipcode` string, nullable: The zip code of the customer.
        - `addr_country` string, nullable: The country of the customers address.
        - `lat` number, double, nullable: The latitude of the customer.
        - `lng` number, double, nullable: The longitude of the customer.
        - `birthdate` string, nullable
        - `ean` string, nullable: The EAN number associated with the customer. Must be a valid EAN.
        - `vat` string, nullable: The VAT/CVR number associated with the customer.
        - `customerno` string, nullable: The customer-number associated with the customer.
        - `economic_customernumber` integer, nullable: The e-conomic number of the customer.
        - `balance` number, nullable: The customer's balance
        - `note` string, nullable: A note about the customer.
        - `draft` integer: Whether or not the customer is in draft mode
        - `deleted` integer: Whether or not the customer is deleted
        - `tags` CustomerTag[], nullable: Tags associated with the customer.
          - `title` string, required: The title of the tag
          - `id` integer, nullable: The id of the tag
          - `handle` string, nullable: Unique handle for the produttag. Will be set automatically if not set. This value cannot be changed once set.
          - `color` string, nullable: The color used when displaying the tag in the app
        - `permission_marketing` string, nullable: Timestamp for if when the permission has been granted. `null` if permission hasn't been granted.
        - `updated_at` string, nullable: Timestamp for when the last time the customer is updated.
        - `deleted_at` string, nullable: Timestamp for when the last time the customer is deleted.
        - `loyaltypointsbalance` number, nullable: The customers loyalty point balance
        - `loyalty_member_since` string, nullable: Datetime of when the customer joined the loyalty club. If null, the customer is not part of the loyalty club
        - `loyalty_member_id` number, nullable: Assigned loyalty membership ID when the customer joined the loyalty club. If null, the customer is not part of the loyalty club
        - `shopify_customer_id` number, nullable: The corresponding ShopifyCustomerId if customer is syncronized with Shopify
        - `store` object: Name of partner store that customer is registered in. requires scope 'customerlookup'
          - `id` integer: Store id
          - `title` string: Store title
      - `articles` PaymentArticle[], nullable: The list of payment articles. Those are the products sold with the payment. When you POST a payment this will be the list of articles sold Not provided with GET payments
        - `id` integer, nullable: A unique ID generated automatically
        - `title` string: The title of the article sold
        - `price` number, double: Price of the article. By default price includes VAT but can be changed in the store config "prices_include_vat".
        - `costprice` number, double, nullable: The cost price of the article sold
        - `quantity` number: Number of articles sold.
        - `vat` number, double: VAT percentage.
        - `vatmode` 'normal' | 'second_hand': < `normal` vat calculation is based on `price` `second_hand` vat calulation is based on `price - costprice`
        - `pricewithoutvat` number, double, nullable: Consistently give the calculcated price without VAT. Regardless of the value of store config "prices_include_vat"
        - `vatamount` number, double, nullable: The calculated VAT for the price field.
        - `giftcardno` string, nullable: Provide this if you want to issue a giftcard with the payment. The amount on the giftcard will be the value of price.
        - `usedGiftcardId` integer, nullable: Provide this if you want use a giftcard as means of payment. The value of price will be deducted from the giftcard balance
        - `usedGiftcard` Giftcard: A giftcard
          - `id` integer: A unique ID
          - `giftcardno` string: a unique string to identify giftcards.
          - `amount` number, double: The inital amount on the giftcard. Can only be set when the gift is created
          - `amountspent` number, double: The amount spent of the giftcard. Balance of the giftcard can be calculcated by `amount - amountspent`.
          - `paymentid` integer, nullable: If the giftcard was issued by a payment.
          - `type` 'giftcard' | 'voucher' | 'deposit'
          - `store` Store: Store object
            - `id` integer
            - `title` string, required
            - `cityname` string, nullable
            - `zipcode` string, nullable
            - `streetname` string, nullable
            - `streetno` string, nullable
            - `phone` string, nullable
            - `email` string, nullable
            - `website` string, nullable
            - `created` string
            - `countrydata` CountryData
              - …
          - `customer` Customer: The representation of a customer.
            - `id` integer: A unique customer ID
            - `storeid` integer: ID for the store for which the customer is associated
            - `createddate` string, nullable
            - `name` string, nullable: The name of the customer.
            - `phone` string, nullable: The phone number of the customer. Should start with country code, like +45. If not, assume +45.
            - `phone_e164` string, nullable: Phone number in E.164 format, might sometimes be the same as "phone" but this field is guaranteed to be in E.164 format
            - `country` string, nullable: The country of the phone number. Must be in format ISO 3166-1 alpha-2.
            - `email` string, nullable: The email of the customer.
            - `barcode` string, nullable: Barcode used for POS customer lookup via barcode scanning.
            - `address` string, nullable: The address of the customer.
            - `city` string, nullable: The city of the customer.
            - `zipcode` string, nullable: The zip code of the customer.
            - `addr_country` string, nullable: The country of the customers address.
            - `lat` number, double, nullable: The latitude of the customer.
            - `lng` number, double, nullable: The longitude of the customer.
            - `birthdate` string, nullable
            - `ean` string, nullable: The EAN number associated with the customer. Must be a valid EAN.
            - `vat` string, nullable: The VAT/CVR number associated with the customer.
            - `customerno` string, nullable: The customer-number associated with the customer.
            - `economic_customernumber` integer, nullable: The e-conomic number of the customer.
            - `balance` number, nullable: The customer's balance
            - `note` string, nullable: A note about the customer.
            - `draft` integer: Whether or not the customer is in draft mode
            - `deleted` integer: Whether or not the customer is deleted
            - `tags` CustomerTag[], nullable: Tags associated with the customer.
              - …
            - `permission_marketing` string, nullable: Timestamp for if when the permission has been granted. `null` if permission hasn't been granted.
            - `updated_at` string, nullable: Timestamp for when the last time the customer is updated.
            - `deleted_at` string, nullable: Timestamp for when the last time the customer is deleted.
            - `loyaltypointsbalance` number, nullable: The customers loyalty point balance
            - `loyalty_member_since` string, nullable: Datetime of when the customer joined the loyalty club. If null, the customer is not part of the loyalty club
            - `loyalty_member_id` number, nullable: Assigned loyalty membership ID when the customer joined the loyalty club. If null, the customer is not part of the loyalty club
            - `shopify_customer_id` number, nullable: The corresponding ShopifyCustomerId if customer is syncronized with Shopify
            - `store` object: Name of partner store that customer is registered in. requires scope 'customerlookup'
              - …
          - `customerid` integer, nullable: The unique customer ID of the currently registered customer of the giftcard, or null if none
          - `vat` number, nullable: The VAT percentage of the payment that issued the giftcard
          - `productid` integer, nullable: To be removed
          - `productno` string, nullable: To be removed
          - `external_id` number, nullable: The external id to Shopify etc.
          - `createddate` string: When the giftcard was created.
          - `expirationdate` string: When the giftcard expires. Defaults to the createddate + the value of the storeconfig "giftcard_expiration_years".
          - `draft` integer: Whether the giftcard is a draft (1) or finalized (0). Draft giftcards are created during discount-to-voucher conversion and finalized on payment completion.
          - `expired` boolean: If the giftcard has expired based on expirationdate.
          - `active` boolean, nullable: The giftcard is active if its not expired and amountspent is less than amount.
          - `deleted_at` string, nullable: When the giftcard was deleted.
          - `deleted` boolean: If the giftcard has been deleted based on deleted_at.
        - `giftcardid` integer, nullable: Id of issued giftcard
        - `giftcard` Giftcard: A giftcard
          - `id` integer: A unique ID
          - `giftcardno` string: a unique string to identify giftcards.
          - `amount` number, double: The inital amount on the giftcard. Can only be set when the gift is created
          - `amountspent` number, double: The amount spent of the giftcard. Balance of the giftcard can be calculcated by `amount - amountspent`.
          - `paymentid` integer, nullable: If the giftcard was issued by a payment.
          - `type` 'giftcard' | 'voucher' | 'deposit'
          - `store` Store: Store object
            - `id` integer
            - `title` string, required
            - `cityname` string, nullable
            - `zipcode` string, nullable
            - `streetname` string, nullable
            - `streetno` string, nullable
            - `phone` string, nullable
            - `email` string, nullable
            - `website` string, nullable
            - `created` string
            - `countrydata` CountryData
              - …
          - `customer` Customer: The representation of a customer.
            - `id` integer: A unique customer ID
            - `storeid` integer: ID for the store for which the customer is associated
            - `createddate` string, nullable
            - `name` string, nullable: The name of the customer.
            - `phone` string, nullable: The phone number of the customer. Should start with country code, like +45. If not, assume +45.
            - `phone_e164` string, nullable: Phone number in E.164 format, might sometimes be the same as "phone" but this field is guaranteed to be in E.164 format
            - `country` string, nullable: The country of the phone number. Must be in format ISO 3166-1 alpha-2.
            - `email` string, nullable: The email of the customer.
            - `barcode` string, nullable: Barcode used for POS customer lookup via barcode scanning.
            - `address` string, nullable: The address of the customer.
            - `city` string, nullable: The city of the customer.
            - `zipcode` string, nullable: The zip code of the customer.
            - `addr_country` string, nullable: The country of the customers address.
            - `lat` number, double, nullable: The latitude of the customer.
            - `lng` number, double, nullable: The longitude of the customer.
            - `birthdate` string, nullable
            - `ean` string, nullable: The EAN number associated with the customer. Must be a valid EAN.
            - `vat` string, nullable: The VAT/CVR number associated with the customer.
            - `customerno` string, nullable: The customer-number associated with the customer.
            - `economic_customernumber` integer, nullable: The e-conomic number of the customer.
            - `balance` number, nullable: The customer's balance
            - `note` string, nullable: A note about the customer.
            - `draft` integer: Whether or not the customer is in draft mode
            - `deleted` integer: Whether or not the customer is deleted
            - `tags` CustomerTag[], nullable: Tags associated with the customer.
              - …
            - `permission_marketing` string, nullable: Timestamp for if when the permission has been granted. `null` if permission hasn't been granted.
            - `updated_at` string, nullable: Timestamp for when the last time the customer is updated.
            - `deleted_at` string, nullable: Timestamp for when the last time the customer is deleted.
            - `loyaltypointsbalance` number, nullable: The customers loyalty point balance
            - `loyalty_member_since` string, nullable: Datetime of when the customer joined the loyalty club. If null, the customer is not part of the loyalty club
            - `loyalty_member_id` number, nullable: Assigned loyalty membership ID when the customer joined the loyalty club. If null, the customer is not part of the loyalty club
            - `shopify_customer_id` number, nullable: The corresponding ShopifyCustomerId if customer is syncronized with Shopify
            - `store` object: Name of partner store that customer is registered in. requires scope 'customerlookup'
              - …
          - `customerid` integer, nullable: The unique customer ID of the currently registered customer of the giftcard, or null if none
          - `vat` number, nullable: The VAT percentage of the payment that issued the giftcard
          - `productid` integer, nullable: To be removed
          - `productno` string, nullable: To be removed
          - `external_id` number, nullable: The external id to Shopify etc.
          - `createddate` string: When the giftcard was created.
          - `expirationdate` string: When the giftcard expires. Defaults to the createddate + the value of the storeconfig "giftcard_expiration_years".
          - `draft` integer: Whether the giftcard is a draft (1) or finalized (0). Draft giftcards are created during discount-to-voucher conversion and finalized on payment completion.
          - `expired` boolean: If the giftcard has expired based on expirationdate.
          - `active` boolean, nullable: The giftcard is active if its not expired and amountspent is less than amount.
          - `deleted_at` string, nullable: When the giftcard was deleted.
          - `deleted` boolean: If the giftcard has been deleted based on deleted_at.
        - `customerarticleid` integer, nullable: Id of the attached customerarticle
        - `productno` string, nullable: For legacy support, instead refer to product.productno. This is only used for voucher and deposit
        - `productid` integer, nullable: < The the id of the product you want to sell. Stock will be deducted from the product after succesful payment. Deleted products are allowed. This is useful for return sales and payments of tickets with deleted products.
        - `product` Product: The representation of a product.
          - `id` integer, nullable: A unique product ID
          - `title` string: Product name
          - `productno` string: The product no. This must be unique. If serieno is set we allow multiple products to have the same product no. For new products this value must be at most 25 chars
          - `barcode` string, nullable: A unique barcode
          - `alternativebarcode` string, nullable: This will be used when searching for a barcode, if it could not find the product, it will search for alternative barcodes for the product. You can include multiple barcodes by separating it with spaces. It will not be used in print, for example price label/sign, instead "barcode" is used.
          - `serieno` string, nullable
          - `price` number, double, nullable: Price of the product. By default price includes VAT but can be changed in the store config "prices_include_vat".
          - `pricewithoutvat` number, double, nullable: Consistently give the calculcated price without VAT. Regardless of the value of store config "prices_include_vat"
          - `costprice` number, double, nullable: Cost price of the product excl. VAT
          - `recommendedretailprice` number, double, nullable: Recommended retail price of the product
          - `stockno` integer, nullable: Number of items in stock. Set to null to disable stock keeping. Change this value if you want to overwrite the stock number. This will trigger a stock transaction rest hook If you want update stock number relative, add a stock transaction and use addtostock.
          - `previousstockno` integer, nullable: Deprecated. Use stock transactions. Previous stockno value. Only set in RestHook events; in product.updated if stockno has changed; and always in product.created with a value of 0
          - `stocknochangetype` 'absolute' | 'relative', nullable: Deprecated. Use stock transactions. Type of stockno change. Only set in RestHook events; in product.updated if stockno has changed; and always in product.created with a value of 'absolute'. When relative it indicates adding or removing (e.g. selling) items from inventory. When absolute it indicates taking inventory, e.g. setting an initial value or correcting an errornous value. See also stocknochangeisrelative in SetProduct.
          - `stockmin` integer, nullable: The minimum number of items that must be in stock before the product is in the state of needs ordering
          - `stockmax` integer, nullable: Used to suggest the number of items to be ordered when the product is added to the ordering list.
          - `suppliername` string, nullable: This field is obsolete and therefore can't add a supplier using this field. If you want to add a supplier use the "suppliers" field instead
          - `suppliers` Supplier[], nullable: List of suppliers attached to the product. If you leave supplier id empty, any suppliername that does not exits will be created.
            - `id` integer, nullable: A unique id for a supplier
            - `name` string: The name of a supplier
            - `email` string, nullable: The mail of a supplier
            - `customerno` string, nullable: Customer number for the supplier
            - `address` string, nullable: Address of the supplier
            - `city` string, nullable: Which city the supplier is from
            - `zipcode` string, nullable: Zipcode of the supplier
            - `note` string, nullable
            - `handle` string, nullable: Slug for the supplier based on the name
            - `accountnumber` number, nullable: Accountnumber for the supplier, used to cross reference this supplier to a supplier in e-conomic
            - `auto_create_orderlist` boolean, nullable: If true, an orderlist will be created automatically for this supplier
            - `auto_create_orderlist_frequency` 'daily' | 'weekly' | 'monthly' | 'yearly' | 'null', nullable: The frequency of the orderlist creation
            - `auto_create_orderlist_day_of_week` integer[], nullable: The day of the week the orderlist should be created
            - `auto_create_orderlist_months` integer[], nullable: The months the orderlist should be created
            - `auto_create_orderlist_day_of_month` integer[], nullable: The day of the month the orderlist should be created
            - `auto_create_orderlist_minimum_costprice` number, nullable: The minimum costprice required to trigger the automatic creation of the order list
            - `external_supplier` string, nullable: The external supplier used for integrations, if given (e.g. "ponbike", etc)
            - `external_supplier_active` boolean, nullable: Whether the external supplier integration (e.g. "ponbike"/Gazelle) is currently authorized and active. Null when the supplier has no external_supplier.
            - `partner_store_id` integer, nullable: OBSOLETE - The store id from the available partner store
            - `verified_supplier_id` integer, nullable: Id of the verified supplier this supplier is linked to
            - `verified_supplier` VerifiedSupplierSummary
              - …
          - `color` string, nullable
          - `styleno` string, nullable
          - `size` string, nullable
          - `brand` string, nullable
          - `vat` number, double, nullable: DEPRECATED FOR WRITE. Create `VatType` with the desired rate and assign the `vat_type_id` instead. The VAT of the product in percent. Should in most cases be NULL. NULL will default the VAT value to the one specified in store config (25 % for DK customers). When `vat_type_id` is set, this field reflects the rate of the assigned VAT type.
          - `vat_type_id` integer, nullable: The id of the assigned VAT type. When set, the product uses the rate of the referenced VAT type.
          - `vat_type` VatType
            - `id` integer
            - `name` string
            - `rate` number
            - `revenue_account_no` string, nullable: Revenue account number for the revenue incl amount
            - `is_ticket_override` boolean: When true, this VAT type can be used to seed override VAT on new repair tickets.
            - `vat_account_no` string, nullable: VAT account number for the revenue vat part
          - `lastordered` string, nullable: The date for when the product was last ordered. Can only be set while create a shoppinglistorder
          - `tags` ProductTag[], nullable: List of product tags. Hint, if you leave tag id empty, any tag that does not exist will be created.
            - `title` string: The title of the tag
            - `id` integer, nullable: The ID of the tag
            - `accountno` integer, nullable: The accountno used for book keeping
            - `promotionfilter` PromotionTagFilter, nullable
              - …
            - `handle` string, nullable: Unique handle for the produttag. Will be set automatically if not set. The handle is write once, and can not be changed after the tag is created.
            - `position` number, nullable: Number used to determine order of product tags.
            - `positionafterid` number, nullable: If this is set, the position of this product tag will be between positionafterid and the tag below if it exists.
            - `positionbeforeid` number, nullable: If this is set, the position of this product tag will be between positionbeforeid and the tag above if it exists.
          - `customfield1` string, nullable: Field for custom product data
          - `customfield2` string, nullable
          - `customfield3` string, nullable
          - `customfield4` string, nullable
          - `created` string, nullable
          - `reservedstock` integer, nullable: Number of items of this product reserved on open tickets
          - `totalstock` integer, nullable: The sum of serial products in stock
          - `totalavailablestock` integer, nullable: The sum of serial products available
          - `tobeordered` integer, nullable: Number of items that needs to be ordered. Based on stockmin, stockmax and whats already on shopping list.
          - `onshoppinglist` integer, nullable: Number of items already on shopping list.
          - `ordered` integer, nullable: Number of items currently in order
          - `needsordering` integer, nullable: True if the product is in low stock and needs to be ordered. Based on stockmin, stockmax and whats already in order.
          - `discountprice` number, nullable: The discounted price of the product. The discountprice can only be changed if the field is the defined in body with PUT requests. If a promotion exists for a product, and a discountprice is set to a product, the discount chosen would be the best discount for the product, which makes the product the cheapest. If you want to include discountprice for a specific product with discountprice use "includeDiscountPrice" in query and set the value to 1.
          - `calculcatedvat` number, double, nullable: The calculated VAT for the product's price field.
          - `webshopurl` string, nullable: Permalink to a products webshop page, this is used when fetching Opengraph images.
          - `vatmode` 'normal' | 'second_hand': < `normal` vat calculation is based on `price` `second_hand` vat calulation is based on `price - costprice`
          - `updated_at` string, nullable: Timestamp for when the last time the customer is updated.
          - `storeid` integer, nullable: The owner storeid
          - `image` ProductImage: A Product's image
            - `blurhash` string, nullable
            - `preview_url` string
            - `full_url` string
          - `availabletoorder` integer, nullable: True by default. Enables the shopping-cart icon for the product that makes the product available to be ordered.
          - `syncproductdatawebshop` boolean, nullable: Whether or not to sync changes to webshop.
          - `deleted_at` string, nullable: Deleted date, if product is soft deleted
        - `taskmaterialid` integer, nullable: Relate the payment article to a taskmaterial. Use this to keep track of the payment status of task.
        - `discount_ppm_id` number, nullable: If the article has a discount. This will be a reference to the discount article. This will be autofilled by matching the value of discountToken and discountedToken
        - `discountToken` number
        - `discountedToken` number, nullable
        - `paymentid` integer, nullable
        - `deletedpromotion` integer, nullable: If a promotion is deleted from an article, this is set to 1, thus no further promotions will be applied to it
        - `discounttagid` integer, nullable
        - `discounttag` DiscountTag
          - `id` integer, nullable: A unique discount tag id
          - `label` string: Label for the discount
          - `handle` string, nullable: Unique handle for discounttag. Will be set automatically if not set
        - `promotionid` integer, nullable
        - `taskmaterial` TicketMaterial
          - `id` integer, nullable: A unique TicketMaterial ID
          - `taskid` integer, required
          - `title` string, required
          - `amount` number, required
          - `customerarticleid` integer, nullable
          - `customerarticle` CustomerArticle
            - `id` integer, nullable: A unique CustomerArticle ID
            - `dateadded` string, nullable: The date the customertarticle was created
            - `customerid` integer: The ID of the customer the customerarticle belongs to
            - `customer` Customer: The representation of a customer.
              - …
            - `title` string
            - `serieno` string, nullable
            - `color` string, nullable
            - `size` string, nullable
            - `customfield1` string, nullable
            - `customfield2` string, nullable
            - `customfield3` string, nullable
            - `customfield4` string, nullable
            - `storeid` integer: ID of the owning store
            - `servicesubscription` ServiceSubscription
              - …
            - `hasservicenotices` boolean: Whether or not the customer article has any service notices, check servicenotices_count instead
            - `servicenotices_count` integer: Amount of service notices
            - `permission` 'none' | 'readonly' | 'full'
            - `deleted` integer, nullable: If 1 this means that the customerarticle is deleted, 0 is not deleted.
            - `updated_at` string, nullable: Timestamp for when the last time the customer is updated.
            - `last_sold_at` string, nullable: Timestamp of when the customerarticle was last sold on a payment (this does not include return payments)
          - `price` number, double, nullable, required: Price of the product. By default price includes VAT but can be changed in the store config "prices_include_vat".
          - `costprice` number, double, nullable: Cost price of the product.
          - `pricewithoutvat` number, double, nullable: Consistently give the calculcated price without VAT. Regardless of the value of store config "prices_include_vat". See `total_ex_vat` for the total price excluding VAT.
          - `calculatedvat` number, double, nullable: The calculated VAT for the product's price field. See `total_vat` for the total VAT amount.
          - `productid` integer, nullable
          - `product` Product: The representation of a product.
            - `id` integer, nullable: A unique product ID
            - `title` string: Product name
            - `productno` string: The product no. This must be unique. If serieno is set we allow multiple products to have the same product no. For new products this value must be at most 25 chars
            - `barcode` string, nullable: A unique barcode
            - `alternativebarcode` string, nullable: This will be used when searching for a barcode, if it could not find the product, it will search for alternative barcodes for the product. You can include multiple barcodes by separating it with spaces. It will not be used in print, for example price label/sign, instead "barcode" is used.
            - `serieno` string, nullable
            - `price` number, double, nullable: Price of the product. By default price includes VAT but can be changed in the store config "prices_include_vat".
            - `pricewithoutvat` number, double, nullable: Consistently give the calculcated price without VAT. Regardless of the value of store config "prices_include_vat"
            - `costprice` number, double, nullable: Cost price of the product excl. VAT
            - `recommendedretailprice` number, double, nullable: Recommended retail price of the product
            - `stockno` integer, nullable: Number of items in stock. Set to null to disable stock keeping. Change this value if you want to overwrite the stock number. This will trigger a stock transaction rest hook If you want update stock number relative, add a stock transaction and use addtostock.
            - `previousstockno` integer, nullable: Deprecated. Use stock transactions. Previous stockno value. Only set in RestHook events; in product.updated if stockno has changed; and always in product.created with a value of 0
            - `stocknochangetype` 'absolute' | 'relative', nullable: Deprecated. Use stock transactions. Type of stockno change. Only set in RestHook events; in product.updated if stockno has changed; and always in product.created with a value of 'absolute'. When relative it indicates adding or removing (e.g. selling) items from inventory. When absolute it indicates taking inventory, e.g. setting an initial value or correcting an errornous value. See also stocknochangeisrelative in SetProduct.
            - `stockmin` integer, nullable: The minimum number of items that must be in stock before the product is in the state of needs ordering
            - `stockmax` integer, nullable: Used to suggest the number of items to be ordered when the product is added to the ordering list.
            - `suppliername` string, nullable: This field is obsolete and therefore can't add a supplier using this field. If you want to add a supplier use the "suppliers" field instead
            - `suppliers` Supplier[], nullable: List of suppliers attached to the product. If you leave supplier id empty, any suppliername that does not exits will be created.
              - …
            - `color` string, nullable
            - `styleno` string, nullable
            - `size` string, nullable
            - `brand` string, nullable
            - `vat` number, double, nullable: DEPRECATED FOR WRITE. Create `VatType` with the desired rate and assign the `vat_type_id` instead. The VAT of the product in percent. Should in most cases be NULL. NULL will default the VAT value to the one specified in store config (25 % for DK customers). When `vat_type_id` is set, this field reflects the rate of the assigned VAT type.
            - `vat_type_id` integer, nullable: The id of the assigned VAT type. When set, the product uses the rate of the referenced VAT type.
            - `vat_type` VatType
              - …
            - `lastordered` string, nullable: The date for when the product was last ordered. Can only be set while create a shoppinglistorder
            - `tags` ProductTag[], nullable: List of product tags. Hint, if you leave tag id empty, any tag that does not exist will be created.
              - …
            - `customfield1` string, nullable: Field for custom product data
            - `customfield2` string, nullable
            - `customfield3` string, nullable
            - `customfield4` string, nullable
            - `created` string, nullable
            - `reservedstock` integer, nullable: Number of items of this product reserved on open tickets
            - `totalstock` integer, nullable: The sum of serial products in stock
            - `totalavailablestock` integer, nullable: The sum of serial products available
            - `tobeordered` integer, nullable: Number of items that needs to be ordered. Based on stockmin, stockmax and whats already on shopping list.
            - `onshoppinglist` integer, nullable: Number of items already on shopping list.
            - `ordered` integer, nullable: Number of items currently in order
            - `needsordering` integer, nullable: True if the product is in low stock and needs to be ordered. Based on stockmin, stockmax and whats already in order.
            - `discountprice` number, nullable: The discounted price of the product. The discountprice can only be changed if the field is the defined in body with PUT requests. If a promotion exists for a product, and a discountprice is set to a product, the discount chosen would be the best discount for the product, which makes the product the cheapest. If you want to include discountprice for a specific product with discountprice use "includeDiscountPrice" in query and set the value to 1.
            - `calculcatedvat` number, double, nullable: The calculated VAT for the product's price field.
            - `webshopurl` string, nullable: Permalink to a products webshop page, this is used when fetching Opengraph images.
            - `vatmode` 'normal' | 'second_hand': < `normal` vat calculation is based on `price` `second_hand` vat calulation is based on `price - costprice`
            - `updated_at` string, nullable: Timestamp for when the last time the customer is updated.
            - `storeid` integer, nullable: The owner storeid
            - `image` ProductImage: A Product's image
              - …
            - `availabletoorder` integer, nullable: True by default. Enables the shopping-cart icon for the product that makes the product available to be ordered.
            - `syncproductdatawebshop` boolean, nullable: Whether or not to sync changes to webshop.
            - `deleted_at` string, nullable: Deleted date, if product is soft deleted
          - `productno` string, nullable
          - `discount_tm_id` integer, nullable
          - `usedGiftcardid` integer, nullable: If set, the material represents the use of giftcard for paying for the tasks
          - `usedGiftcard` Giftcard: A giftcard
            - `id` integer: A unique ID
            - `giftcardno` string: a unique string to identify giftcards.
            - `amount` number, double: The inital amount on the giftcard. Can only be set when the gift is created
            - `amountspent` number, double: The amount spent of the giftcard. Balance of the giftcard can be calculcated by `amount - amountspent`.
            - `paymentid` integer, nullable: If the giftcard was issued by a payment.
            - `type` 'giftcard' | 'voucher' | 'deposit'
            - `store` Store: Store object
              - …
            - `customer` Customer: The representation of a customer.
              - …
            - `customerid` integer, nullable: The unique customer ID of the currently registered customer of the giftcard, or null if none
            - `vat` number, nullable: The VAT percentage of the payment that issued the giftcard
            - `productid` integer, nullable: To be removed
            - `productno` string, nullable: To be removed
            - `external_id` number, nullable: The external id to Shopify etc.
            - `createddate` string: When the giftcard was created.
            - `expirationdate` string: When the giftcard expires. Defaults to the createddate + the value of the storeconfig "giftcard_expiration_years".
            - `draft` integer: Whether the giftcard is a draft (1) or finalized (0). Draft giftcards are created during discount-to-voucher conversion and finalized on payment completion.
            - `expired` boolean: If the giftcard has expired based on expirationdate.
            - `active` boolean, nullable: The giftcard is active if its not expired and amountspent is less than amount.
            - `deleted_at` string, nullable: When the giftcard was deleted.
            - `deleted` boolean: If the giftcard has been deleted based on deleted_at.
          - `promotionid` integer, nullable: The promotion id of the that triggered the discount
          - `deletedpromotion` integer, nullable: If a promotion is deleted from a taskmaterial, then this value is set to 1, meaning every promotion on the material will not be applied
          - `expecteddeliveries` string[]: List of dates, when the material is expected to be delivered from ongoing orders
          - `position` number: Number used to determin the order of the materials
          - `discounttagid` integer, nullable: Which discount tag it is attached to
          - `discountid` number, nullable: ID of the discount applied to the material. This will be null if the material has multiple discounts or if no discount is attached.
          - `discounttaglabel` string, nullable: Label of the discount tag
          - `bundleid` integer, nullable
          - `type` string, nullable: Can currently only be "newservicesubscription"
          - `servicesubscriptionid` integer, nullable: The id of the servicesubscription to be activated when payment completed
          - `servicesubscription` ServiceSubscription
            - `id` integer, nullable: A unique service id
            - `customerarticleid` integer: Which customer article that has been assigned to this subcription
            - `serviceplanid` integer, nullable: The id of the serviceplan it is attached to.
            - `serviceplan` ServicePlan
              - …
            - `draft` integer, nullable: Whether or not the subscription is in draft mode or not.
            - `updated_at` string, date-time, nullable: When the service was last updated
            - `created_at` string, date-time, nullable: When the service was created
            - `deleted_at` string, date-time, nullable: When the service was deleted
            - `startdate` string, nullable: When the service has started
            - `enddate` string, nullable: When the service is supposed to end. Set if the serviceplan has terms
            - `price` number, nullable: The price of the serviceplan when the service was activated
            - `permission` Permission
              - …
            - `active` boolean, nullable: Whether or not the subscription is active, by looking at start- and enddate compared to today
          - `availablestock` integer, nullable: Number of non-reserved products in stock, ignoring the amount reserved by the material itself. Is null, if the material doesn't have a product, or stock keeping is disabled for the product.
          - `availablestockexceeded` boolean: Is true, if the amount exceeds the available stock count otherwise false. Will always be false, if the material doesn't have a product, or stock keeping is disabled for the product.
          - `amountpaid` number, nullable: Amount of the material that is paid (sum of quantities on completed payments). Only included when requested with `withamountpaid` on the list endpoint.
          - `addonparentmaterialid` integer, nullable: The id of the parent material. If set, this paymentmaterial is considered to be an addon
          - `total_vat` number, double, nullable: Total vat amount
          - `total_ex_vat` number, double, nullable: Total price excluding VAT
          - `total_incl_vat` number, double, nullable: Total price including VAT
        - `bundleid` integer, nullable
        - `type` string, nullable: Can either be "recurringpaymentterm", "newservicesubscription" or "newrecurringpayment"
        - `recurringpaymentid` integer, nullable: The id of the recurring payment
        - `servicesubscriptionid` integer, nullable: The id of the servicesubscription to be activated when payment completed
        - `servicesubscription` ServiceSubscription
          - `id` integer, nullable: A unique service id
          - `customerarticleid` integer: Which customer article that has been assigned to this subcription
          - `serviceplanid` integer, nullable: The id of the serviceplan it is attached to.
          - `serviceplan` ServicePlan
            - `id` integer, nullable: A unique service id
            - `title` string: title for service
            - `handle` string, nullable: Unique handle for service. Will be set automatically if not set
            - `servicecallgroupid` integer, nullable: Which servicegroup should automatically be selected, if the service is on a customerarticle
            - `servicecallgroupids` integer[], nullable: An array of which servicegroup should automatically be selected, if the service is on a customerarticle
            - `servicecallgroup` ServiceNotificationTemplateGroup: A group of service notification templates
              - …
            - `servicecallgroups` ServiceNotificationTemplateGroup[], nullable
              - …
            - `producttagidsrestriction` integer[], nullable: Array of producttag ids where this service can be applied to. If tagid 1 and 2 is set as restriction, the product have to at least one of them in order to be included in the search
            - `producttaghandlesrestriction` string[], nullable: Array of producttag handles where this service can be applied to. If handle bike and mountainbike is set as restriction, the product have to at least one of them in order to be included in the search.
            - `producttagsrestriction` ProductTag[], nullable: Array of producttags where this service can be applied to.
              - …
            - `visibility` 'all' | 'secondhandvat' | 'normalvat': Determines what types of products this plan is visible for. All makes the plan visible for products with normalvat and secondhandvat
            - `price` number, nullable: If set, when adding a serviceplan to a serial product, it will create a material with the given price, and set the type of the material as "serivceplan"
            - `terms` integer, nullable: If set, when adding a serviceplan, an enddate is set to be x months from startdate for a subscription
            - `updated_at` string, date-time, nullable: When the service was last updated
            - `created_at` string, date-time, nullable: When the service was created
            - `deleted_at` string, date-time, nullable: When the service was soft deleted
            - `followproductno` string, nullable: When adding a service to a customerarticle, the product with the given followproductno will added as an additional material.
          - `draft` integer, nullable: Whether or not the subscription is in draft mode or not.
          - `updated_at` string, date-time, nullable: When the service was last updated
          - `created_at` string, date-time, nullable: When the service was created
          - `deleted_at` string, date-time, nullable: When the service was deleted
          - `startdate` string, nullable: When the service has started
          - `enddate` string, nullable: When the service is supposed to end. Set if the serviceplan has terms
          - `price` number, nullable: The price of the serviceplan when the service was activated
          - `permission` Permission
            - `read` boolean
            - `write` boolean
          - `active` boolean, nullable: Whether or not the subscription is active, by looking at start- and enddate compared to today
        - `loyaltypoints` number, nullable: The amount of desired loyalty points to be credited by this paymentmaterial.
        - `loyaltypoints_transactioned` number, nullable: The transactioned changed of loyalty points when payment is completed.
        - `addonparentmaterialid` integer, nullable: The id of the parent material. If set, this paymentmaterial is considered to be an addon
        - `date` string, nullable
        - `salesorder_fulfillment` boolean, nullable
        - `discountid` integer, nullable: The id of the discount added to the paymentmaterial
        - `returnmaterialid` number, nullable: An id referencing the paymentmaterial being returned
        - `returntagid` number, nullable: An id referencing the return tag (reason) of the paymentmaterial being returned
        - `total_vat` number, double, nullable: Total vat amount
        - `total_ex_vat` number, double, nullable: Total price excluding VAT
        - `total_incl_vat` number, double, nullable: Total price including VAT
        - `total_discount_incl_vat` number, double, nullable: Total discount including VAT for this line item (negative number; 0 when no discount)
        - `vat_type_id` integer, nullable: The id of the vat type from the product at the time it was created.
      - `taskids` integer[]: An optional list of ticket id attached to the payment. Not provided with GET payments
      - `salesOrderId` integer, nullable: The id of the sales order if any was attached to the payment Not provided with GET payments
      - `paidwithcash` number, nullable: The sum of payment types considered cash payments.
      - `paymenttypes` PaymentTypeRelation[], nullable: A list of payment transactions used as means of payments.
        - `id` integer, nullable
        - `title` string: The title of the payment. E.g. 'cash' or 'Dankort'
        - `paymenttypeid` integer, nullable: reference to user created payment type.
        - `amount` number, double: The amount of the payment type.
        - `unroundedcash` number, double, nullable: The unrounded amount for a cash payment. Used to calculate rounding difference
        - `cash` integer: Returns whether or not the payment type is cash-based.
        - `bamdesk_messageid` integer, nullable: If provider = 'bamdesk'. This will be the id for the messageid for Worldline card-terminal.
        - `accountno` string, nullable: The account where the payment has been posted. If not applicable, it will be null.
        - `currency` string, nullable: 3-digit currency code if the payment is in foreign currency.
        - `exchangerate` number, double, nullable: The exchange rate if the payment is in foreign currency
        - `receipts` string[], nullable: Index for where it's stored.
        - `receiptsCount` integer, nullable: Number of entries in receipts.
        - `mobilepayid` string, nullable: If provider = 'mobilepay' this is a reference to the Mobile Pay transaction
        - `paymentid` integer, nullable: The paymentid the type is related to
        - `vipps_reference_id` string, nullable: The reference for the vipps payment
        - `adyen_reference_id` string, nullable: The reference for the adyen payment
        - `error_message` string, nullable: If an error occured during the payment, this will contain the error message, if supported by the provider.
        - `provider` union
          - 'mobilepay' | 'bamdesk' | 'nets' | 'stripe' | 'vipps' | 'adyen' | 'adyen_ecommerce' | 'fashioncheque', nullable
          - string, nullable: If payment was handled by an external provider use this string indicate the provider.
        - `status` 'initiated' | 'reserved' | 'cancelled' | 'captured'
        - `initiated_amount` number, double, nullable: The amount attempted when the payment type was initiated. Defaults to `amount` when omitted on creation.
        - `created_at` string, nullable: The timestamp for when the payment type relation was created.
        - `updated_at` string, nullable: The timestamp for when the payment type relation was last updated.
      - `surcharge_amount` number, nullable: The surcharge amount that was applied to the payment, if any.
      - `storeid` integer, nullable: Included when partner store payments are included
      - `customerpaymentsum` number, nullable: Total payment sum for customer, only set if customerid and customerPaymentSum query parameters are set
      - `cash` integer, nullable: Deprecated. To be removed soon
      - `secondhand` integer, nullable: Set to 1 i f the return of the payment has secondhand products (only necessary to set if you want statistics of secondhand sales)
      - `status` 'initialized' | 'parked' | 'in_progress' | 'completed' | 'cancelled'
      - `returnpaymentid` integer, nullable: A reference ID to the POSPayment being returned. Only relevant for return sales.
      - `lastmodifiedbyuserid` integer, nullable: ID of the user who last modified the payment by changing the status from in_progress to complete/cancelled
      - `lastmodifiedbyuser` object, nullable: The user refered to by lastmodifiedbyuserid
        - `name` string
        - `id` number
      - `note` string, nullable: A piece of text attached to the payment.
      - `permission` 'none' | 'readonly' | 'full'
      - `source` 'assisted-checkout' | 'pos', nullable: Source of the payment. Can either be 'assisted-checkout' or 'pos'
    - `paid` boolean
    - `agreedPrice` number, double, nullable: Price agreed with customer incl. VAT
    - `numComments` integer: How many comments exist on the ticket.
    - `totalPrice` number, double, nullable: Total price of the all materials incl. VAT
    - `draft` integer: Whether or not the ticket is in draft mode
    - `tags` TicketTag[]
      - `id` integer: A unique ticket ID
      - `label` string
      - `color` string, nullable
      - `handle` string, nullable: Unique handle for the produttag. Will be set automatically if not set. This value cannot be changed.
    - `tagids` number[]
    - `status` 'new' | 'ready' | 'done' | 'awaiting' | 'quote' | 'draft', required
    - `type` 'repair' | 'sale', required
    - `taskserviceid` integer, nullable: Id of a task service attached to the task
    - `storeid` integer: ID of the owning store
    - `payingcustomerid` integer, nullable: If payingcustomerid is set, it will use payingcustomerid as customer when the ticket is paid
    - `payingcustomer` Customer: The representation of a customer.
      - `id` integer: A unique customer ID
      - `storeid` integer: ID for the store for which the customer is associated
      - `createddate` string, nullable
      - `name` string, nullable: The name of the customer.
      - `phone` string, nullable: The phone number of the customer. Should start with country code, like +45. If not, assume +45.
      - `phone_e164` string, nullable: Phone number in E.164 format, might sometimes be the same as "phone" but this field is guaranteed to be in E.164 format
      - `country` string, nullable: The country of the phone number. Must be in format ISO 3166-1 alpha-2.
      - `email` string, nullable: The email of the customer.
      - `barcode` string, nullable: Barcode used for POS customer lookup via barcode scanning.
      - `address` string, nullable: The address of the customer.
      - `city` string, nullable: The city of the customer.
      - `zipcode` string, nullable: The zip code of the customer.
      - `addr_country` string, nullable: The country of the customers address.
      - `lat` number, double, nullable: The latitude of the customer.
      - `lng` number, double, nullable: The longitude of the customer.
      - `birthdate` string, nullable
      - `ean` string, nullable: The EAN number associated with the customer. Must be a valid EAN.
      - `vat` string, nullable: The VAT/CVR number associated with the customer.
      - `customerno` string, nullable: The customer-number associated with the customer.
      - `economic_customernumber` integer, nullable: The e-conomic number of the customer.
      - `balance` number, nullable: The customer's balance
      - `note` string, nullable: A note about the customer.
      - `draft` integer: Whether or not the customer is in draft mode
      - `deleted` integer: Whether or not the customer is deleted
      - `tags` CustomerTag[], nullable: Tags associated with the customer.
        - `title` string, required: The title of the tag
        - `id` integer, nullable: The id of the tag
        - `handle` string, nullable: Unique handle for the produttag. Will be set automatically if not set. This value cannot be changed once set.
        - `color` string, nullable: The color used when displaying the tag in the app
      - `permission_marketing` string, nullable: Timestamp for if when the permission has been granted. `null` if permission hasn't been granted.
      - `updated_at` string, nullable: Timestamp for when the last time the customer is updated.
      - `deleted_at` string, nullable: Timestamp for when the last time the customer is deleted.
      - `loyaltypointsbalance` number, nullable: The customers loyalty point balance
      - `loyalty_member_since` string, nullable: Datetime of when the customer joined the loyalty club. If null, the customer is not part of the loyalty club
      - `loyalty_member_id` number, nullable: Assigned loyalty membership ID when the customer joined the loyalty club. If null, the customer is not part of the loyalty club
      - `shopify_customer_id` number, nullable: The corresponding ShopifyCustomerId if customer is syncronized with Shopify
      - `store` object: Name of partner store that customer is registered in. requires scope 'customerlookup'
        - `id` integer: Store id
        - `title` string: Store title
    - `contactcustomerid` integer, nullable: The primary contact customer who will receive SMS
    - `contactcustomer` Customer: The representation of a customer.
      - `id` integer: A unique customer ID
      - `storeid` integer: ID for the store for which the customer is associated
      - `createddate` string, nullable
      - `name` string, nullable: The name of the customer.
      - `phone` string, nullable: The phone number of the customer. Should start with country code, like +45. If not, assume +45.
      - `phone_e164` string, nullable: Phone number in E.164 format, might sometimes be the same as "phone" but this field is guaranteed to be in E.164 format
      - `country` string, nullable: The country of the phone number. Must be in format ISO 3166-1 alpha-2.
      - `email` string, nullable: The email of the customer.
      - `barcode` string, nullable: Barcode used for POS customer lookup via barcode scanning.
      - `address` string, nullable: The address of the customer.
      - `city` string, nullable: The city of the customer.
      - `zipcode` string, nullable: The zip code of the customer.
      - `addr_country` string, nullable: The country of the customers address.
      - `lat` number, double, nullable: The latitude of the customer.
      - `lng` number, double, nullable: The longitude of the customer.
      - `birthdate` string, nullable
      - `ean` string, nullable: The EAN number associated with the customer. Must be a valid EAN.
      - `vat` string, nullable: The VAT/CVR number associated with the customer.
      - `customerno` string, nullable: The customer-number associated with the customer.
      - `economic_customernumber` integer, nullable: The e-conomic number of the customer.
      - `balance` number, nullable: The customer's balance
      - `note` string, nullable: A note about the customer.
      - `draft` integer: Whether or not the customer is in draft mode
      - `deleted` integer: Whether or not the customer is deleted
      - `tags` CustomerTag[], nullable: Tags associated with the customer.
        - `title` string, required: The title of the tag
        - `id` integer, nullable: The id of the tag
        - `handle` string, nullable: Unique handle for the produttag. Will be set automatically if not set. This value cannot be changed once set.
        - `color` string, nullable: The color used when displaying the tag in the app
      - `permission_marketing` string, nullable: Timestamp for if when the permission has been granted. `null` if permission hasn't been granted.
      - `updated_at` string, nullable: Timestamp for when the last time the customer is updated.
      - `deleted_at` string, nullable: Timestamp for when the last time the customer is deleted.
      - `loyaltypointsbalance` number, nullable: The customers loyalty point balance
      - `loyalty_member_since` string, nullable: Datetime of when the customer joined the loyalty club. If null, the customer is not part of the loyalty club
      - `loyalty_member_id` number, nullable: Assigned loyalty membership ID when the customer joined the loyalty club. If null, the customer is not part of the loyalty club
      - `shopify_customer_id` number, nullable: The corresponding ShopifyCustomerId if customer is syncronized with Shopify
      - `store` object: Name of partner store that customer is registered in. requires scope 'customerlookup'
        - `id` integer: Store id
        - `title` string: Store title
    - `templates` TicketTemplateRelation[], nullable
      - `id` integer: An id for the relation.
      - `ticketid` integer: Task Id for the relation
      - `templateid` integer
      - `template` TicketTemplate
        - `id` integer: A unique ticket ID
        - `label` string
        - `expected_minutes` integer, nullable: Expected work time in minutes for this task. Null means no estimate has been given; 0 means the task takes no time. Omitting it on update keeps the current value.
        - `groupid` integer: Which TicketTemplateGroup this TicketTemplate applies to
        - `created_at` string, nullable
        - `updated_at` string, nullable
        - `handle` string, nullable: Unique handle for tasktemplates. Will be set automatically if not set
        - `position` number: Number used to determine the order of the TaskTemplate
        - `note` string, nullable
        - `duedate` string, nullable
      - `note` string, nullable
      - `duedate` string, nullable
      - `updated_at` string, nullable
      - `created_at` string, nullable
      - `notified_at` string, nullable
      - `status` 'initialized' | 'completed'
      - `status_changed_by_userid` integer, nullable: The ID of the employee who last check-marked the task template.
      - `timespent` integer, nullable: Allocated time on task
      - `expected_minutes` integer, nullable: Expected work time in minutes, copied from the task template when it was added to the ticket. Use this rather than template.expected_minutes, which reflects the current template.
      - `position` number: Number used to determine the order of the TaskTemplate
      - `label` string: use template.label
      - `handle` string: use template.handle
      - `groupid` integer: use template.groupid
    - `updated_at` string, nullable: Timestamp for when the last time the customer is updated.
    - `deleted_at` string, nullable: Timestamp for when the ticket was deleted
    - `permission` 'none' | 'readonly' | 'full'
    - `workload` number: The estimated work load of this task. Has to be a positive decimal number.
    - `expected_minutes` integer: Total expected work time in minutes of the ticket's task lines. Lines without an estimate count as 0.
    - `override_vat` number, double, nullable: Legacy. Snapshot of the override VAT rate as a percentage. New clients should set `override_vat_type_id` instead; this field is then maintained server-side to reflect the rate of the assigned VAT type.
    - `override_vat_type_id` integer, nullable: The id of the VAT type used to override the VAT rate on this ticket's materials. When set, the override uses the rate of the referenced VAT type and `override_vat` is kept in sync.
    - `override_vat_type` VatType
      - `id` integer
      - `name` string
      - `rate` number
      - `revenue_account_no` string, nullable: Revenue account number for the revenue incl amount
      - `is_ticket_override` boolean: When true, this VAT type can be used to seed override VAT on new repair tickets.
      - `vat_account_no` string, nullable: VAT account number for the revenue vat part

---

[API](https://skmtc.dev/c1st/apis/customers-1st-api.md) - [All operations](https://skmtc.dev/c1st/apis/customers-1st-api/llms.txt) - [OpenAPI document](https://skmtc.dev/c1st/apis/customers-1st-api/revisions/4250bb326f2a?raw)
