Skip to main content

Suppliers

Suppliers represent the organisations to which you allocate spend within Procurement Scorecards. All interactions with the Supplier API use your own vendor codes as the primary identifier. You will use these codes when creating, updating, retrieving, and deleting suppliers, as well as when loading procurement data.


Endpoints

MethodPathPurpose
GET/api/v1/suppliers/heartbeatConfirm API availability and authentication
GET/api/v1/suppliers/{vendor_code}Retrieve a supplier by vendor code
POST/api/v1/suppliersCreate a new supplier
PUT/api/v1/suppliers/{vendor_code}Update an existing supplier
DELETE/api/v1/suppliers/{vendor_code}Delete a supplier

All requests must be authenticated using your API key and HMAC signature. See the Authentication section for details.


Supplier Attributes

Below is the full list of supported supplier fields. Unless stated otherwise, all fields are optional.

AttributeExampleDescription
trading_name"Test Supplier 1"Supplier’s trading name
vendor_code"TS001"Your internal supplier identifier (required)
vat_number"40091231233"VAT number
excludedfalseWhether the supplier is excluded from B‑BBEE procurement
excluded_reason""Reason for exclusion (if any)
intragroupfalseWhether the supplier is part of your group
intragroup_account_name""Internal intragroup account name
date_of_first_procurement"25/01/2025"First recorded procurement date
contract_start_date"25/01/2025"Contract start date
contract_end_date"25/01/2028"Contract end date
supplier_development_recipientfalseWhether the supplier receives Supplier Development support
registered_name""Registered legal name
registration_number""Company registration number
telephone""Supplier telephone number
email""Supplier email address
postal_address""Postal address
cost_centre""Cost centre reference
priority""Priority level (if applicable)
custom_1""Custom field 1
custom_2""Custom field 2
custom_3""Custom field 3
custom_4""Custom field 4
property_service_providerfalseWhether this is a property service provider
_disabled_participationfalseIndicates >5% disabled ownership participation
living_with_disabilityfalseWhether the supplier is living with a disability
stockbrokerfalseWhether the supplier is a stockbroker
fund_managerfalseWhether the supplier is a fund manager
intermediaryfalseWhether the supplier is an intermediary

Notes

  • Dates must be formatted as DD/MM/YYYY.
  • vendor_code must be unique and is required for creation, updates, and lookups.
  • Boolean fields must be sent as JSON booleans (true / false).

Example: Creating a Supplier

const url = "https://www.suppliermanagement.co.za/api/v1/suppliers";
const payload = {
supplier: {
trading_name: "New Supplier Ltd",
vendor_code: "NS002",
}
}

await axios.post(url, payload, {
headers: {
Accept: "application/json",
Authorization: "HMAC <your signature>",
'X-Api-Key': "<your account key>",
}
});