I know this is a bit old, but I’m having the same issue, so I’m hoping to reopen it. It seems using a different payment provider solved it for the original post, but hoping to avoid that process.
Processing cc payments via paypal when you enter the cc info for a single invoice works fine, but even with auto bill enabled, there is no option to save a payment method during paying an invoice and if you try to add one manually via the customer portal, I get the 500 error.
I tried recreating the API app via my paypal account and made sure to select every permission available including “vault” which is supposed to save payment info. But it’s still erroring and there is still no option to save the payment method for future invoices.
Also self-hosted. Healthcheck looks good:
System
Email: log
queue: sync
PDF: Invoice Ninja Hosted PDF Generator
Database Connection
passed
PHP
web: 8.2.29
cli: PHP 8.2.29 (cli) (built: Jul 11 2025 10:20:47) (NTS)
Memory: 2G
API: 5.12.28