Vendors

The companies you buy from. Bank details are never returned - see Conventions.

The object#

FieldTypeDescription
namestring(30)Last name, for an individual vendor. The display name uses companyname when that is set, otherwise the personal name fields.
idread-onlyintegerNolaPro id.
orderfromnamestring(30)Contact name on the Order From address block - where purchase orders go when ordering differs from the payment address.
paytermsidintegerPaytermsid. Id only - the table this points at is not identifiable from the column name, so there is no human key to send instead.
paynoneinteger1 puts the vendor on payment hold: payment runs set to skip held vendors exclude their bills, and bill lists mark the vendor with *.
defaultglacctidintegerReference to glaccounts, by id. Write either this or defaultglacct.
defaultglacctstring(20)Code for the referenced glaccount, instead of the id.
defaultbilldescriptionstring(50)Description pre-filled on new bills entered for this vendor.
customeraccountstring(20)Your account number with this vendor, printed on payments.
cancelbooleanCancelled. Always a boolean on the wire, whatever integer width the column uses (D23).
entrydateread-onlystringWhen the record was created.
lastchangedateread-onlystringLast modification. Drives modifiedsince.
companynamestring(100)Company name. When set it is the vendor’s display name; otherwise the salutation/first/middle/name/suffix fields are used.
address1string(100)Street address.
address2string(100)Second address line.
mailstopstring(20)Mail stop line printed with the payment address.
citystring(50)City of the payment address.
statestring(20)State of the payment address.
zipstring(15)Postal code.
countrystring(20)Country of the payment address.
phone1string(20)Primary phone.
phone1commentstring(20)Label describing what phone1 reaches (Office, Mobile, ...).
phone2string(20)Additional phone number.
phone2commentstring(20)Label describing what phone2 reaches (Office, Mobile, ...).
phone3string(20)Additional phone number.
phone3commentstring(20)Label describing what phone3 reaches (Office, Mobile, ...).
phone4string(20)Additional phone number.
phone4commentstring(20)Label describing what phone4 reaches (Office, Mobile, ...).
email1string(255)Primary email address.
email1commentstring(20)Label describing what email1 is for.
email2string(255)Secondary email.
email2commentstring(20)Label describing what email2 is for.
websitestring(100)Vendor’s website URL.
orderfrom_companynamestring(100)Company name on the Order From address, when purchase orders go to a different address than payments.
orderfrom_address1string(100)Street address line 1 of the Order From address.
orderfrom_address2string(100)Street address line 2 of the Order From address.
orderfrom_mailstopstring(20)Mail stop line of the Order From address.
orderfrom_citystring(50)City of the Order From address.
orderfrom_statestring(20)State of the Order From address.
orderfrom_zipstring(15)ZIP/postal code of the Order From address.
orderfrom_countrystring(20)Country of the Order From address.
imageread-onlystring(64)Filename of the picture uploaded on the vendor screen. Managed by the file upload, so it cannot be written through the API.
default_cost_per_hourmoneystring(6dp)Stored as decimal(12,6).
vendor_codestring(50)Vendor number, shown as Vendor Code on the vendor screens. Auto-assigned from the company’s next-vendor-code counter when left blank.
vendor_lead_timeintegerLead time in days. New purchase orders default their due date this many days out.
carrierserviceidintegerDefault carrier service (ship method) for this vendor’s purchase orders.
carrierservicestring(100)Code for the referenced carrierservice, instead of the id.
noreturnsinteger1 blocks RMA returns to this vendor.
percent_commissionnumberstring(4dp)Numeric string, 4 decimal places. Not money - do not apply currency rounding.
flat_commissionmoneystring(4dp)Stored as decimal(12,4).
parent_vendoridintegerParent vendor, when this record is a location or division of a larger vendor.
parent_vendorstring(30)Vendor code of the parent vendor. Send this or parent_vendorid, not both unless they agree.
taxgroupidintegerTax group applied to this vendor’s purchases.
taxgroupstring(20)Code for the referenced taxgroup, instead of the id.
vendorcodestring(30)Older short vendor code, appended to the display name in parentheses.
salutationstring(20)Salutation for an individual vendor (Mr., Ms., ...).
first_namestring(50)First name, for an individual vendor.
middle_namestring(50)Middle name, for an individual vendor.
name_suffixstring(20)Name suffix for an individual vendor (Jr., III, ...).
vendortypeidintegerReference to vendortypes, by id. Write either this or vendortype.
vendortypestring(100)Code for the referenced vendortype, instead of the id.
default_retainermoneystring(3dp)Stored as decimal(6,3).
currencystring(10)Currency the vendor bills in. Bills and purchase orders for the vendor default to it.
gets1099integer1 when the vendor receives a 1099 at year end.
basevendoridintegerReference to vendors, by id. Write either this or basevendor.
basevendorstring(30)Vendor code of the base vendor. Send this or basevendorid, not both unless they agree.
buyeruseridintegerBuyeruserid. Id only.
buyeruserstring(50)Login name of the buyer. Send this or buyeruserid, not both unless they agree.
default_checkacctidintegerChecking account payments to this vendor default to.
default_checkacctstring(30)Name of the default bank account. Send this or default_checkacctid, not both unless they agree.
default_paymethodintegerDefault payment method for bills: 1 = cash, 2 = check, 3 = credit card, 4 = ACH/EFT; 0 when none is set.
leadbooleanTrue when the record is a prospective vendor entered as a lead (Leads feature) rather than an active vendor.
orderfrom_emailstring(255)Email address purchase orders are sent to.
orderfrom_faxstring(20)Fax number for sending purchase orders.
orderfrom_phonestring(20)Phone number of the ordering contact.
paytonamestring(150)Pay To name printed on checks, when different from the vendor name.
taskstatusidintegerReference to taskstatuses, by id. Write either this or taskstatus.
taskstatusstring(100)Task status name. Send this or taskstatusid, not both unless they agree.
timezoneidintegerReference to timezones, by id. Write either this or timezone.
timezonestring(64)IANA time zone name. Send this or timezoneid, not both unless they agree.
insuranceemailstring(50)Email address of the vendor’s insurance contact, used for certificate-of-insurance tracking.
insuranceemailcommentstring(50)Label describing the insurance email contact.
insurancephonestring(20)Phone number of the vendor’s insurance contact.
insurancephonecommentstring(50)Label describing the insurance phone contact.
paytoemailstring(255)Email address payment remittances are sent to.
excludefrompaymentreportbooleanTrue leaves the vendor off payment reports.
insurancefaxstring(20)Fax number of the vendor’s insurance contact.
insurancefaxcommentstring(50)Label describing the insurance fax contact.
addressverifiedread-onlystring(32)Hash of the address as it stood when it last passed the AvaTax/USPS address check; when it no longer matches the current address the address counts as unverified. Maintained by the verification flow, so it cannot be written through the API.
displaynameread-onlystring(255)STORED GENERATED in the database. Read-only - MySQL computes it, and a value sent here is silently discarded.
displaynamenocoderead-onlystring(255)STORED GENERATED in the database. Read-only - MySQL computes it, and a value sent here is silently discarded.
externalidstring(100)Your own key. Scoped to your company.

