# Filter carrier payment methods Query carrier payment methods using flexible filter criteria with AND/OR logic. By default, only non-deleted payment methods are returned (deletedAt: { isNull: true }). Override this by explicitly setting deletedAt filter criteria. Carrier payment methods define how and where payments are sent for a specific carrier. Endpoint: POST /carrier-payment-methods/filter Version: 1.0.0 Security: BearerAuth ## Request fields (application/json): - `filter` (object) Filter criteria (optional - omit to return all carrier payment methods). Note: deletedAt automatically defaults to { isNull: true } unless explicitly overridden. Example: {"and":[{"carrierId":{"equalTo":"770e8400-e29b-41d4-a716-446655440000"}},{"paymentRecipientType":{"equalTo":"DIRECT"}},{"isPreferred":{"equalTo":true}}]} - `filter.and` (array) All conditions must match (recursive) Example: [{"carrierId":{"equalTo":"770e8400-e29b-41d4-a716-446655440000"}},{"paymentRecipientType":{"equalTo":"DIRECT"}},{"isPreferred":{"equalTo":true}}] - `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.carrierId` (object) Filter options for UUID fields (all operations) - `filter.carrierId.notEqualTo` (string) Not equal to - `filter.carrierId.notIn` (array) Does not match any UUID in the array - `filter.carrierId.isNull` (boolean) Field is null (true) or not null (false) - `filter.paymentRecipientType` (object) Filter for payment recipient type - `filter.paymentRecipientType.equalTo` (string) Who receives the payment. - DIRECT: Payment goes directly to the carrier - FACTOR: Payment goes to a factoring company (requires carrierFactorId) Enum: "DIRECT", "FACTOR" - `filter.paymentRecipientType.notEqualTo` (string) Who receives the payment. - DIRECT: Payment goes directly to the carrier - FACTOR: Payment goes to a factoring company (requires carrierFactorId) Enum: "DIRECT", "FACTOR" - `filter.paymentRecipientType.in` (array) Enum: "DIRECT", "FACTOR" - `filter.paymentRecipientType.notIn` (array) Enum: "DIRECT", "FACTOR" - `filter.paymentMethodType` (object) Filter for payment method type - `filter.paymentMethodType.equalTo` (string) Payment method type Enum: "ACH_WIRE", "ZELLE", "VENMO", "ACH", "CHECK", "WIRE", "CAD_EFT", "TRIUMPH_PAY", "COMCHECK", "EFS", "ECHECK" - `filter.paymentMethodType.notEqualTo` (string) Payment method type Enum: "ACH_WIRE", "ZELLE", "VENMO", "ACH", "CHECK", "WIRE", "CAD_EFT", "TRIUMPH_PAY", "COMCHECK", "EFS", "ECHECK" - `filter.status` (object) Filter options for string fields - `filter.status.in` (array) Matches any value in the array - `filter.status.notIn` (array) Does not match any value in the array - `filter.status.includes` (string) Contains substring (case-insensitive) - `filter.status.notIncludes` (string) Does not contain substring (case-insensitive) - `filter.status.startsWith` (string) Starts with prefix (case-insensitive) - `filter.status.notStartsWith` (string) Does not start with prefix (case-insensitive) - `filter.status.endsWith` (string) Ends with suffix (case-insensitive) - `filter.status.notEndsWith` (string) Does not end with suffix (case-insensitive) - `filter.isPreferred` (object) Filter options for boolean fields - `filter.email` (object) Filter options for string fields - `filter.companyName` (object) Filter options for string fields - `filter.bankName` (object) Filter options for string fields - `filter.currency` (object) Filter options for string fields - `filter.carrierFactorId` (object) Filter options for UUID fields (all operations) - `filter.paymentTermId` (object) Filter options for UUID fields (all operations) - `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 payment method identifier Example: "550e8400-e29b-41d4-a716-446655440000" - `data.carrierId` (string, required) Carrier profile ID (read-only after creation). This field cannot be changed after the payment method is created. Example: "770e8400-e29b-41d4-a716-446655440000" - `data.carrier` (object, required) Carrier profile reference with full details - `data.carrier.id` (string, required) Carrier UUID Example: "550e8400-e29b-41d4-a716-446655440000" - `data.carrier.key` (string,null) Client-defined reference ID if set Example: "ERP-CARRIER-SWIFT" - `data.carrier.name` (string, required) Carrier company name Example: "Swift Transportation" - `data.carrier.phoneNumber` (string,null) Primary phone number Example: "+1-555-987-6543" - `data.carrier.email` (string,null) Primary email address Example: "dispatch@swifttrans.com" - `data.carrier.createdAt` (string, required) When the carrier was created Example: "2025-01-15T10:00:00Z" - `data.carrier.updatedAt` (string, required) When the carrier was last updated Example: "2025-01-15T14:30:00Z" - `data.carrier.deletedAt` (string,null) When the carrier was soft deleted (null if active) - `data.paymentRecipientType` (string, required) Who receives the payment. - DIRECT: Payment goes directly to the carrier (carrierFactorId must be null) - FACTOR: Payment goes to a factoring company (carrierFactorId is required) Enum: "DIRECT", "FACTOR" - `data.paymentMethodType` (string, required) How payment is made Enum: "ACH_WIRE", "ZELLE", "VENMO", "ACH", "CHECK", "WIRE", "CAD_EFT", "TRIUMPH_PAY", "COMCHECK", "EFS", "ECHECK" - `data.status` (string,null) Payment method status Example: "ACTIVE" - `data.isPreferred` (boolean,null) Whether this is the preferred payment method for the carrier Example: true - `data.email` (string,null) Email address for payment notifications Example: "payments@carrier.com" - `data.phone` (string,null) Phone number for payment contact Example: "+1-555-123-4567" - `data.companyName` (string,null) Company name for this payment method (may differ from carrier name) Example: "Carrier Payments LLC" - `data.username` (string,null) Username for payment platforms (e.g., Zelle, Venmo) Example: "carrier_payments" - `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: "Carrier Transport Inc" - `data.accountNumber` (string,null) Bank account number (masked in responses) 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.carrierFactor` (any) Factoring company reference (required when paymentRecipientType is FACTOR). When paymentRecipientType is DIRECT, this must be null. - `data.paymentTerm` (any) Payment terms for this payment method - `data.createdAt` (string, required) When the payment method was created Example: "2025-01-15T10:00:00Z" - `data.updatedAt` (string, required) When the payment method was last updated Example: "2025-01-15T14:30:00Z" - `data.deletedAt` (string,null) When the payment method was soft deleted (null if active) - `data.deletedBy` (any) User who deleted this payment method - `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