Production implementation date: 30th June 2025
Customer Custom Fields
Overview
PayAdvantage now completely supports custom fields via the API for customer records. This update includes both API functionality and web application enhancements to provide a improved custom fields support.
API Changes
Customer Endpoints
All customer API endpoints now support custom fields:
GET /customers
- Returns custom fields in responseGET /customers/{code}
- Includes custom fields for individual customersPOST /customers
- Accepts custom fields when creating customersPUT /customers/{code}
- Updates custom field values
Custom Fields in API Responses
Customer responses now include a customFields
array:
GET /customers
{
"code": "CUST001",
"name": "John Smith",
"email": "[email protected]",
"customFields": [
{
"customFieldID": 1,
"valueString": "Department A"
},
{
"customFieldID": 2,
"valueString": "VIP Customer"
},
{
"customFieldID": 3,
"valueString": "20.00"
}
]
}
Creating Customers with Custom Fields
POST /customers
{
"name": "Jane Doe",
"email": "[email protected]",
"customFields": [
{
"customFieldID": 1,
"valueString": "Department B"
},
{
"customFieldID": 2,
"valueString": "Standard Customer"
},
{
"customFieldID": 3,
"valueString": "33.00"
}
]
}
Updating Custom Fields
PUT /customers/{Code}
{
"customFields": [
{
"customFieldID": 1,
"valueString": "Department C"
},
{
"customFieldID": 2,
"valueString": "High value Customer"
},
{
"customFieldID": 3,
"valueString": "22.00"
}
]
}
Web Application improvements
Set Custom Field
Navigate to Settings → Customer Settings to define the names of your custom fields. This allows you to tailor the fields to match your business needs.
Add some value in your custom field
Go to Customers → Customer Details → Edit, then enter values for each custom field. These values will be saved with the customer's profile and can be used for filtering or reference.
Custom Field Names in Search Filters
The customer search UI interface now displays your custom field names instead of generic labels:
- Previously: Search filters showed "Custom Field 1", "Custom Field 2", "Custom Field 3"
- Now: Search filters display the actual field names you've configured (e.g., "Department", "Type", "Total spent")
Custom Field Specifications
- Field IDs: Use 1, 2, or 3 only
- Value Length: Maximum 50 characters per field
- Optional: Custom fields are completely optional
- Unique: One value per field ID per customer
Configuration
Custom field names can be configured through the PayAdvantage web application. Once set, these names will appear throughout the interface and can be retrieved via the API.
Backward Compatibility
- All existing API calls continue to work unchanged
- New
customFields
array appears in responses (empty array if no custom fields set) - Custom fields are optional in create/update requests
- Web application gracefully falls back to default labels if custom names not configured