Automation via Zapier or gateway?

Hi!

I’d like to automate as much as possible but need some advice or suggestions on how to go about it.

The Goal: To have processing of quotes when advance is paid or when invoices are paid.

–Attempt 1: Stripe integration.

It works well, but i’d need to open up the ‘Client portal’. I have, almost exclusively, one-time customers and i provide installation services. So it does not make sense to have a client environment. I feel people would find it cumbersome to make an account and password. I could just disable logging in, but that invites problems of customers worried about security issues or even problems with regulation.

The solution to this problem could be to have no client environment at all but just a payment link via email or in the quote/invoice to go directly to the payment section (iDeal via stripe integration in my case). Afaik that’s not possible.

–Attempt 2: Zapier.

I have set it up like this in Zapier:
Trigger: 1. New Payment in Bunq (my bank account)
Action: 2. Find quote in Invoice Ninja
Action: 3. Create Payment in Invoice Ninja

The quote gives a dynamic link to Bunq where customers can pay via iDeal. The dynamic link also sets the description to ‘$number’. ‘Action: 2’ finds the quote and client via this description. Then the payment should be created with the given ID, Number and Amount. But alas, this step fails in Invoice Ninja and I am pretty sure it is because it expects the value $partial_due but Zapier does not have that option. I have not tried it yet with an invoice and $amount. I will try that for good measure when i have the time.

The solution might be to provide an option for partial payment via Zapier.

Any other ideas or suggestions are welcome. Thanks in advance for your time.

You can disable the client portal entirely, then when the user clicks on the payment link, the only thing they see is the invoice / payment pages.

Just toggle Client Portal off in Settings > Client Portal

The portal then just looks like this:

You should be able to keep this all in Invoice Ninja and not use Zapier for this particular workflow.

Really? That would be splendid! Though I tried and it gave 404. There might be something in the settings to be configured?

I see your url contains /client/invoice/xxx while $payment_url gives me /client/pay/xxx

Ok, so started to look for the cause of the 404. Mind you, the site has been working across the board for over a year. Including the client portal, gateway etc.

The logs don’t give any error.

–Appended “/public” to APP_URL in “.env”. php artisan optimize. It broke the site so reverted it back.

–Inspected “chromium” brave browser console. It gave the following errors:
Failed to load resource: net::ERR_BLOCKED_BY_CLIENT cookieconsent.min.js:1
Failed to load resource: the server responded with a status of 404 () ZIbJxxxxxxxxxxxxxxxxxxxxxx:1

Issues: 1. Audit usage of navigator.userAgent, navigator.appVersion, and navigator.platform

  1. A page or script is accessing at least one of navigator.userAgent, navigator.appVersion, and navigator.platform. Starting in Chrome 101, the amount of information available in the User Agent string will be reduced.

To fix this issue, replace the usage of navigator.userAgent, navigator.appVersion, and navigator.platform with feature detection, progressive enhancement, or migrate to navigator.userAgentData.

Note that for performance reasons, only the first access to one of the properties is shown.

  1. AFFECTED RESOURCES
1. 1 source

  1. livewire.js:1

–Inspected Mozilla Firefox console.
Cookie “cookieconsent_status” does not have a proper “SameSite” attribute value. Soon, cookies without the “SameSite” attribute or with an invalid value will be treated as “Lax”. This means that the cookie will no longer be sent in third-party contexts. If your application depends on this cookie being available in such contexts, please add the “SameSite=None“ attribute to it. To know more about the “SameSite“ attribute, read SameSite cookies - HTTP | MDN cookieconsent.min.js:1:850

GET https://{invoiceninja.url}/client/pay/ZIbJxxxxxxxxxxxxxxxxxx [HTTP/3 404 Not Found 1132ms]

–I also did

No difference

Totally my bad. Found the problem. I was trying to incorporate paying the advance via the quote, which leads to problems.

Customers have to approve of the quote. It’ll then be converted to an invoice, after which the gateway works.

I tried to eliminate a step, but that’s not possible. But that’s not really an issue. Thanks @david