2.2 Modify a Supplier
Using API
- Change a Supplier's details in the ERP / Procurement system.
- The ERP Connector platform should trigger an API call to Coupa with the Supplier GET API to query the Supplier’s
<id>or<name> that you need to update (based on “name”, for example, but any queryable field/tag can be used depending on business scenario). - The ERP Connector platform should trigger a Coupa PUT API to update the Supplier in Coupa using the Supplier
<id>. - Ensure that you get a 200 API response and it is logged in your ERP Connector platform logging engine. If you get a different API response (for example, 400) error, the API error (returned on API response
<errors><error>tag(s)) must be logged in the ERP Connector platform logging engine and a notification must be sent to the relevant person to investigate. - Validate that the Supplier's details are modified correctly in Coupa.
Sample API
In this example, a Supplier is queried based on the Supplier's name (TEST_SUPPLIER); then the API response Coupa Supplier <id> is used to update the Coupa Supplier with a new name.
GET
https://<instance_url>/api/suppliers?name=TEST_SUPPLIER
Payload
<?xml version="1.0" encoding="UTF-8"?>
<suppliers type="array">
<supplier>
<id type="integer">540</id>
<created-at type="dateTime">2016-08-29T09:04:31Z</created-at>
<updated-at type="dateTime">2016-09-07T12:19:04Z</updated-at>
<name>R15_TEST_SUPPLIER_10</name>
<display-name>R15_TEST_SUPPLIER_10</display-name>
<number>R15_TEST_SUPPLIER_10</number>
<status>active</status>
<website />
<po-method>prompt</po-method>
<po-change-method>prompt</po-change-method>
<payment-method>invoice</payment-method>
<cxml-url />
<cxml-domain />
<cxml-identity />
<cxml-supplier-domain />
<cxml-supplier-identity />
<cxml-secret nil="true" />
<cxml-protocol />
<cxml-http-username />
<cxml-ssl-version />
<disable-cert-verify type="boolean">false</disable-cert-verify>
<po-email>adam.zsinko+CSNtest@coupa.com</po-email>
<account-number />
<duns />
<tax-id />
</supplier>
</suppliers>
Take the Supplier's <id> from the response payload (<id>540</id>).
PUT
https://<instance_url>/api/suppliers/540
Payload
<?xml version="1.0" encoding="UTF-8"?> <supplier> <name>SubWay-New-101</name> </supplier>
Using CSV
-
Change a Supplier's details in the ERP / Procurement system.
-
The ERP Connector platform generates a CSV flat file containing the changes that you want to see in Coupa.
-
The ERP Connector platform places the CSV file to the
/Incoming/Suppliersfolder on the Coupa sFTP site. - Once the scheduled job picks up and processes the file, validate that the Supplier's details are updated correctly in Coupa.
Sample CSV
Place the CSV file to the/Incoming/Suppliers folder, where the file is picked up and processed in 5 minutes, and validate that the Supplier's details are updated.
For a sample file, see modify_supplier.csv.
The CSV flat file upload is monitored in Coupa at https://<instance>/data_sources. Coupa sends a notification to Coupa Admin on an upload failure, and Coupa Admin needs to investigate further.