> For clean Markdown of any page, append .md to the page URL. > For a complete documentation index, see https://beta-docs.payabli.com/api-reference/vendor/update-vendor/llms.txt. > For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://beta-docs.payabli.com/_mcp/server. # Update vendor PUT https://api-sandbox.payabli.com/api/Vendor/{idVendor} Content-Type: application/json Updates a vendor's information. Send only the fields that need to be updated. Reference: https://beta-docs.payabli.com/api-reference/vendor/update-vendor ## Authentication - `requestToken` header (required) — API Key authentication via header ## Servers - `https://api-sandbox.payabli.com/api` (Sandbox, default) - `https://api.payabli.com/api` (Production) ## Request ### Path parameters - `idVendor` (integer, required) — Vendor ID. ### Body (application/json) This endpoint expects a VendorData. - `vendorNumber` (string, optional) — Custom number identifying the vendor. Must be unique in paypoint. - `AdditionalData` (map from string to map from string to any, optional) — Custom dictionary of key:value pairs. You can use this field to store any data related to the object or for your system. If you are using [custom identifiers](/developer-guides/entities-custom-identifiers), pass those in this object. Example usage: ```json { "additionalData": { "key1": "value1", "key2": "value2", "key3": "value3" } } ``` - `address1` (string, optional) — Vendor's address - `address2` (string, optional) — Additional line for vendor's address. - `billingData` (BillingData, optional) — Object containing vendor's bank information. - `city` (string, optional) — Vendor's city. - `contacts` (list of Contacts, optional) — Array of objects describing the vendor's contacts. - `country` (string, optional) — Vendor's country. - `customerVendorAccount` (string, optional) — Account number of paypoint in the vendor side. - `ein` (string, optional) — EIN/Tax ID for vendor. - `email` (string, optional) — Vendor's email address. Required for vCard. - `internalReferenceId` (long, optional) — Internal identifier for global vendor account. - `locationCode` (string, optional) — Additional location code used to identify the vendor. - `mcc` (string, optional) — Business Merchant Category Code (MCC). [This resource](https://github.com/greggles/mcc-codes/blob/main/mcc_codes.csv) lists MCC codes. - `name1` (string, optional) — Primary name for vendor. Required for new vendor. - `name2` (string, optional) — Secondary name for vendor. - `payeeName1` (string, optional) — Alternative name used to receive paper check. - `payeeName2` (string, optional) — Alternative name used to receive paper check. - `paymentMethod` (VendorPaymentMethod, optional) — Object containing details about the payment method to use for the payout. - `phone` (string, optional) — Vendor's phone number. Phone number can't contain non-digit characters like hyphens or parentheses. - `remitAddress1` (string, optional) — Remittance address. Used for mailing paper checks. - `remitAddress2` (string, optional) — Remittance address additional line. Used for mailing paper checks. - `remitCity` (string, optional) — Remittance address city. Used for mailing paper checks. - `remitCountry` (string, optional) — Remittance address country. Used for mailing paper checks. - `remitState` (string, optional) — Remittance address state. Used for mailing paper checks. - `remitZip` (string, optional) — Remittance address ZIP code. Used for mailing paper checks. - `state` (string, optional) — Vendor's state. Must be a 2 character state code. - `vendorStatus` (integer, optional) — Vendor's status. Allowed status: - 0 Inactive - 1 Active - `zip` (string, optional) — Vendor's zip code. ## Response ### 200 Success - `isSuccess` (boolean, optional) — Boolean indicating whether the operation was successful. A `true` value indicates success. A `false` value indicates failure. - `pageIdentifier` (string, optional) — Auxiliary validation used internally by payment pages and components. - `responseCode` (integer, optional) — Code for the response. Learn more in [API Response Codes](/api-reference/api-responses). - `responseData` (integer, optional) — If the request was successful, this field contains the identifier for the vendor. - `responseText` (string, optional) — Response text for operation: 'Success' or 'Declined'. ## Errors ### 400 Bad Request Error Bad request/ invalid data - `any` ### 401 Unauthorized Error Unauthorized request. - `any` ### 500 Internal Server Error Internal API Error - `any` ### 503 Service Unavailable Error Database connection error - `isSuccess` (boolean, optional) — Boolean indicating whether the operation was successful. A `true` value indicates success. A `false` value indicates failure. - `responseData` (map from string to any, optional) — The object containing the response data. - `responseText` (string, optional) — Response text for operation: 'Success' or 'Declined'. ## Types ### BillingData - `accountNumber` (string, optional) — Account number for bank account. - `bankAccountFunction` (integer, optional) — Describes whether the bank account is used for deposits or withdrawals in Payabli: - `0`: Deposit - `1`: Withdrawal - `2`: Deposit and withdrawal - `bankAccountHolderName` (string, optional) — The accountholder's name. - `bankAccountHolderType` (enum, optional) — Describes whether the bank is a personal or business account. - Allowed values: `Personal`, `Business` - `bankName` (string, optional) — Name of bank for account. - `id` (integer, optional) — The bank's ID in Payabli. - `routingAccount` (string, optional) — Routing number of bank account. - `typeAccount` (enum, optional) — Type of bank account: Checking or Savings. - Allowed values: `Checking`, `Savings` ### Contacts - `contactEmail` (string, optional) — Contact email address. - `contactName` (string, optional) — Contact name. - `contactPhone` (string, optional) — Contact phone number. - `contactTitle` (string, optional) — Contact title. ### VendorPaymentMethod Object containing details about the payment method to use for the payout. - `method` (enum, optional) — Payment method to use for payout. Leave empty for managed payables. - Allowed values: `managed`, `vcard`, `ach`, `check` ## Examples **Request** ```json { "name1": "Theodore's Janitorial" } ``` **Response** ```json { "isSuccess": true, "responseCode": 1, "responseData": 3890, "responseText": "Success" } ``` **SDK Code** ```python Update `name1` field import requests url = "https://api-sandbox.payabli.com/api/Vendor/1" payload = { "name1": "Theodore's Janitorial" } headers = { "requestToken": "", "Content-Type": "application/json" } response = requests.put(url, json=payload, headers=headers) print(response.json()) ``` ```javascript Update `name1` field const url = 'https://api-sandbox.payabli.com/api/Vendor/1'; const options = { method: 'PUT', headers: {requestToken: '', 'Content-Type': 'application/json'}, body: '{"name1":"Theodore\'s Janitorial"}' }; try { const response = await fetch(url, options); const data = await response.json(); console.log(data); } catch (error) { console.error(error); } ``` ```go Update `name1` field package main import ( "fmt" "strings" "net/http" "io" ) func main() { url := "https://api-sandbox.payabli.com/api/Vendor/1" payload := strings.NewReader("{\n \"name1\": \"Theodore's Janitorial\"\n}") req, _ := http.NewRequest("PUT", url, payload) req.Header.Add("requestToken", "") req.Header.Add("Content-Type", "application/json") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(res) fmt.Println(string(body)) } ``` ```ruby Update `name1` field require 'uri' require 'net/http' url = URI("https://api-sandbox.payabli.com/api/Vendor/1") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Put.new(url) request["requestToken"] = '' request["Content-Type"] = 'application/json' request.body = "{\n \"name1\": \"Theodore's Janitorial\"\n}" response = http.request(request) puts response.read_body ``` ```java Update `name1` field import com.mashape.unirest.http.HttpResponse; import com.mashape.unirest.http.Unirest; HttpResponse response = Unirest.put("https://api-sandbox.payabli.com/api/Vendor/1") .header("requestToken", "") .header("Content-Type", "application/json") .body("{\n \"name1\": \"Theodore's Janitorial\"\n}") .asString(); ``` ```php Update `name1` field request('PUT', 'https://api-sandbox.payabli.com/api/Vendor/1', [ 'body' => '{ "name1": "Theodore\'s Janitorial" }', 'headers' => [ 'Content-Type' => 'application/json', 'requestToken' => '', ], ]); echo $response->getBody(); ``` ```csharp Update `name1` field using RestSharp; var client = new RestClient("https://api-sandbox.payabli.com/api/Vendor/1"); var request = new RestRequest(Method.PUT); request.AddHeader("requestToken", ""); request.AddHeader("Content-Type", "application/json"); request.AddParameter("application/json", "{\n \"name1\": \"Theodore's Janitorial\"\n}", ParameterType.RequestBody); IRestResponse response = client.Execute(request); ``` ```swift Update `name1` field import Foundation let headers = [ "requestToken": "", "Content-Type": "application/json" ] let parameters = ["name1": "Theodore's Janitorial"] as [String : Any] let postData = JSONSerialization.data(withJSONObject: parameters, options: []) let request = NSMutableURLRequest(url: NSURL(string: "https://api-sandbox.payabli.com/api/Vendor/1")! as URL, cachePolicy: .useProtocolCachePolicy, timeoutInterval: 10.0) request.httpMethod = "PUT" request.allHTTPHeaderFields = headers request.httpBody = postData as Data let session = URLSession.shared let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in if (error != nil) { print(error as Any) } else { let httpResponse = response as? HTTPURLResponse print(httpResponse) } }) dataTask.resume() ``` > If you're a software company, you're a payments company™