Endpoints#

POST/vendors/batch 207

Create many.

Requires scope vendors:write.

Parameters
NameInTypeNotes
Body array
FieldTypeDescription
namestring(30)Last name, for an individual vendor. The display name uses companyname when that is set, otherwise the personal name fields.
idread-onlyintegerNolaPro id.
orderfromnamestring(30)Contact name on the Order From address block - where purchase orders go when ordering differs from the payment address.
paytermsidintegerPaytermsid. Id only - the table this points at is not identifiable from the column name, so there is no human key to send instead.
paynoneinteger1 puts the vendor on payment hold: payment runs set to skip held vendors exclude their bills, and bill lists mark the vendor with *.
defaultglacctidintegerReference to glaccounts, by id. Write either this or defaultglacct.
defaultglacctstring(20)Code for the referenced glaccount, instead of the id.
defaultbilldescriptionstring(50)Description pre-filled on new bills entered for this vendor.
customeraccountstring(20)Your account number with this vendor, printed on payments.
cancelbooleanCancelled. Always a boolean on the wire, whatever integer width the column uses (D23).
entrydateread-onlystringWhen the record was created.
lastchangedateread-onlystringLast modification. Drives modifiedsince.
companynamestring(100)Company name. When set it is the vendor’s display name; otherwise the salutation/first/middle/name/suffix fields are used.
address1string(100)Street address.
address2string(100)Second address line.
mailstopstring(20)Mail stop line printed with the payment address.
citystring(50)City of the payment address.
statestring(20)State of the payment address.
zipstring(15)Postal code.
countrystring(20)Country of the payment address.
phone1string(20)Primary phone.
phone1commentstring(20)Label describing what phone1 reaches (Office, Mobile, ...).
phone2string(20)Additional phone number.
phone2commentstring(20)Label describing what phone2 reaches (Office, Mobile, ...).
phone3string(20)Additional phone number.
phone3commentstring(20)Label describing what phone3 reaches (Office, Mobile, ...).
phone4string(20)Additional phone number.
phone4commentstring(20)Label describing what phone4 reaches (Office, Mobile, ...).
email1string(255)Primary email address.
email1commentstring(20)Label describing what email1 is for.
email2string(255)Secondary email.
email2commentstring(20)Label describing what email2 is for.
websitestring(100)Vendor’s website URL.
orderfrom_companynamestring(100)Company name on the Order From address, when purchase orders go to a different address than payments.
orderfrom_address1string(100)Street address line 1 of the Order From address.
orderfrom_address2string(100)Street address line 2 of the Order From address.
orderfrom_mailstopstring(20)Mail stop line of the Order From address.
orderfrom_citystring(50)City of the Order From address.
orderfrom_statestring(20)State of the Order From address.
orderfrom_zipstring(15)ZIP/postal code of the Order From address.
orderfrom_countrystring(20)Country of the Order From address.
imageread-onlystring(64)Filename of the picture uploaded on the vendor screen. Managed by the file upload, so it cannot be written through the API.
default_cost_per_hourmoneystring(6dp)Stored as decimal(12,6).
vendor_codestring(50)Vendor number, shown as Vendor Code on the vendor screens. Auto-assigned from the company’s next-vendor-code counter when left blank.
vendor_lead_timeintegerLead time in days. New purchase orders default their due date this many days out.
carrierserviceidintegerDefault carrier service (ship method) for this vendor’s purchase orders.
carrierservicestring(100)Code for the referenced carrierservice, instead of the id.
noreturnsinteger1 blocks RMA returns to this vendor.
percent_commissionnumberstring(4dp)Numeric string, 4 decimal places. Not money - do not apply currency rounding.
flat_commissionmoneystring(4dp)Stored as decimal(12,4).
parent_vendoridintegerParent vendor, when this record is a location or division of a larger vendor.
parent_vendorstring(30)Vendor code of the parent vendor. Send this or parent_vendorid, not both unless they agree.
taxgroupidintegerTax group applied to this vendor’s purchases.
taxgroupstring(20)Code for the referenced taxgroup, instead of the id.
vendorcodestring(30)Older short vendor code, appended to the display name in parentheses.
salutationstring(20)Salutation for an individual vendor (Mr., Ms., ...).
first_namestring(50)First name, for an individual vendor.
middle_namestring(50)Middle name, for an individual vendor.
name_suffixstring(20)Name suffix for an individual vendor (Jr., III, ...).
vendortypeidintegerReference to vendortypes, by id. Write either this or vendortype.
vendortypestring(100)Code for the referenced vendortype, instead of the id.
default_retainermoneystring(3dp)Stored as decimal(6,3).
currencystring(10)Currency the vendor bills in. Bills and purchase orders for the vendor default to it.
gets1099integer1 when the vendor receives a 1099 at year end.
basevendoridintegerReference to vendors, by id. Write either this or basevendor.
basevendorstring(30)Vendor code of the base vendor. Send this or basevendorid, not both unless they agree.
buyeruseridintegerBuyeruserid. Id only.
buyeruserstring(50)Login name of the buyer. Send this or buyeruserid, not both unless they agree.
default_checkacctidintegerChecking account payments to this vendor default to.
default_checkacctstring(30)Name of the default bank account. Send this or default_checkacctid, not both unless they agree.
default_paymethodintegerDefault payment method for bills: 1 = cash, 2 = check, 3 = credit card, 4 = ACH/EFT; 0 when none is set.
leadbooleanTrue when the record is a prospective vendor entered as a lead (Leads feature) rather than an active vendor.
orderfrom_emailstring(255)Email address purchase orders are sent to.
orderfrom_faxstring(20)Fax number for sending purchase orders.
orderfrom_phonestring(20)Phone number of the ordering contact.
paytonamestring(150)Pay To name printed on checks, when different from the vendor name.
taskstatusidintegerReference to taskstatuses, by id. Write either this or taskstatus.
taskstatusstring(100)Task status name. Send this or taskstatusid, not both unless they agree.
timezoneidintegerReference to timezones, by id. Write either this or timezone.
timezonestring(64)IANA time zone name. Send this or timezoneid, not both unless they agree.
insuranceemailstring(50)Email address of the vendor’s insurance contact, used for certificate-of-insurance tracking.
insuranceemailcommentstring(50)Label describing the insurance email contact.
insurancephonestring(20)Phone number of the vendor’s insurance contact.
insurancephonecommentstring(50)Label describing the insurance phone contact.
paytoemailstring(255)Email address payment remittances are sent to.
excludefrompaymentreportbooleanTrue leaves the vendor off payment reports.
insurancefaxstring(20)Fax number of the vendor’s insurance contact.
insurancefaxcommentstring(50)Label describing the insurance fax contact.
addressverifiedread-onlystring(32)Hash of the address as it stood when it last passed the AvaTax/USPS address check; when it no longer matches the current address the address counts as unverified. Maintained by the verification flow, so it cannot be written through the API.
displaynameread-onlystring(255)STORED GENERATED in the database. Read-only - MySQL computes it, and a value sent here is silently discarded.
displaynamenocoderead-onlystring(255)STORED GENERATED in the database. Read-only - MySQL computes it, and a value sent here is silently discarded.
externalidstring(100)Your own key. Scoped to your company.
curl -X POST \
  'https://acme.nolapro.com/!/api/v2/vendors/batch' \
  -H 'Authorization: Bearer $NP_TOKEN' \
  -H 'Content-Type: application/json' \
  -H 'Idempotency-Key: your-unique-key' \
  -d '[
    {
        "name": "Example name",
        "orderfromname": "Example orderfromname",
        "paytermsid": 104,
        "paynone": 1,
        "defaultglacctid": 104,
        "defaultglacct": "Example defaultglacct"
    }
]'
GET/vendors 200403

