# Filter carrier factors Query carrier factors (factoring companies) using flexible filter criteria with AND/OR logic. By default, only non-deleted carrier factors are returned (deletedAt: { isNull: true }). Override this by explicitly setting deletedAt filter criteria. Carrier factors represent factoring companies that provide payment services for carriers. Endpoint: POST /carrier-factors/filter Version: 1.0.0 Security: BearerAuth ## Request fields (application/json): - `filter` (object) Filter criteria (optional - omit to return all carrier factors). Note: deletedAt automatically defaults to { isNull: true } unless explicitly overridden. Example: {"and":[{"companyName":{"includes":"Capital"}},{"currency":{"equalTo":"USD"}}]} - `filter.and` (array) All conditions must match (recursive) Example: [{"companyName":{"includes":"Capital"}},{"currency":{"equalTo":"USD"}}] - `filter.or` (array) At least one condition must match (recursive) - `filter.not` (object) Negates the filter - `filter.id` (object) Filter options for ID fields (limited operations - exact match only) - `filter.id.equalTo` (string) Exact match - `filter.id.in` (array) Matches any UUID in the array - `filter.key` (object) Filter options for client key fields (limited operations - exact match only) - `filter.key.in` (array) Matches any value in the array - `filter.key.isNull` (boolean) Field is null (true) or not null (false) - `filter.companyName` (object) Filter options for string fields - `filter.companyName.notEqualTo` (string) Not equal to - `filter.companyName.notIn` (array) Does not match any value in the array - `filter.companyName.includes` (string) Contains substring (case-insensitive) - `filter.companyName.notIncludes` (string) Does not contain substring (case-insensitive) - `filter.companyName.startsWith` (string) Starts with prefix (case-insensitive) - `filter.companyName.notStartsWith` (string) Does not start with prefix (case-insensitive) - `filter.companyName.endsWith` (string) Ends with suffix (case-insensitive) - `filter.companyName.notEndsWith` (string) Does not end with suffix (case-insensitive) - `filter.email` (object) Filter options for string fields - `filter.phoneNumber` (object) Filter options for string fields - `filter.city` (object) Filter options for string fields - `filter.state` (object) Filter options for string fields - `filter.country` (object) Filter options for string fields - `filter.zipCode` (object) Filter options for string fields - `filter.bankName` (object) Filter options for string fields - `filter.currency` (object) Filter options for string fields - `filter.paymentTermId` (object) Filter options for UUID fields (all operations) - `filter.paymentTermId.notIn` (array) Does not match any UUID in the array - `filter.createdAt` (object) Filter options for datetime fields - `filter.createdAt.lessThan` (string) Before this datetime - `filter.createdAt.lessThanOrEqualTo` (string) On or before this datetime - `filter.createdAt.greaterThan` (string) After this datetime - `filter.createdAt.greaterThanOrEqualTo` (string) On or after this datetime - `filter.updatedAt` (object) Filter options for datetime fields - `filter.deletedAt` (object) Filter options for datetime fields - `pageSize` (integer) Number of results per page Example: 50 - `cursor` (string) Pagination cursor for next page ## Response 200 fields (application/json): - `data` (array, required) - `data.id` (string, required) Unique carrier factor identifier Example: "550e8400-e29b-41d4-a716-446655440000" - `data.companyName` (string, required) Factoring company legal name Example: "Capital Factoring Services Inc" - `data.key` (string,null) Client-defined reference identifier Example: "ERP-FACTOR-001" - `data.email` (string,null) Primary email address Example: "accounting@capitalfactoring.com" - `data.phoneNumber` (string,null) Primary phone number Example: "+1-555-234-5678" - `data.addressLine1` (string,null) Primary street address Example: "789 Finance Ave" - `data.addressLine2` (string,null) Secondary address line (suite, floor, etc.) Example: "Suite 500" - `data.city` (string,null) City name Example: "Dallas" - `data.state` (string,null) State or province Example: "TX" - `data.country` (string,null) Country code or name Example: "USA" - `data.zipCode` (string,null) Postal/ZIP code Example: "75201" - `data.bankName` (string,null) Bank name Example: "Chase Bank" - `data.bankAddress` (string,null) Bank address Example: "123 Bank Street, Dallas, TX 75201" - `data.accountName` (string,null) Bank account holder name Example: "Capital Factoring Services Inc" - `data.accountNumber` (string,null) Bank account number Example: "****1234" - `data.abaAch` (string,null) ABA/ACH routing number for electronic transfers Example: "021000021" - `data.wire` (string,null) Wire transfer routing number Example: "026009593" - `data.swiftCode` (string,null) SWIFT/BIC code for international transfers Example: "CHASUS33" - `data.eftInstitution` (string,null) EFT institution number (Canadian banking) Example: "001" - `data.eftTransit` (string,null) EFT transit number (Canadian banking) Example: "00010" - `data.clabe` (string,null) CLABE number (Mexican banking identifier) Example: "012180001234567897" - `data.currency` (string,null) Preferred currency code (ISO 4217) Example: "USD" - `data.paymentTerm` (any) Payment terms for this factoring company - `data.createdAt` (string, required) When the carrier factor was created Example: "2025-01-15T10:00:00Z" - `data.updatedAt` (string, required) When the carrier factor was last updated Example: "2025-01-15T14:30:00Z" - `data.deletedAt` (string,null) When the carrier factor was soft deleted (null if active) - `pageInfo` (object, required) - `pageInfo.pageSize` (integer, required) Number of items per page Example: 50 - `pageInfo.hasNextPage` (boolean, required) Whether there are more pages Example: true - `pageInfo.hasPreviousPage` (boolean) Whether there are previous pages - `pageInfo.endCursor` (string,null) Cursor for the next page (null if no next page) Example: "eyJpZCI6IjU1MGU4NDAwLWUyOWItNDFkNC1hNzE2LTQ0NjY1NTQ0MDAwMCJ9" ## Response 400 fields (application/json): - `error` (string, required) Error code - `message` (string, required) Human-readable error message ## Response 401 fields (application/json): - `error` (string, required) Error code - `message` (string, required) Human-readable error message ## Response 500 fields (application/json): - `error` (string, required) Error code - `message` (string, required) Human-readable error message