Feature Request: Expose deposit invoice creation and claim amount via REST API
Currently, creating a deposit invoice in simPRO is only possible through the legacy PHP web interface (/common/ajax/invoicing.php), which is not suitable for automated integrations. The REST API endpoint POST /api/v1.0/companies/0/jobs/{jobId}/invoices/ creates an invoice but always claims 100% of the job value, with no way to set a partial claim amount.
What we need:
The ability to create a deposit invoice for a specific dollar amount or percentage via the REST API, similar to the deposit invoice functionality available in the UI.
Suggested implementation:
Either extend the existing invoice creation endpoint to accept a ClaimAmount or PercentComplete field, or add a new endpoint such as POST /api/v1.0/companies/0/jobs/{jobId}/depositInvoices/ that accepts an amount and due date.
Use case:
We are building an automated workflow where client proposals accepted in a CPQ tool (Portal.io) automatically create quotes and jobs in simPRO. The portal automatically generates a deposit invoice for the client, and we need to mirror that deposit invoice in simPRO to maintain accurate financial records. Without this, the deposit invoice must be created manually, breaking the automation.
This would be extremely valuable for any business using simPRO alongside a proposal or payment platform.
REST API endpoint for deposit invoice creation and claim amount on jobs
Forum rules
- Check the documentation first. Before posting questions, please check the documentation to ensure it doesn't already cover what you need.
- No spam. All automated messages, advertisements, and links to competitor websites will be deleted immediately.
- Post in relevant sub-forums only. Messages posted in the wrong topic area will be removed and placed in the correct sub-forum by moderators.
- Respect other users. No flaming or abusing fellow forum members. Users who continue to post inflammatory, abusive comments will be deleted from the forum after two warnings are issued by moderators.
- Harassment. No threats or harassment of other users will be tolerated. Any instance of threatening or harassing behavior is grounds for deletion from the forums.
- Adult content. No profanity or pornography is allowed. Posts containing adult material will be deleted.
- Bandwidth. All images and signatures must be 500 x 500 pixels or smaller. Posts containing over-sized images and signatures will be removed.
- Illegal content. No re-posting of copyrighted materials or other illegal content is allowed. Any posts containing illegal content or copyrighted materials will be deleted.
-
SimproAPITeam
- Posts: 831
- Joined: Wed May 01, 2024 2:31 am
Re: REST API endpoint for deposit invoice creation and claim amount on jobs
Hi,
Thank you for taking the time to submit this feature request with such a detailed explanation of your use case — it's genuinely helpful to understand the workflow you're trying to automate.
You've correctly identified the current limitation: the REST API's invoice creation endpoint does not support specifying a partial claim amount or creating deposit invoices directly, which makes it unsuitable for the kind of automated CPQ-to-simPRO workflow you've described.
This can be raised a formal feature request on product board with your use case attached. To summarise what your request:
- Gap: No REST API support for deposit invoice creation with a configurable claim amount or percentage
- Current workaround: Manual creation via the UI, which breaks automation
- Proposed solution: Extend POST /api/v1.0/companies/0/jobs/{jobId}/invoices/ to accept ClaimAmount or PercentComplete, or introduce a dedicated depositInvoices endpoint
- Business driver: Automated proposal-to-invoice flow via Portal.io integration
Kind regards,
Thank you for taking the time to submit this feature request with such a detailed explanation of your use case — it's genuinely helpful to understand the workflow you're trying to automate.
You've correctly identified the current limitation: the REST API's invoice creation endpoint does not support specifying a partial claim amount or creating deposit invoices directly, which makes it unsuitable for the kind of automated CPQ-to-simPRO workflow you've described.
This can be raised a formal feature request on product board with your use case attached. To summarise what your request:
- Gap: No REST API support for deposit invoice creation with a configurable claim amount or percentage
- Current workaround: Manual creation via the UI, which breaks automation
- Proposed solution: Extend POST /api/v1.0/companies/0/jobs/{jobId}/invoices/ to accept ClaimAmount or PercentComplete, or introduce a dedicated depositInvoices endpoint
- Business driver: Automated proposal-to-invoice flow via Portal.io integration
Kind regards,
Simpro API Team | Simpro Software Group
Re: REST API endpoint for deposit invoice creation and claim amount on jobs
I came across this looking for how to troubleshoot setting up a deposit invoice - has this feature been examined/implemented or likely to be implemented in the near future?
My use case is the same - and automation for creating a quote and then looking to issue a deposit invoice and payment link.
The API documentation is confusing in the way it currently is written as it indicates that you can create an invoice with type="Deposit" but it appears this relates to the previous way deposits were taken.
I do see some mention of updates to the deposits in the release notes.
I would appreciate some indication if this has any priority?
My use case is the same - and automation for creating a quote and then looking to issue a deposit invoice and payment link.
The API documentation is confusing in the way it currently is written as it indicates that you can create an invoice with type="Deposit" but it appears this relates to the previous way deposits were taken.
I do see some mention of updates to the deposits in the release notes.
I would appreciate some indication if this has any priority?
-
SimproAPITeam
- Posts: 831
- Joined: Wed May 01, 2024 2:31 am
Re: REST API endpoint for deposit invoice creation and claim amount on jobs
Thanks for the detailed report, and for including the specific headers you need.
You're right — the REST API doesn't currently send an Access-Control-Expose-Headers value for Result-Total, Result-Pages, or Result-Count, which is why browser-based fetch() calls can only see the CORS-safelisted headers (like Content-Type) and not those custom ones, even though they're present in the actual HTTP response.
This looks like a genuine gap rather than intended behavior, so I'd recommend logging it via the helpdesk so it can be tracked and picked up: https://helpdesk.simprogroup.com/
In the meantime, as a workaround, if you have any control over the request path (e.g. a lightweight backend proxy in front of the API, or a serverless function), you could have that layer read the headers server-side (where they're fully visible) and pass the totals back to your frontend in the JSON body or a header your own proxy explicitly exposes.
Let us know if you need anything else in the meantime.
You're right — the REST API doesn't currently send an Access-Control-Expose-Headers value for Result-Total, Result-Pages, or Result-Count, which is why browser-based fetch() calls can only see the CORS-safelisted headers (like Content-Type) and not those custom ones, even though they're present in the actual HTTP response.
This looks like a genuine gap rather than intended behavior, so I'd recommend logging it via the helpdesk so it can be tracked and picked up: https://helpdesk.simprogroup.com/
In the meantime, as a workaround, if you have any control over the request path (e.g. a lightweight backend proxy in front of the API, or a serverless function), you could have that layer read the headers server-side (where they're fully visible) and pass the totals back to your frontend in the JSON body or a header your own proxy explicitly exposes.
Let us know if you need anything else in the meantime.
Simpro API Team | Simpro Software Group
DEVELOPER CENTER