2.2 Modify a Supplier

Revised: 24 April 2017

Using API

  1. Change a Supplier's details in the ERP / Procurement system.
  2. 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).
  3. The ERP Connector platform should trigger a Coupa PUT API to update the Supplier in Coupa using the Supplier <id>.
  4. 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.
  5. 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

  1. Change a Supplier's details in the ERP / Procurement system.

  2. The ERP Connector platform generates a CSV flat file containing the changes that you want to see in Coupa.

  3. The ERP Connector platform places the CSV file to the /Incoming/Suppliers folder on the Coupa sFTP site.

  4. 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.