Why this is useful
A common scenario: a client has different cost centers, invoicing series, or shipping methods per country in their ERP. Rather than replicating that entire conditional logic in your integration, it’s often simpler to let Base write the resulting value into an extra field and just read it — updating a rule later (e.g. a new carrier for a given country) then only requires a change in Base, not in the integration.Reading
- Get the field definitions and IDs with
getOrderExtraFields. - Add
include_custom_extra_fields = trueto yourgetOrdersrequest. - The response will include a
custom_extra_fieldsobject, keyed by extra field ID:
file-type fields, the value is a {"title": "...", "url": "..."} object with a download link.
Writing
Extra field values are written withsetOrderFields — the same method used for editing an order’s address or notes. Only send the fields that actually changed.