Customer
Customer entity representing a B2C customer with associated addresses.
Provides access to address information for customer accounts including delivery, billing, and contact addresses used for order fulfillment.
type Customer implements IBaseUser {
customerId: Int!
addresses(
type: AddressType
isDefault: YesNo
): [Address!]!
attributes(
input: AttributeResultSearchInput
): AttributeResultResponse
magicTokens: [MagicToken!]!
favoriteLists(
input: FavoriteListsBaseSearchInput
): FavoriteListsResponse
orderlist: OrderlistsResponse
orderlists(
input: OrderlistSearchInput
): OrderlistsResponse!
pricesheets: [Pricesheet!]
userId: Int
debtorId: String
gender: Gender
firstName: String!
middleName: String
lastName: String!
phone: String
mobile: String
email: String!
login: String
iban: String
bankAccount: String
bic: String
notes: String
primaryLanguage: String
expires: DateTime
externalId: String
dateOfBirth: DateTime
mailingList: YesNo
isLoggedIn: Boolean
createdAt: DateTime
lastModifiedAt: DateTime
parentUsergroupId: Int!
usergroup: Usergroup @deprecated
sources: [Source!]!
usergroupPath: [Usergroup!]!
}
Fields
Customer.customerId
● Int!
non-null scalar
Unique identifier for the customer.
Primary key used to reference the customer throughout the system and establish relationships with orders, transactions, and other customer-specific data.
Customer.addresses
● [Address!]!
non-null object
Collection of addresses associated with this customer.
Includes all address types (home, delivery, invoice) linked to the customer account. Can be filtered by type and default status.
Customer.addresses.type
● AddressType
enum
Filter addresses by their designated type.
When provided, returns only addresses matching the specified type (home, delivery, invoice). If omitted, returns all address types.
Customer.addresses.isDefault
● YesNo
enum
Filter addresses by their default status.
When set to Y, returns only default addresses for their respective types. When set to N, returns only non-default addresses. If omitted, returns all addresses regardless of default status.
Customer.attributes
● AttributeResultResponse
object
Lists attributes for this customer based on the search input.
Customer.attributes.input
● AttributeResultSearchInput
input
Customer.magicTokens
● [MagicToken!]!
non-null object
Get all magic tokens for a customer
Customer.favoriteLists
● FavoriteListsResponse
object
Collection of favorite lists associated with this customer.
Returns paginated results of all favorite lists owned by this customer. Includes both default and non-default lists with their complete metadata and content.
Response Structure:
- Paginated list of customer favorite lists
- Complete favorite list metadata
- Associated products and clusters
- Creation and modification timestamps
Filtering Capabilities:
- Search by list name
- Filter by default status
- Date range filtering
- Content-based filtering
Use Cases:
- Personal shopping and wishlists
- Repeat purchase management
- Product recommendation systems
- Customer preference tracking
Customer.favoriteLists.input
● FavoriteListsBaseSearchInput
input
Customer.orderlist
● OrderlistsResponse
object
Order lists that are assigned to or accessible by this customer.
Returns a paginated collection of order lists where this customer has been granted access. The customer will be able to see and order from these lists based on their permissions. Results can be filtered using the input parameter for more specific queries.
Customer.orderlists
● OrderlistsResponse!
non-null object
Customer.orderlists.input
● OrderlistSearchInput
input
Search and filtering criteria for order lists assigned to this customer.
Filters the results to show only order lists that are assigned to or accessible by this specific customer. All standard search criteria can be applied in addition to the customer-specific filtering.
If not provided, returns all order lists accessible to this customer with default pagination settings.
Validation: All provided search criteria must be valid according to their respective field requirements.
Customer.pricesheets
● [Pricesheet!]
list object
Customer.userId
● Int
scalar
Unique identifier for the user.
Primary key used to reference the user throughout the system and establish relationships with other entities.
Customer.debtorId
● String
scalar
Financial identifier for billing and accounting purposes.
Links the user to financial records and billing systems for transaction processing and account management.
Customer.gender
● Gender
enum
Gender identity of the user.
Used for personalization and communication preferences. Respects privacy preferences and is not required for account functionality.
Customer.firstName
● String!
non-null scalar
Given name of the user.
Primary name used for personal identification and communication. Required for account creation and user recognition.
Customer.middleName
● String
scalar
Middle name or initial of the user.
Additional name component used for formal identification and complete name display when available.
Customer.lastName
● String!
non-null scalar
Family name of the user.
Surname used for formal identification and complete name display. Required for account creation and user recognition.
Customer.phone
● String
scalar
Primary phone number for voice communication.
Landline or office phone number used for business communications and account verification.
Customer.mobile
● String
scalar
Mobile phone number for direct communication.
Cell phone number used for SMS notifications, two-factor authentication, and urgent communications.
Customer.email
● String!
non-null scalar
Primary email address for digital communication.
Main contact email used for account notifications, password resets, and business communications. Must be unique and in valid email format.
Customer.login
● String
scalar
Authentication email address for system access.
Email address used for login credentials and account authentication. When null, no account access has been configured. Usually matches the primary email address.
Customer.iban
● String
scalar
International Bank Account Number for financial transactions.
Standardized bank account identifier used for direct debits, payments, and financial processing. Must be in valid IBAN format.
Customer.bankAccount
● String
scalar
Local bank account number for financial transactions.
Domestic bank account identifier used for payments and financial processing in regions where IBAN is not standard.
Customer.bic
● String
scalar
Bank Identification Code for international transfers.
SWIFT/BIC code identifying the user's bank for international wire transfers and financial communications.
Customer.notes
● String
scalar
Additional notes and comments about the user.
Free-form text field for storing special instructions, preferences, or important information about the user account.
Customer.primaryLanguage
● String
scalar
Preferred language for user interface and communications.
Language code (e.g., 'NL', 'EN', 'DE') used for localizing the user interface and determining the language for automated communications.
Customer.expires
● DateTime
scalar
Account expiration date and time.
Date when the user's access expires and the account becomes inactive. After this date, the user cannot authenticate or access system resources.
Customer.externalId
● String
scalar
External system reference identifier.
Unique identifier used to link this user with records in external systems, legacy databases, or third-party integrations.
Customer.dateOfBirth
● DateTime
scalar
Date of birth for age verification and personalization.
Used for age-restricted features, birthday communications, and demographic analysis. Must be in the past and in YYYY-MM-DD format.
Customer.mailingList
● YesNo
enum
Marketing communication subscription preference.
Indicates whether the user has opted in to receive marketing emails, newsletters, and promotional communications.
Customer.isLoggedIn
● Boolean
scalar
Current authentication status indicator.
Shows whether the user is currently logged into the system. Updated automatically during login and logout processes.
Customer.createdAt
● DateTime
scalar
Timestamp when the user account was created.
Automatically set when the user is first created in the system. Used for auditing, analytics, and account age calculations.
Customer.lastModifiedAt
● DateTime
scalar
Timestamp when the user information was last updated.
Automatically updated whenever any user information is modified. Used for auditing, synchronization, and change tracking.
Customer.parentUsergroupId
● Int!
non-null scalar
Parent usergroup identifier for organizational hierarchy.
References the usergroup that contains this customer in the organizational structure. Used for customer segmentation.
Customer.usergroup
● Usergroup
deprecated object
This field is deprecated and will be removed in a future
Customer.sources
● [Source!]!
non-null object
Customer.usergroupPath
● [Usergroup!]!
non-null object
Interfaces
IBaseUser
interface
Base interface for all user types in the system.
Defines common properties shared across users, contacts, and customers. This interface provides a unified structure for user-related data while allowing for type-specific implementations.
Returned By
customer
query ● customerCreate
mutation ● customerUpdate
mutation
Member Of
Cart
object ● CustomersResponse
object ● FavoriteList
object ● MagicToken
object ● OrderRevision
object ● Pricesheet
object ● Tender
object ● Usergroup
object