Vendor Management¶
Unmark A Vendor As Favourite¶
HTTP Request
POST /api/v1/vendor-management/{vendorId}/remove-from-favorite
📋 Description: Unmark a vendor as favourite
Parameters
Name |
In |
Type |
Required |
Description |
|---|---|---|---|---|
vendorId |
path |
integer(int64) |
true |
Unique identifier for the vendor |
Responses
Status |
Meaning |
Description |
Schema |
|---|---|---|---|
200 |
OK |
||
409 |
Payment amount exceeds remaining invoice balance |
||
502 |
Downstream service call failed |
Example Responses
1{
2 "internalId": "string",
3 "foreignId": "string",
4 "objectType": "string",
5 "username": "string",
6 "sequenceNumber": 0,
7 "createdAt": "2019-08-24T14:15:22Z"
8}
Mark A Vendor As Favourite¶
HTTP Request
POST /api/v1/vendor-management/{vendorId}/add-to-favorite
📋 Description: Mark a vendor as favourite
Parameters
Name |
In |
Type |
Required |
Description |
|---|---|---|---|---|
vendorId |
path |
integer(int64) |
true |
Unique identifier for the vendor |
Responses
Status |
Meaning |
Description |
Schema |
|---|---|---|---|
200 |
OK |
||
409 |
Payment amount exceeds remaining invoice balance |
||
502 |
Downstream service call failed |
Example Responses
1{
2 "internalId": "string",
3 "foreignId": "string",
4 "objectType": "string",
5 "username": "string",
6 "sequenceNumber": 0,
7 "createdAt": "2019-08-24T14:15:22Z"
8}
Search All Vendors¶
HTTP Request
POST /api/v1/vendor-management/partners/search
📋 Description: Returns a paginated list of all Payable vendors matching the optional filter. Applies company-access filtering automatically based on the authenticated user’s context.
Parameters
Name |
In |
Type |
Required |
Description |
|---|---|---|---|---|
body |
body |
object |
false |
Request body containing search criteria and filters for identifying vendor partners within the vendor management system. |
» request |
body |
false |
Data transfer object representing a request to search for partners within the enterprise ecosystem, facilitating the identification and evaluation of potential collaborations to enhance business opportunities. |
|
»» searchTerm |
body |
string |
false |
Search term used to filter and refine partner search results based on user-defined criteria. |
»» createdAtGreaterThanOrEqual |
body |
string(date-time) |
false |
Filter where created at is greater than or equal to specified value |
»» createdAtLessThanOrEqual |
body |
string(date-time) |
false |
Filter where created at is less than or equal to specified value |
»» modifiedAtGreaterThanOrEqual |
body |
string(date-time) |
false |
Filter where modified at is greater than or equal to specified value |
»» modifiedAtLessThanOrEqual |
body |
string(date-time) |
false |
Filter where modified at is less than or equal to specified value |
»» createdByLike |
body |
string |
false |
Filter by partial match of created by |
»» createdByEqual |
body |
string |
false |
Filter by exact match of created by |
»» statusEqual |
body |
string |
false |
Filter by exact match of status |
»» statusIn |
body |
[string] |
false |
Filter by multiple values of status |
»» erpSystemIdIn |
body |
[integer] |
false |
Filter by multiple values of erp system id |
»» erpSystemIdEqual |
body |
integer(int64) |
false |
Filter by exact match of erp system id |
»» erpSystemDisplayIdIn |
body |
[string] |
false |
Filter by multiple values of erp system display id |
»» idIn |
body |
[integer] |
false |
Filter by multiple values of id |
»» idNotIn |
body |
[integer] |
false |
Filter by excluding multiple values of id |
»» leaseAreaIdIn |
body |
[integer] |
false |
Filter by multiple values of lease area id |
»» businessUnitIdIn |
body |
[integer] |
false |
Filter by multiple values of business unit id |
»» companyIdIn |
body |
[integer] |
false |
Filter by multiple values of company id |
»» companyIdEqual |
body |
integer(int64) |
false |
Filter by exact match of company id |
»» partnerRoleIdIn |
body |
[integer] |
false |
Filter by multiple values of partner role id |
»» partnerRoleIdEqual |
body |
integer(int64) |
false |
Filter by exact match of partner role id |
»» displayIdEqual |
body |
string |
false |
Filter by exact match of display id |
» pageable |
body |
false |
Data transfer object representing a paginated collection of results, enabling efficient navigation and retrieval of large datasets within the API. This schema supports enhanced user experience by facilitating organized data presentation and management. |
|
»» page |
body |
integer(int32) |
false |
Page number for pagination |
»» size |
body |
integer(int32) |
false |
Number of items per page |
»» sort |
body |
[string] |
false |
Sort order specification |
Enumerated Values
Attribute |
Value |
|---|---|
»» statusEqual |
ACTIVE, CREATED, DECOMMISSIONED, DISABLED |
»» statusIn |
ACTIVE, CREATED, DECOMMISSIONED, DISABLED |
Parameter Constraints¶
Parameter |
Constraints |
|---|---|
»» page |
Min: 0 |
»» size |
Min: 1 |
Body Parameters
1{
2 "request": {
3 "searchTerm": "string",
4 "createdAtGreaterThanOrEqual": "2019-08-24T14:15:22Z",
5 "createdAtLessThanOrEqual": "2019-08-24T14:15:22Z",
6 "modifiedAtGreaterThanOrEqual": "2019-08-24T14:15:22Z",
7 "modifiedAtLessThanOrEqual": "2019-08-24T14:15:22Z",
8 "createdByLike": "string",
9 "createdByEqual": "string",
10 "statusEqual": "CREATED",
11 "statusIn": [
12 "CREATED"
13 ],
14 "erpSystemIdIn": [
15 0
16 ],
17 "erpSystemIdEqual": 0,
18 "erpSystemDisplayIdIn": [
19 "string"
20 ],
21 "idIn": [
22 0
23 ],
24 "idNotIn": [
25 0
26 ],
27 "leaseAreaIdIn": [
28 0
29 ],
30 "businessUnitIdIn": [
31 0
32 ],
33 "companyIdIn": [
34 0
35 ],
36 "companyIdEqual": 0,
37 "partnerRoleIdIn": [
38 0
39 ],
40 "partnerRoleIdEqual": 0,
41 "displayIdEqual": "string"
42 },
43 "pageable": {
44 "page": 0,
45 "size": 1,
46 "sort": [
47 "string"
48 ]
49 }
50}
Responses
Status |
Meaning |
Description |
Schema |
|---|---|---|---|
200 |
Paginated vendor list returned |
||
409 |
Payment amount exceeds remaining invoice balance |
||
502 |
Downstream service call failed |
Example Responses
1{
2 "totalPages": 0,
3 "totalElements": 0,
4 "pageable": {
5 "pageNumber": 0,
6 "unpaged": true,
7 "paged": true,
8 "pageSize": 0,
9 "offset": 0,
10 "sort": {
11 "unsorted": true,
12 "sorted": true,
13 "empty": true
14 }
15 },
16 "numberOfElements": 0,
17 "size": 0,
18 "content": [
19 {
20 "id": 0,
21 "displayId": "string",
22 "state": "INV_DRAFT",
23 "vendorId": 0,
24 "vendorDisplayId": "string",
25 "vendorName": "string",
26 "vendorPhone": "string",
27 "vendorFax": "string",
28 "erpSystem": {
29 "id": 0,
30 "displayId": "string",
31 "status": "CREATED",
32 "name": "string",
33 "type": "NAKISA",
34 "sapVersion": "ECC_EHP5"
35 },
36 "vendorParent": {
37 "id": 0,
38 "displayId": "string",
39 "status": "CREATED",
40 "name": "string",
41 "erpSystemDisplayId": "string"
42 },
43 "operation": "VENDOR_CREATE",
44 "operationReason": "string",
45 "companies": [
46 {
47 "id": 0,
48 "displayId": "string",
49 "changeType": "ADD",
50 "vendorRequestId": 0,
51 "vendorRequestDisplayId": "string",
52 "company": {
53 "id": 0,
54 "displayId": "string",
55 "status": "CREATED",
56 "erpSystemId": 0,
57 "erpSystemDisplayId": "string",
58 "countryId": 0,
59 "countryDisplayId": "string",
60 "name": "string",
61 "postingPeriodVariantId": 0,
62 "fiscalVariantId": 0
63 },
64 "allowsSystemGenerateNewId": true,
65 "numberRangeIdentifierValue": "string",
66 "numberRangeIdentifierType": {
67 "name": "string"
68 },
69 "numberRangeType": {
70 "name": "string"
71 }
72 }
73 ],
74 "companiesTotal": 0,
75 "partnerRoles": [
76 {
77 "id": 0,
78 "displayId": "string",
79 "changeType": "ADD",
80 "vendorRequestId": 0,
81 "vendorRequestDisplayId": "string",
82 "partnerRole": {
83 "id": 0,
84 "displayId": "string",
85 "status": "CREATED",
86 "name": "string"
87 },
88 "allowsSystemGenerateNewId": true,
89 "numberRangeIdentifierValue": "string",
90 "numberRangeIdentifierType": {
91 "name": "string"
92 },
93 "numberRangeType": {
94 "name": "string"
95 }
96 }
97 ],
98 "partnerRolesTotal": 0,
99 "partnerContacts": [
100 {
101 "id": 0,
102 "displayId": "string",
103 "changeType": "ADD",
104 "vendorRequestId": 0,
105 "vendorRequestDisplayId": "string",
106 "createdPartnerContactDisplayId": "string",
107 "name": "string",
108 "email": "string",
109 "phone": "string",
110 "position": "string",
111 "address": "string",
112 "group": "string",
113 "buildingName": "string",
114 "fax": "string",
115 "erpSystem": {
116 "id": 0,
117 "displayId": "string",
118 "status": "CREATED",
119 "name": "string",
120 "type": "NAKISA",
121 "sapVersion": "ECC_EHP5"
122 },
123 "partnerContact": {
124 "id": 0,
125 "displayId": "string",
126 "status": "CREATED",
127 "name": "string"
128 },
129 "allowsSystemGenerateNewId": true,
130 "numberRangeIdentifierValue": "string",
131 "numberRangeIdentifierType": {
132 "name": "string"
133 },
134 "numberRangeType": {
135 "name": "string"
136 }
137 }
138 ],
139 "partnerContactsTotal": 0,
140 "vendorState": "CREATED",
141 "hasLinkedProgressingChangeRequest": true,
142 "allowsSystemGenerateNewId": true,
143 "numberRangeIdentifierValue": "string",
144 "numberRangeIdentifierType": {
145 "name": "string"
146 },
147 "numberRangeType": {
148 "name": "string"
149 }
150 }
151 ],
152 "number": 0,
153 "sort": {
154 "unsorted": true,
155 "sorted": true,
156 "empty": true
157 },
158 "first": true,
159 "last": true,
160 "empty": true
161}
Archive A Vendor¶
HTTP Request
POST /api/v1/vendor-management/partner/{id}/archive
📋 Description: Marks the vendor as archived in Financial Org Structure. Archived vendors are excluded from new transaction lookups but remain visible on historical records.
Parameters
Name |
In |
Type |
Required |
Description |
|---|---|---|---|---|
id |
path |
integer(int64) |
true |
Internal FOS vendor ID |
Responses
Status |
Meaning |
Description |
Schema |
|---|---|---|---|
200 |
Vendor archived |
||
404 |
Vendor not found |
||
409 |
Payment amount exceeds remaining invoice balance |
||
502 |
Downstream service call failed |
Example Responses
1{
2 "id": 0,
3 "status": "CREATED",
4 "displayId": "string",
5 "erpSystemId": 0,
6 "erpSystemDisplayId": "string",
7 "name": "string",
8 "fax": "string",
9 "phone": "string",
10 "parentId": 0,
11 "parentName": "string",
12 "parentDisplayId": "string",
13 "companyId": 0,
14 "partnerRoleId": 0,
15 "partnerContactId": 0
16}
Create A New Vendor (Partner)¶
HTTP Request
POST /api/v1/vendor-management/partner
📋 Description: Creates a new vendor record in Financial Org Structure. The supplied PartnerDto is validated and forwarded to FOS. Returns the persisted partner with assigned ID.
Parameters
Name |
In |
Type |
Required |
Description |
|---|---|---|---|---|
body |
body |
true |
Request body containing the partner information, including identification details, contact information, and business attributes necessary for vendor management. |
Body Parameters
1{
2 "id": 0,
3 "status": "CREATED",
4 "displayId": "string",
5 "erpSystemId": 0,
6 "erpSystemDisplayId": "string",
7 "name": "string",
8 "fax": "string",
9 "phone": "string",
10 "parentId": 0,
11 "parentName": "string",
12 "parentDisplayId": "string",
13 "companyId": 0,
14 "partnerRoleId": 0,
15 "partnerContactId": 0
16}
Responses
Status |
Meaning |
Description |
Schema |
|---|---|---|---|
201 |
Vendor created successfully |
||
400 |
Invalid vendor data |
||
409 |
Payment amount exceeds remaining invoice balance |
||
502 |
Downstream service call failed |
Example Responses
1{
2 "id": 0,
3 "status": "CREATED",
4 "displayId": "string",
5 "erpSystemId": 0,
6 "erpSystemDisplayId": "string",
7 "name": "string",
8 "fax": "string",
9 "phone": "string",
10 "parentId": 0,
11 "parentName": "string",
12 "parentDisplayId": "string",
13 "companyId": 0,
14 "partnerRoleId": 0,
15 "partnerContactId": 0
16}
Check Whether A Vendor Is Marked As Favourite By The Current User¶
HTTP Request
GET /api/v1/vendor-management/{vendorId}/is-favorite
📋 Description: Check whether a vendor is marked as favourite by the current user
Parameters
Name |
In |
Type |
Required |
Description |
|---|---|---|---|---|
vendorId |
path |
integer(int64) |
true |
Unique identifier for the vendor |
Responses
Status |
Meaning |
Description |
Schema |
|---|---|---|---|
200 |
OK |
boolean |
|
409 |
Payment amount exceeds remaining invoice balance |
||
502 |
Downstream service call failed |
Example Responses
1true
Get Recently Viewed Vendors For The Current User¶
HTTP Request
GET /api/v1/vendor-management/recents
📋 Description: Get recently viewed vendors for the current user
Responses
Status |
Meaning |
Description |
Schema |
|---|---|---|---|
200 |
OK |
Inline |
|
409 |
Payment amount exceeds remaining invoice balance |
||
502 |
Downstream service call failed |
Example Responses
1[
2 {
3 "internalId": "string",
4 "foreignId": "string",
5 "objectType": "string",
6 "recentType": "VIEWED",
7 "username": "string",
8 "lastAccess": "2019-08-24T14:15:22Z"
9 }
10]
Response Schema
Status Code 200
Name |
Type |
Required |
Restrictions |
Description |
|---|---|---|---|---|
anonymous |
false |
none |
[Data transfer object representing the most recent model utilized in predictive analytics, encapsulating key attributes and performance metrics to support informed decision-making in business strategy.] |
|
» internalId |
string |
false |
none |
Unique identifier for the internal |
» foreignId |
string |
false |
none |
Unique identifier for the foreign |
» objectType |
string |
false |
none |
Type of the object |
» recentType |
string |
false |
none |
Type of the recent |
» username |
string |
false |
none |
Represents the unique identifier for a user within the system, facilitating user management and authentication processes. |
» lastAccess |
string(date-time) |
false |
none |
Timestamp indicating the most recent access to the resource, facilitating tracking of user engagement and system utilization. |
Enumerated Values
Attribute |
Value |
|---|---|
recentType |
APPROVED, CLOSED, MODIFIED, VIEWED |
Get Vendor Details From FOS¶
HTTP Request
GET /api/v1/vendor-management/fos/vendors/{vendorId}
📋 Description: Loads the full vendor form data for a specific vendor from Financial Org Structure (FOS), enriched with Payable-specific metadata.
Parameters
Name |
In |
Type |
Required |
Description |
|---|---|---|---|---|
vendorId |
path |
integer(int64) |
true |
Internal FOS vendor ID |
Responses
Status |
Meaning |
Description |
Schema |
|---|---|---|---|
200 |
Vendor details returned |
||
404 |
Vendor not found |
||
409 |
Payment amount exceeds remaining invoice balance |
||
502 |
Downstream service call failed |
Example Responses
1{
2 "id": 0,
3 "displayId": "string",
4 "state": "INV_DRAFT",
5 "vendorId": 0,
6 "vendorDisplayId": "string",
7 "vendorName": "string",
8 "vendorPhone": "string",
9 "vendorFax": "string",
10 "erpSystem": {
11 "id": 0,
12 "displayId": "string",
13 "status": "CREATED",
14 "name": "string",
15 "type": "NAKISA",
16 "sapVersion": "ECC_EHP5"
17 },
18 "vendorParent": {
19 "id": 0,
20 "displayId": "string",
21 "status": "CREATED",
22 "name": "string",
23 "erpSystemDisplayId": "string"
24 },
25 "operation": "VENDOR_CREATE",
26 "operationReason": "string",
27 "companies": [
28 {
29 "id": 0,
30 "displayId": "string",
31 "changeType": "ADD",
32 "vendorRequestId": 0,
33 "vendorRequestDisplayId": "string",
34 "company": {
35 "id": 0,
36 "displayId": "string",
37 "status": "CREATED",
38 "erpSystemId": 0,
39 "erpSystemDisplayId": "string",
40 "countryId": 0,
41 "countryDisplayId": "string",
42 "name": "string",
43 "postingPeriodVariantId": 0,
44 "fiscalVariantId": 0
45 },
46 "allowsSystemGenerateNewId": true,
47 "numberRangeIdentifierValue": "string",
48 "numberRangeIdentifierType": {
49 "name": "string"
50 },
51 "numberRangeType": {
52 "name": "string"
53 }
54 }
55 ],
56 "companiesTotal": 0,
57 "partnerRoles": [
58 {
59 "id": 0,
60 "displayId": "string",
61 "changeType": "ADD",
62 "vendorRequestId": 0,
63 "vendorRequestDisplayId": "string",
64 "partnerRole": {
65 "id": 0,
66 "displayId": "string",
67 "status": "CREATED",
68 "name": "string"
69 },
70 "allowsSystemGenerateNewId": true,
71 "numberRangeIdentifierValue": "string",
72 "numberRangeIdentifierType": {
73 "name": "string"
74 },
75 "numberRangeType": {
76 "name": "string"
77 }
78 }
79 ],
80 "partnerRolesTotal": 0,
81 "partnerContacts": [
82 {
83 "id": 0,
84 "displayId": "string",
85 "changeType": "ADD",
86 "vendorRequestId": 0,
87 "vendorRequestDisplayId": "string",
88 "createdPartnerContactDisplayId": "string",
89 "name": "string",
90 "email": "string",
91 "phone": "string",
92 "position": "string",
93 "address": "string",
94 "group": "string",
95 "buildingName": "string",
96 "fax": "string",
97 "erpSystem": {
98 "id": 0,
99 "displayId": "string",
100 "status": "CREATED",
101 "name": "string",
102 "type": "NAKISA",
103 "sapVersion": "ECC_EHP5"
104 },
105 "partnerContact": {
106 "id": 0,
107 "displayId": "string",
108 "status": "CREATED",
109 "name": "string"
110 },
111 "allowsSystemGenerateNewId": true,
112 "numberRangeIdentifierValue": "string",
113 "numberRangeIdentifierType": {
114 "name": "string"
115 },
116 "numberRangeType": {
117 "name": "string"
118 }
119 }
120 ],
121 "partnerContactsTotal": 0,
122 "vendorState": "CREATED",
123 "hasLinkedProgressingChangeRequest": true,
124 "allowsSystemGenerateNewId": true,
125 "numberRangeIdentifierValue": "string",
126 "numberRangeIdentifierType": {
127 "name": "string"
128 },
129 "numberRangeType": {
130 "name": "string"
131 }
132}
Get All Vendors Marked As Favourite By The Current User¶
HTTP Request
GET /api/v1/vendor-management/favorites
📋 Description: Get all vendors marked as favourite by the current user
Responses
Status |
Meaning |
Description |
Schema |
|---|---|---|---|
200 |
OK |
Inline |
|
409 |
Payment amount exceeds remaining invoice balance |
||
502 |
Downstream service call failed |
Example Responses
1[
2 {
3 "internalId": "string",
4 "foreignId": "string",
5 "objectType": "string",
6 "username": "string",
7 "sequenceNumber": 0,
8 "createdAt": "2019-08-24T14:15:22Z"
9 }
10]
Response Schema
Status Code 200
Name |
Type |
Required |
Restrictions |
Description |
|---|---|---|---|---|
anonymous |
false |
none |
[Data transfer object representing a user’s preferred items within the application, facilitating personalized experiences and enhancing user engagement.] |
|
» internalId |
string |
false |
none |
Unique identifier for the internal |
» foreignId |
string |
false |
none |
Unique identifier for the foreign |
» objectType |
string |
false |
none |
Type of the object |
» username |
string |
false |
none |
Represents the unique username associated with a user in the system, facilitating user identification and access management. |
» sequenceNumber |
integer(int32) |
false |
none |
Sequential identifier for the favorite items, ensuring a consistent order within the user’s preferences. |
» createdAt |
string(date-time) |
false |
none |
Timestamp when this resource was created |