v3 vendors changes

In v3, there are a range of improvements and new features with vendor operations.

v2v3
Create a vendor with POST /v2/Crud/Create/Vendor.json.

Add vendor bank account information for the vendor with POST /v2/Crud/Create/VendorBankAccount.json.
Creating a vendor with POST /v3/vendors combines 2 operations.
1. Create a vendor.
2. In addition, you can add vendor bank account information.

The request and response field names have changed. Relevant fields are grouped under the address, paymentInformation, additionalInfo, balance, and autoPay objects.

For adding an international vendor bank account, get the required regulatory configuration with GET /v1/vendors/configuration/international-payments. This configuration is based on vendor country, bill currency, and account type. From this response, set the regulatory configuration in your vendor creation request.

See Vendors for more information.
Read a vendor with POST /v2/Crud/Read/Vendor.json.Get vendor details with GET /v3/vendors/{vendorId}. vendorId is now set as a path parameter.

See Get vendor details in the API reference for more information.
List vendors with POST /v2/Crud/List/Vendor.json.Get list of vendors with GET /v3/vendors.

Filtering and sorting values are now query parameters. For filtering, use the filters=field:op:value format . The operator values are now acronyms. For example, = is now eq and >= is now gte.

For sorting, use the sort=field:order format. For example, sort by createdTime in the ascending order with sort=createdTime:asc.

The response includes nextPage and prevPage values for you to navigate between the pages of results.

See Search operations with lists for more information.
Update a vendor with POST /v2/Crud/Update/Vendor.json.Update a vendor with PATCH /v3/vendors/{vendorId}. This is a PATCH operation and vendorId is now set as a path parameter.

The request and response field names have changed. In your v3 PATCH request, set the vendor fields you want to update. All the vendor fields are not required in your request.

For adding an international vendor bank account, get the required regulatory configuration with GET /v3/vendors/{vendorId}/configuration. This configuration is based on the vendorId path parameter. From this response, set the regulatory configuration in your vendor update request.

See Update a vendor in the API reference for more information.
Delete a vendor with POST /v2/Crud/Delete/Vendor.json.Archive a vendor with POST /v3/vendors/{vendorId}/archive. vendorId is now set as a path parameter.

In the response, isActive is now archived. The archived field is boolean.

See Archive a vendor in the API reference for more information.
Undelete a vendor with POST /v2/Crud/Undelete/Vendor.json.Restore a vendor with POST /v3/vendors/{vendorId}/restore. vendorId is now set as a path parameter.

In the response, isActive is now archived. The archived field is boolean.

See Restore an archived vendor in the API reference for more information.