List vendors.

Requires scope vendors:read.

Parameters
NameInTypeNotes
namequerystringname. Partial match, case-insensitive.
vendorcodequerystringPartial match, case insensitive.
cancelquerystringDefaults to false. Pass true or any.
modifiedsincequerystringRFC 3339 UTC timestamp. Returns only records changed since then, including cancelled ones - so cancel defaults to any rather than false when this is used. The response carries _meta.synced_through; store it and send it back next time.
externalidquerystringExact match on your own key.
includequerystringComma-separated extras to embed. Only custom_fields is available: the extra fields this install has defined on the record. Off by default, and an unrecognised value is refused rather than ignored. See Conventions.
When it fails
StatusCodeMeaning
403insufficient_scopeToken lacks read scope.
curl \
  'https://acme.nolapro.com/!/api/v2/vendors' \
  -H 'Authorization: Bearer $NP_TOKEN'
POST/vendors 201400

Create.

Requires scope vendors:write.

Parameters
NameInTypeNotes
Body
FieldTypeDescription
namestring(30)Last name, for an individual vendor. The display name uses companyname when that is set, otherwise the personal name fields.
idread-onlyintegerNolaPro id.
orderfromnamestring(30)Contact name on the Order From address block - where purchase orders go when ordering differs from the payment address.
paytermsidintegerPaytermsid. Id only - the table this points at is not identifiable from the column name, so there is no human key to send instead.
paynoneinteger1 puts the vendor on payment hold: payment runs set to skip held vendors exclude their bills, and bill lists mark the vendor with *.
defaultglacctidintegerReference to glaccounts, by id. Write either this or defaultglacct.
defaultglacctstring(20)Code for the referenced glaccount, instead of the id.
defaultbilldescriptionstring(50)Description pre-filled on new bills entered for this vendor.
customeraccountstring(20)Your account number with this vendor, printed on payments.
cancelbooleanCancelled. Always a boolean on the wire, whatever integer width the column uses (D23).
entrydateread-onlystringWhen the record was created.
lastchangedateread-onlystringLast modification. Drives modifiedsince.
companynamestring(100)Company name. When set it is the vendor’s display name; otherwise the salutation/first/middle/name/suffix fields are used.
address1string(100)Street address.
address2string(100)Second address line.
mailstopstring(20)Mail stop line printed with the payment address.
citystring(50)City of the payment address.
statestring(20)State of the payment address.
zipstring(15)Postal code.
countrystring(20)Country of the payment address.
phone1string(20)Primary phone.
phone1commentstring(20)Label describing what phone1 reaches (Office, Mobile, ...).
phone2string(20)Additional phone number.
phone2commentstring(20)Label describing what phone2 reaches (Office, Mobile, ...).
phone3string(20)Additional phone number.
phone3commentstring(20)Label describing what phone3 reaches (Office, Mobile, ...).
phone4string(20)Additional phone number.
phone4commentstring(20)Label describing what phone4 reaches (Office, Mobile, ...).
email1string(255)Primary email address.
email1commentstring(20)Label describing what email1 is for.
email2string(255)Secondary email.
email2commentstring(20)Label describing what email2 is for.
websitestring(100)Vendor’s website URL.
orderfrom_companynamestring(100)Company name on the Order From address, when purchase orders go to a different address than payments.
orderfrom_address1string(100)Street address line 1 of the Order From address.
orderfrom_address2string(100)Street address line 2 of the Order From address.
orderfrom_mailstopstring(20)Mail stop line of the Order From address.
orderfrom_citystring(50)City of the Order From address.
orderfrom_statestring(20)State of the Order From address.
orderfrom_zipstring(15)ZIP/postal code of the Order From address.
orderfrom_countrystring(20)Country of the Order From address.
imageread-onlystring(64)Filename of the picture uploaded on the vendor screen. Managed by the file upload, so it cannot be written through the API.
default_cost_per_hourmoneystring(6dp)Stored as decimal(12,6).
vendor_codestring(50)Vendor number, shown as Vendor Code on the vendor screens. Auto-assigned from the company’s next-vendor-code counter when left blank.
vendor_lead_timeintegerLead time in days. New purchase orders default their due date this many days out.
carrierserviceidintegerDefault carrier service (ship method) for this vendor’s purchase orders.
carrierservicestring(100)Code for the referenced carrierservice, instead of the id.
noreturnsinteger1 blocks RMA returns to this vendor.
percent_commissionnumberstring(4dp)Numeric string, 4 decimal places. Not money - do not apply currency rounding.
flat_commissionmoneystring(4dp)Stored as decimal(12,4).
parent_vendoridintegerParent vendor, when this record is a location or division of a larger vendor.
parent_vendorstring(30)Vendor code of the parent vendor. Send this or parent_vendorid, not both unless they agree.
taxgroupidintegerTax group applied to this vendor’s purchases.
taxgroupstring(20)Code for the referenced taxgroup, instead of the id.
vendorcodestring(30)Older short vendor code, appended to the display name in parentheses.
salutationstring(20)Salutation for an individual vendor (Mr., Ms., ...).
first_namestring(50)First name, for an individual vendor.
middle_namestring(50)Middle name, for an individual vendor.
name_suffixstring(20)Name suffix for an individual vendor (Jr., III, ...).
vendortypeidintegerReference to vendortypes, by id. Write either this or vendortype.
vendortypestring(100)Code for the referenced vendortype, instead of the id.
default_retainermoneystring(3dp)Stored as decimal(6,3).
currencystring(10)Currency the vendor bills in. Bills and purchase orders for the vendor default to it.
gets1099integer1 when the vendor receives a 1099 at year end.
basevendoridintegerReference to vendors, by id. Write either this or basevendor.
basevendorstring(30)Vendor code of the base vendor. Send this or basevendorid, not both unless they agree.
buyeruseridintegerBuyeruserid. Id only.
buyeruserstring(50)Login name of the buyer. Send this or buyeruserid, not both unless they agree.
default_checkacctidintegerChecking account payments to this vendor default to.
default_checkacctstring(30)Name of the default bank account. Send this or default_checkacctid, not both unless they agree.
default_paymethodintegerDefault payment method for bills: 1 = cash, 2 = check, 3 = credit card, 4 = ACH/EFT; 0 when none is set.
leadbooleanTrue when the record is a prospective vendor entered as a lead (Leads feature) rather than an active vendor.
orderfrom_emailstring(255)Email address purchase orders are sent to.
orderfrom_faxstring(20)Fax number for sending purchase orders.
orderfrom_phonestring(20)Phone number of the ordering contact.
paytonamestring(150)Pay To name printed on checks, when different from the vendor name.
taskstatusidintegerReference to taskstatuses, by id. Write either this or taskstatus.
taskstatusstring(100)Task status name. Send this or taskstatusid, not both unless they agree.
timezoneidintegerReference to timezones, by id. Write either this or timezone.
timezonestring(64)IANA time zone name. Send this or timezoneid, not both unless they agree.
insuranceemailstring(50)Email address of the vendor’s insurance contact, used for certificate-of-insurance tracking.
insuranceemailcommentstring(50)Label describing the insurance email contact.
insurancephonestring(20)Phone number of the vendor’s insurance contact.
insurancephonecommentstring(50)Label describing the insurance phone contact.
paytoemailstring(255)Email address payment remittances are sent to.
excludefrompaymentreportbooleanTrue leaves the vendor off payment reports.
insurancefaxstring(20)Fax number of the vendor’s insurance contact.
insurancefaxcommentstring(50)Label describing the insurance fax contact.
addressverifiedread-onlystring(32)Hash of the address as it stood when it last passed the AvaTax/USPS address check; when it no longer matches the current address the address counts as unverified. Maintained by the verification flow, so it cannot be written through the API.
displaynameread-onlystring(255)STORED GENERATED in the database. Read-only - MySQL computes it, and a value sent here is silently discarded.
displaynamenocoderead-onlystring(255)STORED GENERATED in the database. Read-only - MySQL computes it, and a value sent here is silently discarded.
externalidstring(100)Your own key. Scoped to your company.
When it fails
StatusCodeMeaning
400invalid_requestA required field was missing.
curl -X POST \
  'https://acme.nolapro.com/!/api/v2/vendors' \
  -H 'Authorization: Bearer $NP_TOKEN' \
  -H 'Content-Type: application/json' \
  -H 'Idempotency-Key: your-unique-key' \
  -d '{
    "name": "Example name",
    "orderfromname": "Example orderfromname",
    "paytermsid": 104,
    "paynone": 1,
    "defaultglacctid": 104,
    "defaultglacct": "Example defaultglacct"
}'
Response 201
{
    "name": "Example name",
    "orderfromname": "Example orderfromname",
    "paytermsid": 104,
    "paynone": 1,
    "defaultglacctid": 104,
    "defaultglacct": "Example defaultglacct"
}
GET/vendors/{id} 200404

