Customer
Access token recevied after user login with a deviceToken
Reference to a tenant.
^[A-Za-z0-9-_]+External reference to a customer.
Reference to a specific page in a result set.
The number of items per page in a result set.
Defines which field the resource list is sorted by.
| ENUM | Description |
|---|---|
| ASC | Sort in ascending order |
| DESC | Sort in descending order |
CustomerListResponse
GET /v2/tenants/{tenantUid}/customers HTTP/1.1
Host: api.flowretail.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
CustomerListResponse
{
"items": [
{
"address": "text",
"city": "text",
"companyName": "text",
"countryCode": "text",
"createdAt": "2026-01-01T00:00:00.000Z",
"customerUid": "text",
"customerParentUid": "text",
"customerType": "COMPANY",
"email": "text",
"externalId": "text",
"firstname": "text",
"lastModifiedAt": "2026-01-01T00:00:00.000Z",
"lastname": "text",
"mobile": "text",
"postalCode": "text",
"pricelistUid": "text",
"vatNumber": "text",
"origin": "text",
"addresses": [
{
"address": "text",
"city": "text",
"companyName": "text",
"firstname": "text",
"lastname": "text",
"countryCode": "text",
"email": "text",
"phone": "text",
"postalCode": "text",
"type": "DELIVERY_ADDRESS",
"customerAddressUid": "text",
"displayName": "text"
}
],
"contacts": [
{
"firstname": "text",
"lastname": "text",
"email": "text",
"mobile": "text",
"createdAt": "2026-01-01T00:00:00.000Z",
"lastModifiedAt": "2026-01-01T00:00:00.000Z",
"customerContactUid": "text",
"extensions": [
{
"extensionCode": "TWO_INVOICE",
"organizationUid": "text"
}
],
"displayName": "text",
"role": "ADMIN"
}
],
"extensions": [
{
"extensionCode": "TWO_INVOICE",
"organizationUid": "text"
}
],
"consents": [
{
"consentUid": "text",
"name": "text",
"status": true,
"source": "text",
"createdAt": "2026-01-01T00:00:00.000Z"
}
],
"loyaltyId": "text",
"displayName": "text",
"credit": {
"limit": 1,
"balance": 1
},
"paymentTerms": 1,
"internalNote": "text",
"accountManager": {
"tenantUserUid": "text",
"displayName": "text",
"userCode": "text"
},
"ehfEnabled": true,
"ehf": {
"enabled": true,
"address": "text"
},
"customerGroupUids": [
"text"
],
"defaultStore": {
"name": "text",
"storeUid": "text"
},
"relevance": 1
}
],
"paging": {
"pageNumber": 1,
"pageSize": 1,
"totalCount": 1
}
}Access token recevied after user login with a deviceToken
Reference to a tenant.
^[A-Za-z0-9-_]+ISO 3166-1: 2 characters representation of country
Ledger number must be a valid number with possible leading zeros
VAT identification number for value added tax reporting purposes.
^[A-Za-z0-9-_]*Number of days to calculate due date on invoice
This field is deprecated. Use ehf -> enabled instead
^[A-Za-z0-9-_]+References another customer, establishing it as a department under the main customer. Only applicable when customerType is COMPANY.
^[A-Za-z0-9-_]*^[A-Za-z0-9-_]+Example response
CustomerResponseSchema
ISO 3166-1: 2 characters representation of country
^[A-Za-z0-9-_]+References another customer, establishing it as a department under the main customer. Only applicable when customerType is COMPANY.
^[A-Za-z0-9-_]*Deprecated. Use ledgerNumber in accountingConfigs instead
^[A-Za-z0-9-_]*VAT identification number for value added tax reporting purposes.
Deprecated: Use ehf -> enabled instead
POST /v2/tenants/{tenantUid}/customers HTTP/1.1
Host: api.flowretail.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 614
{
"address": "text",
"city": "text",
"companyName": "text",
"countryCode": "text",
"customerType": "COMPANY",
"email": "text",
"externalId": "text",
"firstname": "text",
"lastname": "text",
"ledgerNumber": "text",
"mobile": "text",
"postalCode": "text",
"vatNumber": "text",
"pricelistUid": "text",
"origin": "text",
"loyaltyId": "text",
"credit": {
"limit": 1
},
"paymentTerms": 1,
"internalNote": "text",
"accountManager": {
"tenantUserUid": "text"
},
"customerGroupUids": [
"text"
],
"ehf": {
"enabled": true,
"address": "text"
},
"defaultStoreUid": "text",
"customerParentUid": "text",
"customerUid": "text",
"consents": [
{
"source": "text",
"status": true,
"consentUid": "text"
}
]
}Example response
{
"address": "text",
"city": "text",
"companyName": "text",
"countryCode": "text",
"createdAt": "2026-01-01T00:00:00.000Z",
"customerUid": "text",
"customerParentUid": "text",
"customerType": "COMPANY",
"email": "text",
"externalId": "text",
"firstname": "text",
"lastModifiedAt": "2026-01-01T00:00:00.000Z",
"lastname": "text",
"mobile": "text",
"postalCode": "text",
"pricelistUid": "text",
"vatNumber": "text",
"origin": "text",
"addresses": [
{
"address": "text",
"city": "text",
"companyName": "text",
"firstname": "text",
"lastname": "text",
"countryCode": "text",
"email": "text",
"phone": "text",
"postalCode": "text",
"type": "DELIVERY_ADDRESS",
"customerAddressUid": "text",
"displayName": "text"
}
],
"contacts": [
{
"firstname": "text",
"lastname": "text",
"email": "text",
"mobile": "text",
"createdAt": "2026-01-01T00:00:00.000Z",
"lastModifiedAt": "2026-01-01T00:00:00.000Z",
"customerContactUid": "text",
"extensions": [
{
"extensionCode": "TWO_INVOICE",
"organizationUid": "text"
}
],
"displayName": "text",
"role": "ADMIN"
}
],
"extensions": [
{
"extensionCode": "TWO_INVOICE",
"organizationUid": "text"
}
],
"consents": [
{
"consentUid": "text",
"name": "text",
"status": true,
"source": "text",
"createdAt": "2026-01-01T00:00:00.000Z"
}
],
"loyaltyId": "text",
"displayName": "text",
"credit": {
"limit": 1,
"balance": 1
},
"paymentTerms": 1,
"internalNote": "text",
"accountManager": {
"tenantUserUid": "text",
"displayName": "text",
"userCode": "text"
},
"ehfEnabled": true,
"ehf": {
"enabled": true,
"address": "text"
},
"customerGroupUids": [
"text"
],
"defaultStore": {
"name": "text",
"storeUid": "text"
},
"relevance": 1
}Access token recevied after user login with a deviceToken
Reference to a tenant.
^[A-Za-z0-9-_]+Reference to a specific page in a result set.
The number of items per page in a result set.
Defines which field the resource list is sorted by.
| ENUM | Description |
|---|---|
| ASC | Sort in ascending order |
| DESC | Sort in descending order |
^[A-Za-z0-9-_]+^[A-Za-z0-9-_]+CustomerListResponse
POST /v2/tenants/{tenantUid}/customers/search HTTP/1.1
Host: api.flowretail.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 217
{
"exactMatch": true,
"query": "text",
"mobile": "text",
"email": "text",
"scope": [
"CUSTOMER"
],
"customerTypes": [
"COMPANY"
],
"vatNumber": "text",
"storeUid": "text",
"customerParentUid": "text",
"createdAt": "2026-01-01T00:00:00.000Z"
}CustomerListResponse
{
"items": [
{
"address": "text",
"city": "text",
"companyName": "text",
"countryCode": "text",
"createdAt": "2026-01-01T00:00:00.000Z",
"customerUid": "text",
"customerParentUid": "text",
"customerType": "COMPANY",
"email": "text",
"externalId": "text",
"firstname": "text",
"lastModifiedAt": "2026-01-01T00:00:00.000Z",
"lastname": "text",
"mobile": "text",
"postalCode": "text",
"pricelistUid": "text",
"vatNumber": "text",
"origin": "text",
"addresses": [
{
"address": "text",
"city": "text",
"companyName": "text",
"firstname": "text",
"lastname": "text",
"countryCode": "text",
"email": "text",
"phone": "text",
"postalCode": "text",
"type": "DELIVERY_ADDRESS",
"customerAddressUid": "text",
"displayName": "text"
}
],
"contacts": [
{
"firstname": "text",
"lastname": "text",
"email": "text",
"mobile": "text",
"createdAt": "2026-01-01T00:00:00.000Z",
"lastModifiedAt": "2026-01-01T00:00:00.000Z",
"customerContactUid": "text",
"extensions": [
{
"extensionCode": "TWO_INVOICE",
"organizationUid": "text"
}
],
"displayName": "text",
"role": "ADMIN"
}
],
"extensions": [
{
"extensionCode": "TWO_INVOICE",
"organizationUid": "text"
}
],
"consents": [
{
"consentUid": "text",
"name": "text",
"status": true,
"source": "text",
"createdAt": "2026-01-01T00:00:00.000Z"
}
],
"loyaltyId": "text",
"displayName": "text",
"credit": {
"limit": 1,
"balance": 1
},
"paymentTerms": 1,
"internalNote": "text",
"accountManager": {
"tenantUserUid": "text",
"displayName": "text",
"userCode": "text"
},
"ehfEnabled": true,
"ehf": {
"enabled": true,
"address": "text"
},
"customerGroupUids": [
"text"
],
"defaultStore": {
"name": "text",
"storeUid": "text"
},
"relevance": 1
}
],
"paging": {
"pageNumber": 1,
"pageSize": 1,
"totalCount": 1
}
}Access token recevied after user login with a deviceToken
Reference to a tenant.
^[A-Za-z0-9-_]+Reference to a specific page in a result set.
The number of items per page in a result set.
Defines which field the resource list is sorted by.
| ENUM | Description |
|---|---|
| ASC | Sort in ascending order |
| DESC | Sort in descending order |
CustomerExternalListResponse
POST /v2/tenants/{tenantUid}/customers/search/external HTTP/1.1
Host: api.flowretail.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 16
{
"query": "text"
}CustomerExternalListResponse
{
"items": [
{
"address": "text",
"city": "text",
"companyName": "text",
"countryCode": "text",
"createdAt": "2026-01-01T00:00:00.000Z",
"customerUid": "text",
"customerType": "COMPANY",
"email": "text",
"externalId": "text",
"firstname": "text",
"lastModifiedAt": "2026-01-01T00:00:00.000Z",
"lastname": "text",
"ledgerNumber": "text",
"mobile": "text",
"postalCode": "text",
"pricelistUid": "text",
"vatNumber": "text",
"origin": "text"
}
],
"paging": {
"pageNumber": 1,
"pageSize": 1,
"totalCount": 1
}
}Export customer data in structured form. JSON is the only available format now
Access token recevied after user login with a deviceToken
Reference to a tenant.
^[A-Za-z0-9-_]+Reference to a Customer.
^[A-Za-z0-9-_]+Example response
Customer information with associated orders and services
GET /v2/tenants/{tenantUid}/customers/{customerUid}/export HTTP/1.1
Host: api.flowretail.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
Example response
{
"customer": {
"address": "text",
"city": "text",
"companyName": "text",
"countryCode": "text",
"createdAt": "2026-01-01T00:00:00.000Z",
"customerUid": "text",
"customerParentUid": "text",
"customerType": "COMPANY",
"email": "text",
"externalId": "text",
"firstname": "text",
"lastModifiedAt": "2026-01-01T00:00:00.000Z",
"lastname": "text",
"mobile": "text",
"postalCode": "text",
"pricelistUid": "text",
"vatNumber": "text",
"origin": "text",
"addresses": [
{
"address": "text",
"city": "text",
"companyName": "text",
"firstname": "text",
"lastname": "text",
"countryCode": "text",
"email": "text",
"phone": "text",
"postalCode": "text",
"type": "DELIVERY_ADDRESS",
"customerAddressUid": "text",
"displayName": "text"
}
],
"contacts": [
{
"firstname": "text",
"lastname": "text",
"email": "text",
"mobile": "text",
"createdAt": "2026-01-01T00:00:00.000Z",
"lastModifiedAt": "2026-01-01T00:00:00.000Z",
"customerContactUid": "text",
"extensions": [
{
"extensionCode": "TWO_INVOICE",
"organizationUid": "text"
}
],
"displayName": "text",
"role": "ADMIN"
}
],
"extensions": [
{
"extensionCode": "TWO_INVOICE",
"organizationUid": "text"
}
],
"consents": [
{
"consentUid": "text",
"name": "text",
"status": true,
"source": "text",
"createdAt": "2026-01-01T00:00:00.000Z"
}
],
"loyaltyId": "text",
"displayName": "text",
"credit": {
"limit": 1,
"balance": 1
},
"paymentTerms": 1,
"internalNote": "text",
"accountManager": {
"tenantUserUid": "text",
"displayName": "text",
"userCode": "text"
},
"ehfEnabled": true,
"ehf": {
"enabled": true,
"address": "text"
},
"customerGroupUids": [
"text"
],
"defaultStore": {
"name": "text",
"storeUid": "text"
},
"relevance": 1
},
"orders": [
{
"createdAt": "2026-01-01T00:00:00.000Z",
"customerAddress": {
"address": "text",
"city": "text",
"companyName": "text",
"countryCode": "text",
"email": "text",
"firstname": "text",
"lastname": "text",
"mobile": "text",
"postalCode": "text",
"vatNumber": "text",
"displayName": "text"
},
"customerUid": "text",
"customerContact": {
"customerContactUid": "text",
"firstname": "text",
"lastname": "text",
"email": "text",
"mobile": "text",
"displayName": "text"
},
"deliveryState": "NOT_STARTED",
"externalOrderNumber": "text",
"externalVoucherNumber": "text",
"invoiceAddress": {
"address": "text",
"city": "text",
"companyName": "text",
"countryCode": "text",
"email": "text",
"mobile": "text",
"firstname": "text",
"lastname": "text",
"postalCode": "text",
"displayName": "text",
"customerAddressUid": "text"
},
"items": [
{
"actions": [
{
"comment": "text",
"createdAt": "2026-01-01T00:00:00.000Z",
"createdBy": "text",
"handlingActionUid": "text",
"handlingActionName": "text",
"handlingDescription": "text",
"handlingUid": "text",
"handlingName": "text",
"lastModifiedAt": "2026-01-01T00:00:00.000Z",
"lastModifiedBy": "text",
"orderHandlingActionUid": "text"
}
],
"allowedActions": [
"QUANTITY_SOLD"
],
"createdAt": "2026-01-01T00:00:00.000Z",
"discountReasonCode": "text",
"externalId": "text",
"itemCost": 1,
"itemDiscountAmount": 1,
"itemDiscountPercentage": 1,
"itemGrossProfitAmount": 1,
"itemGrossProfitPercentage": 1,
"itemPrice": 1,
"itemVatAmount": 1,
"lastModifiedAt": "2026-01-01T00:00:00.000Z",
"ledgerNumber": "text",
"name": "text",
"note": "text",
"orderItemUid": "text",
"orderLinks": [
{
"orderUid": "text",
"orderItemUid": "text",
"orderNumber": "text",
"storeUid": "text",
"type": "CREDIT"
}
],
"originalItemPrice": 1,
"productUid": "text",
"productType": "STOCK",
"properties": [
{
"uid": "text",
"key": "text",
"value": "text"
}
],
"quantityCredited": 1,
"quantityDelivered": 1,
"quantityOrdered": 1,
"quantityReserved": 1,
"returnReasonCode": "text",
"serialnumber": "text",
"sku": "text",
"sortOrder": 1,
"tenantUserDisplayName": "text",
"tenantUserUid": "text",
"totalCost": 1,
"totalDiscountAmount": 1,
"totalGrossProfitAmount": 1,
"totalPrice": 1,
"totalVatAmount": 1,
"vatCodeUid": "text",
"warehouseUid": "text",
"warehouseName": "text",
"internalInfo": "text",
"productProperties": [
{
"productPropertyUid": "text",
"propertyName": "text",
"propertyOptionName": "text",
"propertyType": "TEXT",
"propertyText": "text",
"propertyUid": "text",
"propertyOptionUid": "text",
"required": true
}
],
"coverImage": {
"productMediaUid": "text",
"mainUrl": "text",
"thumbnailUrl": "text"
},
"deliveryUid": "text",
"compensationReasonCode": "text",
"orderReceiptUid": "text",
"allowDelivery": "YES",
"allowDeliveryFromDate": "2026-01-01T00:00:00.000Z",
"reservationType": "NONE",
"reservationDetails": {
"warehouse": {
"warehouseName": "text"
},
"purchaseOrder": {
"purchaseOrderUid": "text",
"purchaseOrderItemUid": "text",
"expectedDeliveryDate": "2026-01-01T00:00:00.000Z",
"purchaseOrderNumber": "text",
"quantityOrdered": 1,
"externalId": "text"
},
"receivement": {
"receivementUid": "text",
"receivementItemUid": "text",
"expectedArrival": "2026-01-01T00:00:00.000Z",
"expectedDispatch": "2026-01-01T00:00:00.000Z",
"quantity": 1,
"supplierOrderReference": "text",
"receivedAt": "2026-01-01T00:00:00.000Z"
}
},
"gtins": [
{
"gtin": "text",
"primary": true,
"type": "text"
}
]
}
],
"lastModifiedAt": "2026-01-01T00:00:00.000Z",
"note": "text",
"internalNote": "text",
"orderUid": "text",
"orderNumber": "text",
"orderDate": "2026-01-01T00:00:00.000Z",
"orderState": "OPEN",
"orderTotals": {
"costTotal": 1,
"grandTotal": 1,
"grossProfitAmount": 1,
"grossProfitPercentage": 1,
"specifiedVat": [
{
"vatAmount": 1,
"vatDescription": "text",
"vatRate": 1
}
],
"subtotal": 1,
"totalDiscount": 1,
"totalVat": 1
},
"orderhandlingState": "NOT_STARTED",
"orderhandlings": [
{
"active": true,
"createdAt": "2026-01-01T00:00:00.000Z",
"createdBy": "text",
"description": "text",
"handlingUid": "text",
"lastModifiedAt": "2026-01-01T00:00:00.000Z",
"lastModifiedBy": "text",
"name": "text",
"orderHandlingUid": "text",
"state": "NOT_STARTED"
}
],
"settleState": "NOT_STARTED",
"settledAt": "2026-01-01T00:00:00.000Z",
"settlementTotals": {
"change": 1,
"remaining": 1,
"remainingRounded": 1,
"totals": 1,
"remainingPrePayment": 1,
"remainingAuthorizedAmount": 1
},
"settlements": [
{
"amount": 1,
"createdAt": "2026-01-01T00:00:00.000Z",
"displayMessages": [
{
"key": "text",
"message": "text",
"timestamp": "2026-01-01T00:00:00.000Z"
}
],
"externalId": "text",
"externalPaymentReference": "text",
"idMethod": "NO_CVM_RULE_PERFORMED",
"lastModifiedAt": "2026-01-01T00:00:00.000Z",
"ledgerNumber": "text",
"ledgerType": "LEDGER",
"parameters": [
{
"key": "text",
"value": "text",
"name": "text",
"type": "TEXT"
}
],
"settledAt": "2026-01-01T00:00:00.000Z",
"settlementCode": "text",
"settlementUid": "text",
"settlementName": "text",
"state": "NOT_STARTED",
"status": "NEW",
"storeSettlementIssuer": {
"storeSettlementIssuerUid": "text",
"name": "text",
"code": "text"
},
"tenantUserDisplayName": "text",
"tenantUserUid": "text",
"storePaymentMethodUid": "text",
"currency": {
"amount": 1,
"code": "text",
"exchangeRate": 1
},
"additionalDetails": [
{
"key": "text",
"value": "text"
}
],
"creditCount": 1,
"creditAmount": 1,
"paymentCount": 1,
"paymentAmount": 1,
"tillUid": "text",
"tillName": "text",
"tillNumber": 1,
"storeUid": "text",
"storeName": "text",
"orderReceiptUid": "text",
"authorizedAmount": 1,
"capturedAmount": 1,
"refundedAmount": 1,
"receiptText": "text",
"transactions": [
{
"transactionType": "text",
"pspTransactionId": "text",
"transactionAmount": 1,
"orderReceiptUid": "text"
}
]
}
],
"storeUid": "text",
"storeName": "text",
"systemOrigin": "text",
"tenantUserDisplayName": "text",
"tenantUserUid": "text",
"tillUid": "text",
"type": "OFFER",
"validUntil": "2026-01-01T00:00:00.000Z",
"vatFree": true,
"vatPrint": "SUM",
"voucherNumber": "text",
"deliveryDate": "2026-01-01",
"discounts": [
{
"orderDiscountUid": "text",
"discountCode": "text",
"type": "PERCENTAGE",
"amount": 1,
"name": "text",
"origin": "LOYALTY",
"validTo": "2026-01-01T00:00:00.000Z",
"maxUsage": 1,
"productSkus": [
"text"
],
"orderItemUids": [
"text"
],
"externalTransactionId": "text",
"scope": "WHOLE_ORDER",
"discountReasonCode": "text",
"discountReference": "text",
"createdAt": "2026-01-01T00:00:00.000Z",
"createdBy": "text",
"lastModifiedAt": "2026-01-01T00:00:00.000Z",
"lastModifiedBy": "text",
"campaignUid": "text"
}
],
"compensationReasonUid": "text",
"lastModifiedBy": "text",
"allowedActions": []
}
],
"services": [
{
"serviceOrderUid": "text",
"tenantUid": "text",
"storeUid": "text",
"orderProductLineUid": "text",
"orderUid": "text",
"customerUid": "text",
"createdFromStoreUid": "text",
"assignedUserUid": "text",
"assignedUserDisplayName": "text",
"serviceTypeUid": "text",
"serviceTypeName": "text",
"serviceStatusUid": "text",
"serviceStatusName": "text",
"serviceState": "NOT_STARTED",
"title": "text",
"serviceNumber": "text",
"externalServiceNumber": "text",
"description": "text",
"locationLabel": "text",
"priority": "NONE",
"requiresPriceEstimate": true,
"estimatedPrice": 1,
"maxPrice": 1,
"readyAtEstimate": "2026-01-01T00:00:00.000Z",
"readyAtNeeded": "2026-01-01T00:00:00.000Z",
"publicPageHash": "text",
"warranty": true,
"createdAt": "2026-01-01T00:00:00.000Z",
"createdBy": "text",
"lastModifiedAt": "2026-01-01T00:00:00.000Z",
"lastModifiedBy": "text",
"totals": {
"grandTotal": 1,
"partsTotal": 1,
"workTotal": 1
},
"items": [
{
"serviceOrderItemUid": "text",
"serviceOrderUid": "text",
"warehouseUid": "text",
"tenantUserUid": "text",
"productUid": "text",
"salesOrderUid": "text",
"quantity": 1,
"name": "text",
"sku": "text",
"price": 1,
"costPrice": 1,
"originalPrice": 1,
"totalPrice": 1,
"totalCostPrice": 1,
"serialNumber": "text",
"note": "text",
"tenantUserDisplayName": "text",
"createdAt": "2026-01-01T00:00:00.000Z",
"createdBy": "text",
"lastModifiedAt": "2026-01-01T00:00:00.000Z",
"lastModifiedBy": "text"
}
],
"assets": [
{
"assetUid": "text",
"name": "text",
"description": "text",
"isPublic": true,
"publicUrl": "text",
"mimeType": "text"
}
],
"rmaOrderItemUid": "text",
"rmaOrderUid": "text"
}
]
}Access token recevied after user login with a deviceToken
Reference to a tenant.
^[A-Za-z0-9-_]+Reference to a Customer.
^[A-Za-z0-9-_]+^[A-Za-z0-9-_]+No Content
No content
POST /v2/tenants/{tenantUid}/customers/{customerUid}/print HTTP/1.1
Host: api.flowretail.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 21
{
"printerUid": "text"
}No Content
No content
Access token recevied after user login with a deviceToken
Reference to a Customer.
^[A-Za-z0-9-_]+Reference to a tenant.
^[A-Za-z0-9-_]+Example response
CustomerResponseSchema
ISO 3166-1: 2 characters representation of country
^[A-Za-z0-9-_]+References another customer, establishing it as a department under the main customer. Only applicable when customerType is COMPANY.
^[A-Za-z0-9-_]*Deprecated. Use ledgerNumber in accountingConfigs instead
^[A-Za-z0-9-_]*VAT identification number for value added tax reporting purposes.
Deprecated: Use ehf -> enabled instead
GET /v2/tenants/{tenantUid}/customers/{customerUid} HTTP/1.1
Host: api.flowretail.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
Example response
{
"address": "text",
"city": "text",
"companyName": "text",
"countryCode": "text",
"createdAt": "2026-01-01T00:00:00.000Z",
"customerUid": "text",
"customerParentUid": "text",
"customerType": "COMPANY",
"email": "text",
"externalId": "text",
"firstname": "text",
"lastModifiedAt": "2026-01-01T00:00:00.000Z",
"lastname": "text",
"mobile": "text",
"postalCode": "text",
"pricelistUid": "text",
"vatNumber": "text",
"origin": "text",
"addresses": [
{
"address": "text",
"city": "text",
"companyName": "text",
"firstname": "text",
"lastname": "text",
"countryCode": "text",
"email": "text",
"phone": "text",
"postalCode": "text",
"type": "DELIVERY_ADDRESS",
"customerAddressUid": "text",
"displayName": "text"
}
],
"contacts": [
{
"firstname": "text",
"lastname": "text",
"email": "text",
"mobile": "text",
"createdAt": "2026-01-01T00:00:00.000Z",
"lastModifiedAt": "2026-01-01T00:00:00.000Z",
"customerContactUid": "text",
"extensions": [
{
"extensionCode": "TWO_INVOICE",
"organizationUid": "text"
}
],
"displayName": "text",
"role": "ADMIN"
}
],
"extensions": [
{
"extensionCode": "TWO_INVOICE",
"organizationUid": "text"
}
],
"consents": [
{
"consentUid": "text",
"name": "text",
"status": true,
"source": "text",
"createdAt": "2026-01-01T00:00:00.000Z"
}
],
"loyaltyId": "text",
"displayName": "text",
"credit": {
"limit": 1,
"balance": 1
},
"paymentTerms": 1,
"internalNote": "text",
"accountManager": {
"tenantUserUid": "text",
"displayName": "text",
"userCode": "text"
},
"ehfEnabled": true,
"ehf": {
"enabled": true,
"address": "text"
},
"customerGroupUids": [
"text"
],
"defaultStore": {
"name": "text",
"storeUid": "text"
},
"relevance": 1
}Access token recevied after user login with a deviceToken
Reference to a Customer.
^[A-Za-z0-9-_]+Reference to a tenant.
^[A-Za-z0-9-_]+ISO 3166-1: 2 characters representation of country
Ledger number must be a valid number with possible leading zeros
VAT identification number for value added tax reporting purposes.
^[A-Za-z0-9-_]*Number of days to calculate due date on invoice
This field is deprecated. Use ehf -> enabled instead
^[A-Za-z0-9-_]+References another customer, establishing it as a department under the main customer. Only applicable when customerType is COMPANY.
^[A-Za-z0-9-_]*Example response
CustomerResponseSchema
ISO 3166-1: 2 characters representation of country
^[A-Za-z0-9-_]+References another customer, establishing it as a department under the main customer. Only applicable when customerType is COMPANY.
^[A-Za-z0-9-_]*Deprecated. Use ledgerNumber in accountingConfigs instead
^[A-Za-z0-9-_]*VAT identification number for value added tax reporting purposes.
Deprecated: Use ehf -> enabled instead
PUT /v2/tenants/{tenantUid}/customers/{customerUid} HTTP/1.1
Host: api.flowretail.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 528
{
"address": "text",
"city": "text",
"companyName": "text",
"countryCode": "text",
"customerType": "COMPANY",
"email": "text",
"externalId": "text",
"firstname": "text",
"lastname": "text",
"ledgerNumber": "text",
"mobile": "text",
"postalCode": "text",
"vatNumber": "text",
"pricelistUid": "text",
"origin": "text",
"loyaltyId": "text",
"credit": {
"limit": 1
},
"paymentTerms": 1,
"internalNote": "text",
"accountManager": {
"tenantUserUid": "text"
},
"customerGroupUids": [
"text"
],
"ehf": {
"enabled": true,
"address": "text"
},
"defaultStoreUid": "text",
"customerParentUid": "text"
}Example response
{
"address": "text",
"city": "text",
"companyName": "text",
"countryCode": "text",
"createdAt": "2026-01-01T00:00:00.000Z",
"customerUid": "text",
"customerParentUid": "text",
"customerType": "COMPANY",
"email": "text",
"externalId": "text",
"firstname": "text",
"lastModifiedAt": "2026-01-01T00:00:00.000Z",
"lastname": "text",
"mobile": "text",
"postalCode": "text",
"pricelistUid": "text",
"vatNumber": "text",
"origin": "text",
"addresses": [
{
"address": "text",
"city": "text",
"companyName": "text",
"firstname": "text",
"lastname": "text",
"countryCode": "text",
"email": "text",
"phone": "text",
"postalCode": "text",
"type": "DELIVERY_ADDRESS",
"customerAddressUid": "text",
"displayName": "text"
}
],
"contacts": [
{
"firstname": "text",
"lastname": "text",
"email": "text",
"mobile": "text",
"createdAt": "2026-01-01T00:00:00.000Z",
"lastModifiedAt": "2026-01-01T00:00:00.000Z",
"customerContactUid": "text",
"extensions": [
{
"extensionCode": "TWO_INVOICE",
"organizationUid": "text"
}
],
"displayName": "text",
"role": "ADMIN"
}
],
"extensions": [
{
"extensionCode": "TWO_INVOICE",
"organizationUid": "text"
}
],
"consents": [
{
"consentUid": "text",
"name": "text",
"status": true,
"source": "text",
"createdAt": "2026-01-01T00:00:00.000Z"
}
],
"loyaltyId": "text",
"displayName": "text",
"credit": {
"limit": 1,
"balance": 1
},
"paymentTerms": 1,
"internalNote": "text",
"accountManager": {
"tenantUserUid": "text",
"displayName": "text",
"userCode": "text"
},
"ehfEnabled": true,
"ehf": {
"enabled": true,
"address": "text"
},
"customerGroupUids": [
"text"
],
"defaultStore": {
"name": "text",
"storeUid": "text"
},
"relevance": 1
}Access token recevied after user login with a deviceToken
Reference to a Customer.
^[A-Za-z0-9-_]+Reference to a tenant.
^[A-Za-z0-9-_]+No Content
No content
DELETE /v2/tenants/{tenantUid}/customers/{customerUid} HTTP/1.1
Host: api.flowretail.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
No Content
No content
Add an extension to a customer
Access token recevied after user login with a deviceToken
Reference to a Customer.
^[A-Za-z0-9-_]+Reference to a tenant.
^[A-Za-z0-9-_]+| ENUM | Description |
|---|---|
| TWO_INVOICE | The Two Invoice extension. |
| KLAVIYO_PROFILE_ID | Klaviyo profile ID |
^[A-Za-z0-9-_]+Example response
CustomerResponseSchema
ISO 3166-1: 2 characters representation of country
^[A-Za-z0-9-_]+References another customer, establishing it as a department under the main customer. Only applicable when customerType is COMPANY.
^[A-Za-z0-9-_]*Deprecated. Use ledgerNumber in accountingConfigs instead
^[A-Za-z0-9-_]*VAT identification number for value added tax reporting purposes.
Deprecated: Use ehf -> enabled instead
POST /v2/tenants/{tenantUid}/customers/{customerUid}/extensions/{customerExtensionCode} HTTP/1.1
Host: api.flowretail.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 19
{
"storeUid": "text"
}Example response
{
"address": "text",
"city": "text",
"companyName": "text",
"countryCode": "text",
"createdAt": "2026-01-01T00:00:00.000Z",
"customerUid": "text",
"customerParentUid": "text",
"customerType": "COMPANY",
"email": "text",
"externalId": "text",
"firstname": "text",
"lastModifiedAt": "2026-01-01T00:00:00.000Z",
"lastname": "text",
"mobile": "text",
"postalCode": "text",
"pricelistUid": "text",
"vatNumber": "text",
"origin": "text",
"addresses": [
{
"address": "text",
"city": "text",
"companyName": "text",
"firstname": "text",
"lastname": "text",
"countryCode": "text",
"email": "text",
"phone": "text",
"postalCode": "text",
"type": "DELIVERY_ADDRESS",
"customerAddressUid": "text",
"displayName": "text"
}
],
"contacts": [
{
"firstname": "text",
"lastname": "text",
"email": "text",
"mobile": "text",
"createdAt": "2026-01-01T00:00:00.000Z",
"lastModifiedAt": "2026-01-01T00:00:00.000Z",
"customerContactUid": "text",
"extensions": [
{
"extensionCode": "TWO_INVOICE",
"organizationUid": "text"
}
],
"displayName": "text",
"role": "ADMIN"
}
],
"extensions": [
{
"extensionCode": "TWO_INVOICE",
"organizationUid": "text"
}
],
"consents": [
{
"consentUid": "text",
"name": "text",
"status": true,
"source": "text",
"createdAt": "2026-01-01T00:00:00.000Z"
}
],
"loyaltyId": "text",
"displayName": "text",
"credit": {
"limit": 1,
"balance": 1
},
"paymentTerms": 1,
"internalNote": "text",
"accountManager": {
"tenantUserUid": "text",
"displayName": "text",
"userCode": "text"
},
"ehfEnabled": true,
"ehf": {
"enabled": true,
"address": "text"
},
"customerGroupUids": [
"text"
],
"defaultStore": {
"name": "text",
"storeUid": "text"
},
"relevance": 1
}Delete an extension to a customer
Access token recevied after user login with a deviceToken
Reference to a Customer.
^[A-Za-z0-9-_]+Reference to a tenant.
^[A-Za-z0-9-_]+| ENUM | Description |
|---|---|
| TWO_INVOICE | The Two Invoice extension. |
| KLAVIYO_PROFILE_ID | Klaviyo profile ID |
^[A-Za-z0-9-_]+No Content
No content
DELETE /v2/tenants/{tenantUid}/customers/{customerUid}/extensions/{customerExtensionCode} HTTP/1.1
Host: api.flowretail.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 19
{
"storeUid": "text"
}No Content
No content
Access token recevied after user login with a deviceToken
Reference to a tenant.
^[A-Za-z0-9-_]+Example response
Response for PriceBatchRequest. 200: All items in request was processed with no errors 207: One or more items in request returned an error
POST /v2/tenants/{tenantUid}/customers/batch HTTP/1.1
Host: api.flowretail.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 1913
{
"create": [
{
"address": "text",
"city": "text",
"companyName": "text",
"countryCode": "text",
"customerType": "COMPANY",
"email": "text",
"externalId": "text",
"firstname": "text",
"lastname": "text",
"ledgerNumber": "text",
"mobile": "text",
"postalCode": "text",
"vatNumber": "text",
"pricelistUid": "text",
"origin": "text",
"loyaltyId": "text",
"credit": {
"limit": 1
},
"paymentTerms": 1,
"internalNote": "text",
"accountManager": {
"tenantUserUid": "text"
},
"customerGroupUids": [
"text"
],
"ehf": {
"enabled": true,
"address": "text"
},
"defaultStoreUid": "text",
"customerParentUid": "text",
"customerUid": "text",
"consents": [
{
"source": "text",
"status": true,
"consentUid": "text"
}
]
}
],
"delete": [
{
"customerUid": "text"
}
],
"update": [
{
"address": "text",
"city": "text",
"companyName": "text",
"countryCode": "text",
"customerType": "COMPANY",
"email": "text",
"externalId": "text",
"firstname": "text",
"lastname": "text",
"ledgerNumber": "text",
"mobile": "text",
"postalCode": "text",
"vatNumber": "text",
"pricelistUid": "text",
"origin": "text",
"loyaltyId": "text",
"credit": {
"limit": 1
},
"paymentTerms": 1,
"internalNote": "text",
"accountManager": {
"tenantUserUid": "text"
},
"customerGroupUids": [
"text"
],
"ehf": {
"enabled": true,
"address": "text"
},
"defaultStoreUid": "text",
"customerParentUid": "text",
"customerUid": "text",
"consents": [
{
"source": "text",
"status": true,
"consentUid": "text"
}
]
}
],
"upsert": [
{
"address": "text",
"city": "text",
"companyName": "text",
"countryCode": "text",
"customerType": "COMPANY",
"email": "text",
"externalId": "text",
"firstname": "text",
"lastname": "text",
"ledgerNumber": "text",
"mobile": "text",
"postalCode": "text",
"vatNumber": "text",
"pricelistUid": "text",
"origin": "text",
"loyaltyId": "text",
"credit": {
"limit": 1
},
"paymentTerms": 1,
"internalNote": "text",
"accountManager": {
"tenantUserUid": "text"
},
"customerGroupUids": [
"text"
],
"ehf": {
"enabled": true,
"address": "text"
},
"defaultStoreUid": "text",
"customerParentUid": "text",
"customerUid": "text",
"consents": [
{
"source": "text",
"status": true,
"consentUid": "text"
}
]
}
]
}{
"create": {
"errors": [
{
"errorCode": "text",
"message": "text",
"customerUid": "text"
}
],
"success": 1
},
"delete": {
"errors": [
{
"errorCode": "text",
"message": "text",
"customerUid": "text"
}
],
"success": 1
},
"update": {
"errors": [
{
"errorCode": "text",
"message": "text",
"customerUid": "text"
}
],
"success": 1
},
"upsert": {
"errors": [
{
"errorCode": "text",
"message": "text",
"customerUid": "text"
}
],
"success": 1
}
}Access token recevied after user login with a deviceToken
Reference to a tenant.
^[A-Za-z0-9-_]+Reference to a Store.
^[A-Za-z0-9-_]+Reference to a Customer.
^[A-Za-z0-9-_]+Example response
StoreCustomerDetailsResponseSchema
GET /v2/tenants/{tenantUid}/stores/{storeUid}/customers/{customerUid} HTTP/1.1
Host: api.flowretail.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
Example response
{
"customer": {
"address": "text",
"city": "text",
"companyName": "text",
"countryCode": "text",
"createdAt": "2026-01-01T00:00:00.000Z",
"customerUid": "text",
"customerParentUid": "text",
"customerType": "COMPANY",
"email": "text",
"externalId": "text",
"firstname": "text",
"lastModifiedAt": "2026-01-01T00:00:00.000Z",
"lastname": "text",
"mobile": "text",
"postalCode": "text",
"pricelistUid": "text",
"vatNumber": "text",
"origin": "text",
"addresses": [
{
"address": "text",
"city": "text",
"companyName": "text",
"firstname": "text",
"lastname": "text",
"countryCode": "text",
"email": "text",
"phone": "text",
"postalCode": "text",
"type": "DELIVERY_ADDRESS",
"customerAddressUid": "text",
"displayName": "text"
}
],
"contacts": [
{
"firstname": "text",
"lastname": "text",
"email": "text",
"mobile": "text",
"createdAt": "2026-01-01T00:00:00.000Z",
"lastModifiedAt": "2026-01-01T00:00:00.000Z",
"customerContactUid": "text",
"extensions": [
{
"extensionCode": "TWO_INVOICE",
"organizationUid": "text"
}
],
"displayName": "text",
"role": "ADMIN"
}
],
"extensions": [
{
"extensionCode": "TWO_INVOICE",
"organizationUid": "text"
}
],
"consents": [
{
"consentUid": "text",
"name": "text",
"status": true,
"source": "text",
"createdAt": "2026-01-01T00:00:00.000Z"
}
],
"loyaltyId": "text",
"displayName": "text",
"credit": {
"limit": 1,
"balance": 1
},
"paymentTerms": 1,
"internalNote": "text",
"accountManager": {
"tenantUserUid": "text",
"displayName": "text",
"userCode": "text"
},
"ehfEnabled": true,
"ehf": {
"enabled": true,
"address": "text"
},
"customerGroupUids": [
"text"
],
"defaultStore": {
"name": "text",
"storeUid": "text"
},
"relevance": 1
},
"credit": {
"approved": true,
"limit": 1,
"balance": 1,
"remaining": 1,
"maxSingleOrderValue": 1,
"declineReason": "text"
}
}Access token recevied after user login with a deviceToken
Reference to a tenant.
^[A-Za-z0-9-_]+Reference to a Customer.
^[A-Za-z0-9-_]+^[A-Za-z0-9-_]+Example response
CustomerResponseSchema
ISO 3166-1: 2 characters representation of country
^[A-Za-z0-9-_]+References another customer, establishing it as a department under the main customer. Only applicable when customerType is COMPANY.
^[A-Za-z0-9-_]*Deprecated. Use ledgerNumber in accountingConfigs instead
^[A-Za-z0-9-_]*VAT identification number for value added tax reporting purposes.
Deprecated: Use ehf -> enabled instead
Linking failed. Ther error message will have information about what failed.
Linking failed. Ther error message will have information about what failed.
POST /v2/tenants/{tenantUid}/customers/{customerUid}/merge HTTP/1.1
Host: api.flowretail.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 31
{
"mergeFromCustomerUid": "text"
}{
"address": "text",
"city": "text",
"companyName": "text",
"countryCode": "text",
"createdAt": "2026-01-01T00:00:00.000Z",
"customerUid": "text",
"customerParentUid": "text",
"customerType": "COMPANY",
"email": "text",
"externalId": "text",
"firstname": "text",
"lastModifiedAt": "2026-01-01T00:00:00.000Z",
"lastname": "text",
"mobile": "text",
"postalCode": "text",
"pricelistUid": "text",
"vatNumber": "text",
"origin": "text",
"addresses": [
{
"address": "text",
"city": "text",
"companyName": "text",
"firstname": "text",
"lastname": "text",
"countryCode": "text",
"email": "text",
"phone": "text",
"postalCode": "text",
"type": "DELIVERY_ADDRESS",
"customerAddressUid": "text",
"displayName": "text"
}
],
"contacts": [
{
"firstname": "text",
"lastname": "text",
"email": "text",
"mobile": "text",
"createdAt": "2026-01-01T00:00:00.000Z",
"lastModifiedAt": "2026-01-01T00:00:00.000Z",
"customerContactUid": "text",
"extensions": [
{
"extensionCode": "TWO_INVOICE",
"organizationUid": "text"
}
],
"displayName": "text",
"role": "ADMIN"
}
],
"extensions": [
{
"extensionCode": "TWO_INVOICE",
"organizationUid": "text"
}
],
"consents": [
{
"consentUid": "text",
"name": "text",
"status": true,
"source": "text",
"createdAt": "2026-01-01T00:00:00.000Z"
}
],
"loyaltyId": "text",
"displayName": "text",
"credit": {
"limit": 1,
"balance": 1
},
"paymentTerms": 1,
"internalNote": "text",
"accountManager": {
"tenantUserUid": "text",
"displayName": "text",
"userCode": "text"
},
"ehfEnabled": true,
"ehf": {
"enabled": true,
"address": "text"
},
"customerGroupUids": [
"text"
],
"defaultStore": {
"name": "text",
"storeUid": "text"
},
"relevance": 1
}Last updated