US English (US)
AU English (AUS)

Contact Us

If you still have questions or prefer to get help directly from an agent, please submit a request.
We’ll get back to you as soon as possible.

Please fill out the contact form below and we will reply as soon as possible.

  • Contact Us
English (AUS)
US English (US)
AU English (AUS)
  • Home
  • Open API
  • Beta

Platform (Beta)

Endpoints common across the platform used across multiple modules.

  • Open API

    • Webhooks

      • ERP Integration

        Content

        Company Entity Parameters IncludeInactive (boolean) - false Division Parameters includeInactive (boolean) - false Tax Code Parameters includeInactive (boolean) - false entityId (string) category (string) Supplier active (boolean) Project IncludeInactive (boolean) - false portfolioCode (string) - optional costCode (string) - optional minUpdatedDate (string) Beta Version Request Response Warning Beta Version Request Response Portfolio includeInactive (boolean) - false entityId (string) - optional portfolioCode (string) - optional minUpdatedDate (string) Beta Version Request Body Request Response Beta Version Request Response

        Company

        Retrieves information about list of companies.

        Endpoint

        GET /{version}/company

        Response

        {
            "companyId": "1",
            "name": "Test Company"
        }

         


         

        Entity

        Retrieves information about a list of entities.

        Endpoint

        GET /{version}/company/{companyId}/entity/{entityId}

        Response

        {
            "id": "1",
            "name": "Test Department",
            "code": "tenant",
            "status": "active"
        }

         

        GET /{version}/company/{companyId}/entity

        Parameters

        IncludeInactive (boolean) - false

        A filter for the entity active flag, defaults to false.

         
         

        Response

        {
        	"page": [
        		{
        	  		"id": "1",
            		"name": "Test Department",
            		"code": "T001",
            		"status": "active"
            	},
            	{
            		"id": "2",
            		"name": "Test Another Department",
            		"code": "T002",
            		"status": "disabled"
            	}
            ],
            "nextCursor": ez438tjgowjr0"
        }

         


         

        Division

        Retrieves information about a list of divisions (cost centres).

        Endpoint

        GET /{version}/company/{companyId}/division/{divisionId}

        Response

        {
            "id": "1",
            "companyId": "1",
            "entityId": "10",
            "name": "",
            "glCode": "ABC234",
            "status": "active,
        }

         

        GET /{version}/company/{companyId}/division

        Parameters

        includeInactive (boolean) - false

        A filter for the division active flag, defaults to false.

         
         

        Response

        {
        	"page": [
        	   {
        	   		"id": "1",
            		"companyId": "1",
            		"entityId": "10",
            		"name": "NAME1",
            		"glCode": "ABC234",
            		"status": "active,
        	   },
        	   {
        	   		"id": "2",
            		"companyId": "1",
            		"entityId": "20",
            		"name": "NAME2",
            		"glCode": "ABC567",
            		"status": "disabled,
        	   }
        	],
        	"nextCursor": ez438tjgowjr0"
        }

         


         

        Tax Code

        Retrieves information about a list of tax code.

        Endpoint

        GET /{version}/company/{companyId}/taxCode/{taxCodeId}

        Response

        {
            "id": "1",
            "companyId": "1",
            "entityIds": ["100", "200", "300"],
            "name": "",
            "code": "ABC234",
            "category": "ABC_CATEGORY",
            "taxRate": 15.0000,
            "isUserDefined": true,
            "status": "active"
        }

         

        GET /{version}/company/{companyId}/taxCode

        Parameters

        includeInactive (boolean) - false

        A filter for the tax code active flag, defaults to false.

         
         

        entityId (string)

        A filter for the entityId of tax code.

         
         

        category (string)

        A filter for the category of tax code.

         
         

        Response

        {
        	"page": [
        		{
            		"id": "1",
            		"companyId": "1",
            		"entityIds": ["100", "200", "300"],
            		"name": "TAXCODE1",
            		"code": "ABC234",
            		"category": "ABC_CATEGORY",
            		"taxRate": 15.0000,
            		"isUserDefined": true,
            		"status": "active"
        		},
        		{
            		"id": "2",
            		"companyId": "1",
            		"entityIds": ["300", "400"],
            		"name": "TAXCODE2",
            		"code": "ABC587",
            		"category": "DEF_CATEGORY",
            		"taxRate": 5.0000,
            		"isUserDefined": false,
            		"status": "disabled"
        		}
        	],
        	"nextCursor": ez438tjgowjr0"
        }

         


         

        Supplier

        A supplier, also referred to as a vendor or in AP as a creditor, refers to an external entity or business providing goods or services to the organisation, suppliers submit invoices for approval and processing, payments are made to suppliers based on their agreed payment terms.

        Endpoints

        GET /{version}/company/{companyId}/supplier

        GET /{version}/company/{companyId}/supplier/{supplierId}

        Parameters

        active (boolean)

        A filter for the supplier active flag, defaults to true.

         
         

        Response

        {
            "id": "1234567",
            "registrationNumber": "207 890 345 123",
            "supplierCode": "DJ1",
            "displayName": "John Doe",
            "tradingNames": [
            	"John Doe"
            ],
              "primaryAddress": {
            	"fullAddress": "",
                "address1": "",
                "address2": "",
                "address3": "",
                "suburb": "",
                "city": "",
                "state": "",
                "postCode": "",
                "country": ""
            },
            "emailAddresses": [
            	"test1@prospend.com",
             	"test2@prospend.com",
            	"test3@prospend.com"
            ],
            "legalName": "John Doe Pty Ltd",
            "country": "AUS",
            "currency": "AUD",
            "isActive": true,
            "isValidated": true,
        	"approvedOn": "1970-01-01T00:00:00Z",
            "createdOn": "1970-01-01T00:00:00Z",
            "updatedOn": "1970-01-01T00:00:00Z"
        }

         


         

        Project

        A project, similar to projects in a customer ERP, are entities used for budgeting, cost allocation and tracking, and approvals of both claims and invoices.

        Endpoints

        GET /{version}/company/{companyId}/project/{projectId}

        Response

        {
            "id" "123",
            "companyId": "1",
            "name": "Project X",
            "projectCode": "PRX",
            "externalReference": "PRX",
            "costCode": "CC12345",
            "defaultExpenseTypeId": "100",
            "entityIds": [
            	"100",
            	"101",
            	"102"
            ],
            "portfolios": [
            	{
            		"id": "456",
            		"portfolioCode": "CODE",
             		"_link": "/company/4/portfolio/456"
            	}
            ],
            "status": "active",
            "createdDate": "1970-01-01T00:00:00Z",
            "updatedDate": "1970-01-01T00:00:00Z"
        }

         

        GET /{version}/company/{companyId}/project

        Parameters

        IncludeInactive (boolean) - false

        A filter for the project active flag.

         
         

        portfolioCode (string) - optional

        A filter for the projectCode of project.

         
         

        costCode (string) - optional

        A filter for the costCode of project.

         
         

        minUpdatedDate (string)

        A filter for the last updated timestamp. Returns the data updated on or after the specified date-time in UTC.

        Example: 2024-08-27 or 2024-08-27T16:25:16Z

         
         

        Response

        {
        	"page": [
        		{
            		"id" "123",
            		"companyId": "1",
            		"name": "Project X",
            		"projectCode": "PRX",
            		"externalReference": "PRX",
            		"costCode": "CC12345",
            		"defaultExpenseTypeId": "100",
            		"entityIds": [
            			"100",
            			"101",
            			"102"
            		],
            		"portfolios": [
            			{
            				"id": "456",
            				"portfolioCode": "CODE",
             				"_link": "/company/4/portfolio/456"
            			}
            		],
            		"status": "active",
            		"createdOn": "1970-01-01T00:00:00Z",
            		"updatedOn": "1970-01-01T00:00:00Z"
        		}
        	],
        	"nextCursor": ez438tjgowjr0"
        }

         

        POST /{version}/company/{companyId}/project

        Beta Version

        Currently supports only a one-to-one relationship with the portfolio.

         

        Request

        {
            "name": "Project Name",
            "projectCode": "CODE-123",
            "externalReference": "PRX",
            "costCode": "CC12345",
            "defaultExpenseTypeId": "100",
            "entityIds": [
            	"100",
            	"101",
            	"102"
            ],
            "portfolios": [
            	{
            		// This portfolio should be created already
            		"id": "456",
            		"portfolioCode": "CODE"
            	}
            ]
            "status": "active"
        }

        Response

        {
        	"id": "123",
        	"companyId": "1",
            "name": "Project Name",
            "projectCode": "CODE-123",
            "externalReference": "PRX",
            "costCode": "CC12345",
            "defaultExpenseTypeId": "100",
           	"portfolios": [
            	{
            		"id": "456",
            		"portfolioCode": "CODE",
             		"_link": "/company/4/portfolio/456"
            	}
            ],
            "status": "active",
            "createdDate": "1970-01-01T00:00:00Z",
            "updatedDate": "1970-01-01T00:00:00Z"
        }

         

        PATCH /{version}/company/{companyId}/project/{projectId}

        Warning

        If the project is updated with an empty portfolio or a non-existent portfolio, the link between the project and the portfolio will be removed.

         

        Beta Version

        • Currently supports only a one-to-one relationship with the portfolio and entity.
        • In cases where multiple projects with the same code have been imported by different external systems, this endpoint will update and return all projects associated with that code within the system.
         

        Partial updates are supported by including only the fields to be modified in the request payload.

         

        Request

        {
            "name": "Updated Name",
            "projectCode": "CODE-QWE",
            "costCode": "CC38249",
            "entityIds": [
            	"100",
            	"101",
            	"102"
            ],
          	"portfolios": [
            	{
            		"id": "456",
            		"portfolioCode": "CODE"
            	}
            ]
            "status": "active"
        }

        Response

        {
            "id": "123",
            "companyId": "1",
            "name": "Updated Name",
            "projectCode": "CODE-QWE",
            "externalReference": "EXT",
            "costCode": "CC38249",
        	"defaultExpenseTypeId": 222,
        	"entityIds": [
            	"100",
            	"101",
            	"102"
            ],
           	"portfolios": [
            	{
            		"id": "456",
            		"portfolioCode": "CODE",
             		"_link": "/company/4/portfolio/456"
            	}
            ],
            "status": "active",
            "createdDate": "1970-01-01T00:00:00Z",
            "updatedDate": "1970-01-01T00:00:00Z"
        }

         


         

        Portfolio

        A project portfolio is a group of related projects used for reporting, tracking, and approvals of both claims and invoices. Projects can be related to multiple portfolios and portfolios can contain multiple projects.

        Endpoints

        GET /{version}/company/{companyId}/portfolio/{portfolioId}

        Response

        {
            "id": "789",
            "companyId": "1",
            "entityIds": [
            	"100",
            	"101",
            	"103"
            ],
            "name": "Portfolio A",
            "code": "CODE-123",
            "projects: [
            	{
            		"id": "123",
             		"projectCode": "CODE"
             		"_link": "/company/4/project/123"
                },
                {
             		"id": "456",
             		"projectCode": "RIJG"
             		"_link": "/company/4/project/456"
                }
            ]
            "status": "active",
            "createdDate": "1970-01-01T00:00:00Z",
            "updatedDate": "1970-01-01T00:00:00Z"
        }

         

        GET /{version}/company/{companyId}/portfolio

        Parameters

        includeInactive (boolean) - false

        A filter for the portfolio active flag.

         
         

        entityId (string) - optional

        A filter for the entityId of portfolio.

         
         

        portfolioCode (string) - optional

        A filter for the portfolioCode of portfolio.

         
         

        minUpdatedDate (string)

        A filter for the last updated timestamp. Returns the data updated on or after the specified date-time in UTC.

        Example: 2024-08-27 or 2024-08-27T16:25:16Z

         
         

        Response

        {
        	"page": [
        		{
            		"id": "789",
            		"companyId": "1",
            		"entityIds": [
            			"100",
            			"101",
            			"103"
            		],
            		"name": "Portfolio A",
            		"code": "CODE-123",
            		"projects: [
            			{
            				"id": "123",
            				"companyId": "1",
             				"projectCode": "CODE",
             				"_link": "/company/4/project/123"
                		},
                		{
             				"id": "456",
             				"companyId": "1",
             				"projectCode": "RIJG",
             				"_link": "/company/4/project/456"
                		}
            		],
            		"status": "active",
            		"createdDate": "1970-01-01T00:00:00Z",
            		"updatedDate": "1970-01-01T00:00:00Z"
        		}
        	],
        	"nextCursor": "xkdfj23882394fj"
        }

         

        POST /{version}/company/{companyId}/portfolio

        Beta Version

        Creation of a linked project is not permitted through this endpoint.

         

        Request Body 

        entityId (array) : Optional, should be an array, if not provided, add to all integrations, empty is invalid, null -> all entities.

         
         

        Request

        {
            "code": "NEW-CODE-123",
            "name": "New Portfolio Name",
            "status": "active",
            "entityIds": [
            	"100",
            	"200",
            	"300"
            ],
        }

        Response

        {
        	"id": "123",
        	"companyId": "1",
        	"name": "New Portfolio Name",
            "code": "NEW-CODE-123",
            "entityIds": [
            	"100",
            	"200",
            	"300"
            ],
        	"projects": [],
            "status": "active",
            "createdOn": "1970-01-01T00:00:00Z",
            "updatedOn": "1970-01-01T00:00:00Z"
        }

         

        PATCH /{version}/company/{companyId}/portfolio/{portfolioId}

        Beta Version

        • Creation of a linked project is not permitted through this endpoint.
        • In cases where multiple portfolios with the same code have been imported by different external systems, this endpoint will update and return all portfolios associated with that code within the system.
         

        Partial updates are supported by including only the fields to be modified in the request payload.

         

        Request

        {
            "code": "CODE-UPDATE-123",
            "name": "NAME-UPDATE",
            "status": "diabled"
        }

        Response

        {
            "id": "789",
            "companyId": "1",
            "entityIds": [
            	"100",
            	"101",
            	"103"
            ],
            "code": "CODE-123",
            "name": "Portfolio A",
            "projects: [
            	{
            		"id": "123",
             		"projectCode": "CODE"
             		"_link": "/company/4/project/123"
                },
                {
             		"id": "456",
             		"projectCode": "RIJG"
             		"_link": "/company/4/project/456"
                }
            ]
            "status": "active",
            "createdOn": "1970-01-01T00:00:00Z",
            "updatedOn": "1970-01-01T00:00:00Z"
        }

         

        supplier beta platform

        Related Articles

        • Accounts Payable (Beta)
        • Expense Management (Beta)
        logo for footer2-1

            (formerly expensemanager)

        U 110 , 4 Columbia Court,
        Norwest, NSW, 2153
        Australia
        Ph: +61 2 9672 6880 


        Products

        • Expenses
        • Budgets
        • Virtual Cards
        • Accounts Payable
        • Purchase Orders
        • Fringe Benefit Tax
        • eInvoicing
        • Travel Manager

        Quick Links

        • Book A Demo
        • Implementation
        • Integrations
        • Coming Soon
        • Our Partners
        • Privacy Policy
        • Contact Us

        Why ProSpend?

        • About Us
        • Meet the Team
        • Customer Stories
        • Careers

        Learn

        • Blog
        © 2023 ProSpend
        Expand