Retrieve one record.

Requires scope vendors:read.

Parameters
NameInTypeNotes
idrequiredpathintegerThe record id.
includequerystringComma-separated extras to embed. Only custom_fields is available: the extra fields this install has defined on the record. Off by default, and an unrecognised value is refused rather than ignored. See Conventions.
When it fails
StatusCodeMeaning
404not_foundNo record with that id.
curl \
  'https://acme.nolapro.com/!/api/v2/vendors/104' \
  -H 'Authorization: Bearer $NP_TOKEN'
Response 200
{
    "name": "Example name",
    "orderfromname": "Example orderfromname",
    "paytermsid": 104,
    "paynone": 1,
    "defaultglacctid": 104,
    "defaultglacct": "Example defaultglacct"
}
PATCH/vendors/{id} 200404

Update.

Requires scope vendors:write.

Parameters
NameInTypeNotes
idrequiredpathintegerThe record id.
Body
FieldTypeDescription
namestring(30)Last name, for an individual vendor. The display name uses companyname when that is set, otherwise the personal name fields.
idread-onlyintegerNolaPro id.
orderfromnamestring(30)Contact name on the Order From address block - where purchase orders go when ordering differs from the payment address.
paytermsidintegerPaytermsid. Id only - the table this points at is not identifiable from the column name, so there is no human key to send instead.
paynoneinteger1 puts the vendor on payment hold: payment runs set to skip held vendors exclude their bills, and bill lists mark the vendor with *.
defaultglacctidintegerReference to glaccounts, by id. Write either this or defaultglacct.
defaultglacctstring(20)Code for the referenced glaccount, instead of the id.
defaultbilldescriptionstring(50)Description pre-filled on new bills entered for this vendor.
customeraccountstring(20)Your account number with this vendor, printed on payments.
cancelbooleanCancelled. Always a boolean on the wire, whatever integer width the column uses (D23).
entrydateread-onlystringWhen the record was created.
lastchangedateread-onlystringLast modification. Drives modifiedsince.
companynamestring(100)Company name. When set it is the vendor’s display name; otherwise the salutation/first/middle/name/suffix fields are used.
address1string(100)Street address.
address2string(100)Second address line.
mailstopstring(20)Mail stop line printed with the payment address.
citystring(50)City of the payment address.
statestring(20)State of the payment address.
zipstring(15)Postal code.
countrystring(20)Country of the payment address.
phone1string(20)Primary phone.
phone1commentstring(20)Label describing what phone1 reaches (Office, Mobile, ...).
phone2string(20)Additional phone number.
phone2commentstring(20)Label describing what phone2 reaches (Office, Mobile, ...).
phone3string(20)Additional phone number.
phone3commentstring(20)Label describing what phone3 reaches (Office, Mobile, ...).
phone4string(20)Additional phone number.
phone4commentstring(20)Label describing what phone4 reaches (Office, Mobile, ...).
email1string(255)Primary email address.
email1commentstring(20)Label describing what email1 is for.
email2string(255)Secondary email.
email2commentstring(20)Label describing what email2 is for.
websitestring(100)Vendor’s website URL.
orderfrom_companynamestring(100)Company name on the Order From address, when purchase orders go to a different address than payments.
orderfrom_address1string(100)Street address line 1 of the Order From address.
orderfrom_address2string(100)Street address line 2 of the Order From address.
orderfrom_mailstopstring(20)Mail stop line of the Order From address.
orderfrom_citystring(50)City of the Order From address.
orderfrom_statestring(20)State of the Order From address.
orderfrom_zipstring(15)ZIP/postal code of the Order From address.
orderfrom_countrystring(20)Country of the Order From address.
imageread-onlystring(64)Filename of the picture uploaded on the vendor screen. Managed by the file upload, so it cannot be written through the API.
default_cost_per_hourmoneystring(6dp)Stored as decimal(12,6).
vendor_codestring(50)Vendor number, shown as Vendor Code on the vendor screens. Auto-assigned from the company’s next-vendor-code counter when left blank.
vendor_lead_timeintegerLead time in days. New purchase orders default their due date this many days out.
carrierserviceidintegerDefault carrier service (ship method) for this vendor’s purchase orders.
carrierservicestring(100)Code for the referenced carrierservice, instead of the id.
noreturnsinteger1 blocks RMA returns to this vendor.
percent_commissionnumberstring(4dp)Numeric string, 4 decimal places. Not money - do not apply currency rounding.
flat_commissionmoneystring(4dp)Stored as decimal(12,4).
parent_vendoridintegerParent vendor, when this record is a location or division of a larger vendor.
parent_vendorstring(30)Vendor code of the parent vendor. Send this or parent_vendorid, not both unless they agree.
taxgroupidintegerTax group applied to this vendor’s purchases.
taxgroupstring(20)Code for the referenced taxgroup, instead of the id.
vendorcodestring(30)Older short vendor code, appended to the display name in parentheses.
salutationstring(20)Salutation for an individual vendor (Mr., Ms., ...).
first_namestring(50)First name, for an individual vendor.
middle_namestring(50)Middle name, for an individual vendor.
name_suffixstring(20)Name suffix for an individual vendor (Jr., III, ...).
vendortypeidintegerReference to vendortypes, by id. Write either this or vendortype.
vendortypestring(100)Code for the referenced vendortype, instead of the id.
default_retainermoneystring(3dp)Stored as decimal(6,3).
currencystring(10)Currency the vendor bills in. Bills and purchase orders for the vendor default to it.
gets1099integer1 when the vendor receives a 1099 at year end.
basevendoridintegerReference to vendors, by id. Write either this or basevendor.
basevendorstring(30)Vendor code of the base vendor. Send this or basevendorid, not both unless they agree.
buyeruseridintegerBuyeruserid. Id only.
buyeruserstring(50)Login name of the buyer. Send this or buyeruserid, not both unless they agree.
default_checkacctidintegerChecking account payments to this vendor default to.
default_checkacctstring(30)Name of the default bank account. Send this or default_checkacctid, not both unless they agree.
default_paymethodintegerDefault payment method for bills: 1 = cash, 2 = check, 3 = credit card, 4 = ACH/EFT; 0 when none is set.
leadbooleanTrue when the record is a prospective vendor entered as a lead (Leads feature) rather than an active vendor.
orderfrom_emailstring(255)Email address purchase orders are sent to.
orderfrom_faxstring(20)Fax number for sending purchase orders.
orderfrom_phonestring(20)Phone number of the ordering contact.
paytonamestring(150)Pay To name printed on checks, when different from the vendor name.
taskstatusidintegerReference to taskstatuses, by id. Write either this or taskstatus.
taskstatusstring(100)Task status name. Send this or taskstatusid, not both unless they agree.
timezoneidintegerReference to timezones, by id. Write either this or timezone.
timezonestring(64)IANA time zone name. Send this or timezoneid, not both unless they agree.
insuranceemailstring(50)Email address of the vendor’s insurance contact, used for certificate-of-insurance tracking.
insuranceemailcommentstring(50)Label describing the insurance email contact.
insurancephonestring(20)Phone number of the vendor’s insurance contact.
insurancephonecommentstring(50)Label describing the insurance phone contact.
paytoemailstring(255)Email address payment remittances are sent to.
excludefrompaymentreportbooleanTrue leaves the vendor off payment reports.
insurancefaxstring(20)Fax number of the vendor’s insurance contact.
insurancefaxcommentstring(50)Label describing the insurance fax contact.
addressverifiedread-onlystring(32)Hash of the address as it stood when it last passed the AvaTax/USPS address check; when it no longer matches the current address the address counts as unverified. Maintained by the verification flow, so it cannot be written through the API.
displaynameread-onlystring(255)STORED GENERATED in the database. Read-only - MySQL computes it, and a value sent here is silently discarded.
displaynamenocoderead-onlystring(255)STORED GENERATED in the database. Read-only - MySQL computes it, and a value sent here is silently discarded.
externalidstring(100)Your own key. Scoped to your company.
When it fails
StatusCodeMeaning
404not_foundNo record with that id.
curl -X PATCH \
  'https://acme.nolapro.com/!/api/v2/vendors/104' \
  -H 'Authorization: Bearer $NP_TOKEN' \
  -H 'Content-Type: application/json' \
  -H 'Idempotency-Key: your-unique-key' \
  -d '{
    "name": "Example name",
    "orderfromname": "Example orderfromname",
    "paytermsid": 104,
    "paynone": 1,
    "defaultglacctid": 104,
    "defaultglacct": "Example defaultglacct"
}'
Response 200
{
    "name": "Example name",
    "orderfromname": "Example orderfromname",
    "paytermsid": 104,
    "paynone": 1,
    "defaultglacctid": 104,
    "defaultglacct": "Example defaultglacct"
}
DELETE/vendors/{id} 200404

Cancel.

Requires scope vendors:cancel.

Parameters
NameInTypeNotes
idrequiredpathintegerThe record id.
When it fails
StatusCodeMeaning
404not_foundNo record with that id.
curl -X DELETE \
  'https://acme.nolapro.com/!/api/v2/vendors/104' \
  -H 'Authorization: Bearer $NP_TOKEN'
Response 200
{
    "name": "Example name",
    "orderfromname": "Example orderfromname",
    "paytermsid": 104,
    "paynone": 1,
    "defaultglacctid": 104,
    "defaultglacct": "Example defaultglacct"
}
GET/vendors/{id}/form1099 200

1099 form as a PDF

The 1099-MISC for the vendor. Defaults to last tax year. Answers application/pdf, not JSON. Because the body is binary it cannot be carried inside a /batch results array; asking for it there returns 415 not_batchable.

Requires scope vendors:read.

Parameters
NameInTypeNotes
idrequiredpathintegerThe record id.
taxyearquerystringFour-digit tax year. Defaults to last year.
formtypequerystringForm variant, e.g. MISC.
curl \
  'https://acme.nolapro.com/!/api/v2/vendors/104/form1099' \
  -H 'Authorization: Bearer $NP_TOKEN'