Overview of filtering and updating custom fields for applications and payments.
Custom Fields Overview
In Zylo, customizable fields can be created for applications and payments. These fields (referred to commonly as "Custom Fields") allow for users to create their own filterable fields that are attached to an application or a payment.
The Zylo Enterprise API exposes these values through the custom_fields field. Applications return their Applications-scoped custom field values, and Payments return their Payments-scoped custom field values. On Applications these values can be filtered and updated; on Payments custom_fields is read-only and can be filtered but not updated.
When Payments custom fields are enabled for your company, the custom_fields field is returned on Payments responses. When the feature is not enabled, the field is not returned on Payments, even if Payments-scoped custom fields exist.
Filtering Custom Fields
Below is a table describing how each custom field type can be filtered on:
| Type | Description | Example |
|---|---|---|
boolean | Use true for "Yes" values and false for "No" values. | ?custom_fields[bool]=true |
choice | Use standard string filtering syntax. | ?custom_fields[dropdown]=option1,option2 |
currency | Use standard number filtering syntax. | ?custom_fields[currency]=10,gt |
date | Use standard date filtering syntax. | ?custom_fields[date]=2024-01-01,gte |
email | Use standard string filtering syntax. | ?custom_fields[email][email protected] |
number | Use standard number filtering syntax. | ?custom_fields[number]=1,gte,5,lte |
text | Use standard string filtering syntax. | ?custom_fields[text]=engineering |
Updating Custom Fields
Updating custom field values is supported on Applications only. custom_fields on Payments is read-only.
Below is a table describing how each custom field type can be updated:
| Type | Description | Example |
|---|---|---|
boolean | Use true for "Yes" values and false for "No" values. | { "custom_fields": { "bool": true } } |
choice | Use string value. Must match a current option. | { "custom_fields": { "dropdown": "option1" } } |
currency | Use number value. | { "custom_fields": { "currency": 100 } } |
date | Use date format YYYY-MM-DD. Does not accept times. | { "custom_fields": { "date": "2024-12-20" } } |
email | Use valid email format. | { "custom_fields": { "email": "[email protected]" } } |
number | Use number value. | { "custom_fields": { "number": 100 } } |
text | Use string value. | { "custom_fields": { "text": "example" } } |
You can update multiple custom fields at once in a single request, like below:
{
"custom_fields": {
"bool": true,
"date": "2024-01-01"
}
}