Skip to main content
The Customers API manages B2B account data — company info, contacts, addresses, pricing tiers, and sales rep assignments. Each customer belongs to an organization and is identified by a CustomerNumber that you assign (typically matching your ERP’s account number). All endpoints require a valid Bearer token. The OrganizationId is read automatically from your JWT claims.

List customers

Retrieve a paginated, sortable, and filterable list of customers in your organization.

Query parameters

integer
default:"1"
The page of results to return.
integer
default:"25"
Number of customers per page.
string
default:"Name"
Field to sort on. Common values: Name, CustomerNumber, CompanyEmail.
string
default:"asc"
Sort direction. Accepts asc or desc.
array
Optional array of filter objects. Each filter has a field, operator, and value. Supported operators: startswith, contains, notcontains, endswith, equals, notequals, gt, gte, lt, lte.

Response

Returns a paginated result containing an array of customer objects.

Example


Get a customer

Retrieve a single customer by their CustomerNumber.

Path parameters

string
required
The customer’s unique account number.

Response

Returns a single customer object.

Example


Create a customer

Create a new B2B customer account. Use PUT /api/customers to upsert — if a customer with the given CustomerNumber already exists, Nymble Commerce updates that record.

Body parameters

string
required
Your unique account number for this customer. Typically matches your ERP’s account number.
string
required
The customer’s company or business name.
string
required
Primary business email address for the account.
string
Main business phone number.
string
Business fax number.
string
required
The price tier to apply to this customer, e.g. Wholesale or Retail. Must match a price tier configured in your organization.
boolean
default:"true"
Whether the customer account is active.
string
The sales rep number assigned to this customer.
string
Payment terms for this customer, e.g. NET30, NET60.
string
Your system’s identifier for this customer. Used for idempotent imports — re-submitting a customer with the same externalId updates the existing record.
array
Array of address objects for this customer. Include at least one billing and one shipping address.
array
Array of contact objects for this customer.
object
A free-form dictionary of custom key-value attributes, e.g. { "region": "Southwest", "accountTier": "Gold" }.

Response

Returns the created or updated customer object.

Example


Update a customer

Update an existing customer account by their CustomerNumber. Any fields you include are overwritten; omitted fields retain their current values.

Path parameters

string
required
The CustomerNumber of the account to update.

Body parameters

Same as Create a customer. You can include a subset of fields to perform a partial update.

Example


Activate a customer

Re-activate a previously deactivated customer account, restoring their ability to place orders.

Path parameters

string
required
The CustomerNumber of the account to activate.

Example

Returns 204 No Content on success.

Delete a customer

Permanently remove a customer account and all associated data.

Path parameters

string
required
The CustomerNumber of the account to delete.
Deletion is permanent and cannot be undone. The customer’s order history and associated records remain on file for reporting purposes, but the account itself cannot be recovered. If you may need to re-activate the customer in the future, deactivate the account instead using active: false on an update request.

Example

Returns 204 No Content on success.

Address object

Each address in the addresses array contains the following fields:
string
Your system’s unique identifier for this address. Use this for idempotent upserts when syncing from an ERP.
string
Street address line 1.
string
Street address line 2 (suite, unit, floor, etc.).
string
City.
string
State or province code.
string
ZIP or postal code.
string
ISO 3166-1 alpha-2 country code, e.g. US, CA.
string
Either Billing or Shipping.
string
Phone number for this location.
boolean
Whether this is the customer’s primary address for its type.

Contact object

Each contact in the contacts array contains the following fields:
string
Your system’s unique identifier for this contact.
string
Salutation or title, e.g. Mr., Ms., Dr..
string
Contact’s first name.
string
Contact’s last name.
string
Contact’s email address.
string
Contact’s phone number.
string
Contact’s fax number.
boolean
Whether this is the primary contact for the customer account.
string
The role or category of this contact, e.g. Purchasing, Accounts Payable, Receiving.

The customer object

string
Your unique account number for this customer.
string
The organization this customer belongs to.
string
Company or business name.
string
Primary business email.
string
Main business phone.
string
Business fax number.
string
The price tier assigned to this customer.
boolean
Whether the account is currently active.
string
The assigned sales rep’s number.
string
Payment terms, e.g. NET30.
string
Your system’s identifier for this customer.
array
Array of address objects.
array
Array of contact objects.
object
Custom key-value attribute dictionary.