The ORA-28115 error is an error from Fine Grain Access Control (FGAC), not from the API itself. Can you confirm that you have FGAC enabled on your instance ?
Check all values which are passed once again because u provided duplicate or invalid values.
The below query will meet your requirement, but payment amount won't matches with some cases see below .
1) Check Payment/EFT Payment for more than one invoice we will pay that time invoice amount is
not equal to payment amount, Payment amount is greater than Invoice Amount. This will be controlled in Report level.
if you develop report using this query, there you can control this issue.
SELECT aia.vendor_id, aps.vendor_name, aia.invoice_id, aia.invoice_num,
aia.invoice_date, aia.invoice_currency_code, aia.payment_currency_code,
aia.invoice_amount, aia.amount_paid, aia.payment_method_lookup_code,
aia.payment_method_code, aia.SOURCE, aia.invoice_type_lookup_code,
aia.voucher_num, aca.amount payment, aca.bank_account_name,
aca.check_id, aca.check_number, aca.currency_code,
FROM ap_invoices_all aia,
WHERE aia.invoice_id = aipa.invoice_id
AND aca.check_id = aipa.check_id
AND aia.vendor_id = aps.vendor_id
if it's meet your requirement pls check the Correct/Helpful Answer for your question.
you can modify this query here and there as per your required fields.