Creates a new customer record.
Final POS API (1.2.4)
Welcome to the Final POS Public API—your playground for crafting the checkout and kiosk flows you want. Create your API keys in Manage (Settings > API Keys) and send them as x-api-key on every request. Customer endpoints use dynamic DTO generation so they adapt to your custom tables in real time, while the rest of the controllers follow a stable, static contract for predictable integrations.
External ID associated with the Customer when synced from external source. If present, it will set fromFinal to true.
Timestamp when the Customer was last actioned.
Billing address associated with the Customer.
Shipping address associated with the Customer.
Metadata associated with the Customer.
- Mock serverhttps://docs.finalpos.com/_mock/openapi/v1/api/customer
- Official APIhttps://api.finalpos.com/v1/api/customer
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X POST \
https://docs.finalpos.com/_mock/openapi/v1/api/customer \
-H 'Content-Type: application/json' \
-H 'x-api-key: YOUR_API_KEY_HERE' \
-d '{
"email": "customer@example.com",
"firstName": "John",
"lastName": "Doe",
"outletId": "o1p2q3r4s5t6u7v8w9x0y1z2",
"externalId": "o1p2q3r4s5t6u7v8w9x0y1z2",
"phone": "+1234567890",
"totalSpent": "1000.50",
"lastAction": "2025-12-07T19:31:48.436+00:00",
"tags": [
"vip",
"loyal",
"premium"
],
"billing": {
"firstName": "John",
"lastName": "Doe",
"address1": "123 Main St",
"address2": "Suite 100",
"city": "New York",
"state": "NY",
"country": "USA",
"postCode": "10001"
},
"shipping": {
"firstName": "John",
"lastName": "Doe",
"address1": "123 Main St",
"address2": "Suite 100",
"city": "New York",
"state": "NY",
"country": "USA",
"postCode": "10001"
},
"metadata": [
{
"key": "key1",
"value": "value1"
},
{
"key": "key2",
"value": "value2"
}
],
"notes": [
{
"createdAt": "2025-12-07T19:31:48.436+00:00",
"message": "Note 1"
}
]
}'The customer has been successfully created.
Timestamp when the Customer was created.
Timestamp when the Customer was last updated.
External ID associated with the Customer when synced from external source. If present, it will set fromFinal to true.
Timestamp when the Customer was last actioned.
Billing address associated with the Customer.
Shipping address associated with the Customer.
Metadata associated with the Customer.
{ "id": "o1p2q3r4s5t6u7v8w9x0y1z2", "createdAt": "2025-12-07T19:31:48.436+00:00", "updatedAt": "2025-12-07T19:35:48.436+00:00", "companyId": "o1p2q3r4s5t6u7v8w9x0y1z2", "email": "customer@example.com", "firstName": "John", "lastName": "Doe", "fromFinal": false, "outletId": "o1p2q3r4s5t6u7v8w9x0y1z2", "externalId": "o1p2q3r4s5t6u7v8w9x0y1z2", "phone": "+1234567890", "totalSpent": "1000.50", "lastAction": "2025-12-07T19:31:48.436+00:00", "tags": [ "vip", "loyal", "premium" ], "billing": { "firstName": "John", "lastName": "Doe", "address1": "123 Main St", "address2": "Suite 100", "city": "New York", "state": "NY", "country": "USA", "postCode": "10001" }, "shipping": { "firstName": "John", "lastName": "Doe", "address1": "123 Main St", "address2": "Suite 100", "city": "New York", "state": "NY", "country": "USA", "postCode": "10001" }, "metadata": [ { … }, { … } ], "notes": [ { … } ] }
- Mock serverhttps://docs.finalpos.com/_mock/openapi/v1/api/customer/{id}
- Official APIhttps://api.finalpos.com/v1/api/customer/{id}
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X GET \
'https://docs.finalpos.com/_mock/openapi/v1/api/customer/{id}' \
-H 'x-api-key: YOUR_API_KEY_HERE'The customer has been successfully retrieved.
Timestamp when the Customer was created.
Timestamp when the Customer was last updated.
External ID associated with the Customer when synced from external source. If present, it will set fromFinal to true.
Timestamp when the Customer was last actioned.
Billing address associated with the Customer.
Shipping address associated with the Customer.
Metadata associated with the Customer.
{ "id": "o1p2q3r4s5t6u7v8w9x0y1z2", "createdAt": "2025-12-07T19:31:48.436+00:00", "updatedAt": "2025-12-07T19:35:48.436+00:00", "companyId": "o1p2q3r4s5t6u7v8w9x0y1z2", "email": "customer@example.com", "firstName": "John", "lastName": "Doe", "fromFinal": false, "outletId": "o1p2q3r4s5t6u7v8w9x0y1z2", "externalId": "o1p2q3r4s5t6u7v8w9x0y1z2", "phone": "+1234567890", "totalSpent": "1000.50", "lastAction": "2025-12-07T19:31:48.436+00:00", "tags": [ "vip", "loyal", "premium" ], "billing": { "firstName": "John", "lastName": "Doe", "address1": "123 Main St", "address2": "Suite 100", "city": "New York", "state": "NY", "country": "USA", "postCode": "10001" }, "shipping": { "firstName": "John", "lastName": "Doe", "address1": "123 Main St", "address2": "Suite 100", "city": "New York", "state": "NY", "country": "USA", "postCode": "10001" }, "metadata": [ { … }, { … } ], "notes": [ { … } ] }
External ID associated with the Customer when synced from external source. If present, it will set fromFinal to true.
Timestamp when the Customer was last actioned.
Billing address associated with the Customer.
Shipping address associated with the Customer.
Metadata associated with the Customer.
- Mock serverhttps://docs.finalpos.com/_mock/openapi/v1/api/customer/{id}
- Official APIhttps://api.finalpos.com/v1/api/customer/{id}
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X PUT \
'https://docs.finalpos.com/_mock/openapi/v1/api/customer/{id}' \
-H 'Content-Type: application/json' \
-H 'x-api-key: YOUR_API_KEY_HERE' \
-d '{
"email": "customer@example.com",
"firstName": "John",
"lastName": "Doe",
"outletId": "o1p2q3r4s5t6u7v8w9x0y1z2",
"externalId": "o1p2q3r4s5t6u7v8w9x0y1z2",
"phone": "+1234567890",
"totalSpent": "1000.50",
"lastAction": "2025-12-07T19:31:48.436+00:00",
"tags": [
"vip",
"loyal",
"premium"
],
"billing": {
"firstName": "John",
"lastName": "Doe",
"address1": "123 Main St",
"address2": "Suite 100",
"city": "New York",
"state": "NY",
"country": "USA",
"postCode": "10001"
},
"shipping": {
"firstName": "John",
"lastName": "Doe",
"address1": "123 Main St",
"address2": "Suite 100",
"city": "New York",
"state": "NY",
"country": "USA",
"postCode": "10001"
},
"metadata": [
{
"key": "key1",
"value": "value1"
},
{
"key": "key2",
"value": "value2"
}
],
"notes": [
{
"createdAt": "2025-12-07T19:31:48.436+00:00",
"message": "Note 1"
}
]
}'The customer has been successfully updated.
Timestamp when the Customer was created.
Timestamp when the Customer was last updated.
External ID associated with the Customer when synced from external source. If present, it will set fromFinal to true.
Timestamp when the Customer was last actioned.
Billing address associated with the Customer.
Shipping address associated with the Customer.
Metadata associated with the Customer.
{ "id": "o1p2q3r4s5t6u7v8w9x0y1z2", "createdAt": "2025-12-07T19:31:48.436+00:00", "updatedAt": "2025-12-07T19:35:48.436+00:00", "companyId": "o1p2q3r4s5t6u7v8w9x0y1z2", "email": "customer@example.com", "firstName": "John", "lastName": "Doe", "fromFinal": false, "outletId": "o1p2q3r4s5t6u7v8w9x0y1z2", "externalId": "o1p2q3r4s5t6u7v8w9x0y1z2", "phone": "+1234567890", "totalSpent": "1000.50", "lastAction": "2025-12-07T19:31:48.436+00:00", "tags": [ "vip", "loyal", "premium" ], "billing": { "firstName": "John", "lastName": "Doe", "address1": "123 Main St", "address2": "Suite 100", "city": "New York", "state": "NY", "country": "USA", "postCode": "10001" }, "shipping": { "firstName": "John", "lastName": "Doe", "address1": "123 Main St", "address2": "Suite 100", "city": "New York", "state": "NY", "country": "USA", "postCode": "10001" }, "metadata": [ { … }, { … } ], "notes": [ { … } ] }
- Mock serverhttps://docs.finalpos.com/_mock/openapi/v1/api/customer/{id}
- Official APIhttps://api.finalpos.com/v1/api/customer/{id}
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X DELETE \
'https://docs.finalpos.com/_mock/openapi/v1/api/customer/{id}' \
-H 'x-api-key: YOUR_API_KEY_HERE'{ "statusCode": 200, "message": "Resource with Id 123 deleted successfully" }