Strangely I also came across the same behaviour.
Cannot relate it to osclasspay although there is the possibility to be related.
The query related to the search seems ok, don't know if it's the result of some configuration, but doesn't find existing item's that are presented on the main page.
Here's the result of searching the word Nikon in my osclass I have two items with the word Nikon in the description:
Database queries (Total queries: 81 - Total queries time: 0.017105102539062 sec)
.........
0.0015249252319336 SELECT oc_t_item.*, oc_t_item.s_contact_name as s_user_name
FROM (oc_t_item)
LEFT JOIN oc_t_item_description as d ON d.fk_i_item_id = oc_t_item.pk_i_id
LEFT OUTER JOIN oc_t_osp_item ON (oc_t_item.pk_i_id = oc_t_osp_item.i_item_id AND oc_t_osp_item.s_type = "101")
WHERE concat(d.s_title, d.s_description) like '%Nikon%'
AND ( d.fk_c_locale_code LIKE 'pt_PT' )
AND oc_t_item.b_enabled = 1 AND oc_t_item.b_active = 1 AND oc_t_item.b_spam = 0 AND (oc_t_item.b_premium = 1 || oc_t_item.dt_expiration >= '2023-10-29 19:48:15')
AND coalesce(oc_t_osp_item.i_paid, 0) = 1
ORDER BY dt_pub_date desc
LIMIT 0, 200
0.001338005065918 SELECT count(distinct oc_t_item.pk_i_id) as count
FROM (oc_t_item)
LEFT JOIN oc_t_item_description as d ON d.fk_i_item_id = oc_t_item.pk_i_id
LEFT OUTER JOIN oc_t_osp_item ON (oc_t_item.pk_i_id = oc_t_osp_item.i_item_id AND oc_t_osp_item.s_type = "101")
WHERE concat(d.s_title, d.s_description) like '%Nikon%'
AND ( d.fk_c_locale_code LIKE 'pt_PT' )
AND oc_t_item.b_enabled = 1 AND oc_t_item.b_active = 1 AND oc_t_item.b_spam = 0 AND (oc_t_item.b_premium = 1 || oc_t_item.dt_expiration >= '2023-10-29 19:48:15')
AND coalesce(oc_t_osp_item.i_paid, 0) = 1
0.00076508522033691 SELECT *
FROM (oc_t_alerts)
WHERE fk_i_user_id = 1
AND s_search = '{\"price_min\":0,\"price_max\":0,\"aCategories\":[],\"city_areas\":[],\"cities\":[],\"regions\":[],\"countries\":[],\"withPattern\":true,\"sPattern\":\"Nikon\",\"tables\":[],\"tables_join\":[[\"oc_t_osp_item\",\"(oc_t_item.pk_i_id = oc_t_osp_item.i_item_id AND oc_t_osp_item.s_type = \\\"101\\\")\",\"LEFT OUTER\"]],\"no_catched_tables\":[],\"no_catched_conditions\":[\"(oc_t_item.fk_i_user_id != 1 || oc_t_item.fk_i_user_id IS NULL)\",\"coalesce(oc_t_osp_item.i_paid, 0) = 1\",\"oc_t_item.s_contact_email != \\\"[email protected]\\\"\"],\"user_ids\":null,\"order_column\":\"dt_pub_date\",\"order_direction\":\"desc\",\"limit_init\":0,\"results_per_page\":200}'
AND dt_unsub_date IS NULL
0.00010204315185547 SELECT pk_c_code, s_name, s_short_name, s_description, s_version, s_author_name, s_author_url, s_currency_format, s_dec_point, s_thousands_sep, i_num_dec, s_date_format, s_stop_words, b_enabled, b_enabled_bo, b_locations_native, b_rtl
FROM (oc_t_locale)
WHERE pk_c_code = 'pt_PT'
0.0014338493347168 SHOW COLUMNS FROM oc_t_admin where Field = "b_moderator"
0.00012302398681641 SELECT pk_i_id, s_name, s_username, s_password, s_email, s_secret, i_login_fails, dt_login_fail_date, b_moderator, s_moderator_access
FROM (oc_t_admin)
WHERE pk_i_id = '5'
0.00010800361633301 SELECT count(*) as total
FROM (oc_t_item_comment c, oc_t_item i)
WHERE c.fk_i_item_id = i.pk_i_id
AND (c.b_active = 0 OR c.b_enabled = 0 OR c.b_spam = 1)
.....