SELECT
io.individual_id AS client_id,
io.contract_id AS contract_id,
c.number AS contract_number,
c.service_type AS contract_type,
ind.insurance_number AS snils,
MAX(io.date) AS last_payment_date
FROM back_office.incoming_order io
JOIN ourpension.contract c
ON c.id = io.contract_id
JOIN ourpension.individual ind
ON ind.id = io.individual_id
WHERE io.individual_id IS NOT NULL
AND io.contract_id IS NOT NULL
AND io.payment_return IS NOT TRUE
AND c.service_type IN ('NPO', 'PDS')
AND NULLIF(TRIM(ind.insurance_number), '') IS NOT NULL
GROUP BY
io.individual_id,
io.contract_id,
c.number,
c.service_type,
ind.insurance_number
ORDER BY MAX(io.date) DESC
LIMIT 10;