ProBusinessTools
The following operations are supported. For a formal definition, please review the Service Description.
-
AddCustomerSchedule
Recurring Billing Module Users Only: This method allows you to add a customer billing schedule. Within the AddCustScheduleRequest the following properties are required: InternalCustPlanID, AccountNumber, StartDate. Method returns True or False based on successful addition. -
AddExtraTransaction
Recurring Billing Module Users Only: This method allows you to add a transaction to the customer’s scheduled billing statement OR as a "one-off" transaction against the customer’s account number. This is determined by what you provide in the AddTransactionRequest structure. If you provide a value in the StatementID property then the transaction will be appended to the statement corresponding with that ID number. If you provide no StatementID and have an AccountID, the transaction will be added to the table as a "one-off" transaction. Method returns True or False based on successful addition. -
AddNoteToOrder
This method will add a user note to the order based on the job number provided. If this order is attached to a client or a subcontractor this note will be reflected in those ProBusinessTools accounts as well. -
AddOrderPartsToOrder
This method replaces the current parts attached to the order with provided parts. This method also requires that you provide a complete OrderInfo object from GetOrderInfoFromJobNumber() (or similar order search method). Within that OrderInfo object you can add your parts and re-submit that OrderInfo object to the method. If a part is found in your parts database, it will use that information. If the part is not found in your parts database then the method will use the information you have provided in the OrderPartsInfo structure. The method will return a True or False based on successful addition of the parts. - AddStaff
-
AddWorkOrder
This method allows you to insert a complete work order into your ProBusinessTools account. The parameter UpdateIfOrderAlreadyExists allows you to update an existing order with the supplied data. This relationship is based on the job number or they ordered id supplied in the OrderInfo structure. -
AssignEquipment
This method allows you to assign a status to a specific piece of serialized equipment. You can set the status (i.e. location) of the equipment to warehouse, installer or other of your choosing. -
AssignOrderTechOrSub
This method allows you to assign an order. You must have at least one of the following properties set: AssignToTeamID or AssignToSubID but not both unless you have AssigntToSubsTech set to true. In which case, the system will first assign the order to the subcontractor whose ID you have provided and then it will assign the order to the technician in that subcontractor with the ID provided. -
CancelAppointment
This method will allow you to cancel a previously scheduled appointment. Required is only the Job Number. You can, in the myOptionalFields structure, request to have the order un-assigned from its current subcontractor or technician. As well as entering a cancelled reason and optional status of the order. This method will return an updated OrderInfo object. -
CancelAppointmentByOrderId
This method will allow you to cancel a previously scheduled appointment. Required is only the orderId. You can, in the myOptionalFields structure, request to have the order un-assigned from its current subcontractor or technician. As well as entering a cancelled reason and optional status of the order. This method will return an updated OrderInfo object. -
CheckAvailability
Deprecated (CheckAvailabilityNthTier suggested): This method allows you to create a broad view of your team’s or your subcontractor’s availability on a variable of criteria. This method does not show your subcontractor’s subcontractor availability. This method is NOT for scheduling. -
CheckAvailabilityNthTier
This method allows you to create a broad view of your team’s or subcontractors TOTAL availability on a variable of criteria. This method WILL show you your subcontractor’s subcontractor availability to the nth degree. This method is NOT for scheduling. -
CreatePayReport
Creates a completed pay report based on search criteria supplied. userType is "installer" or "subcontractor" searchCriteria.Status allows WildCard(%) search -
CreateTeamPayReport
Deprecated use CreatePayReport : Creates a completed pay report based on search criteria supplied. -
CustomerAccountReceivableSearch
This method returns a dataset containing the following: internalCustID, CustomerIDNumber, First Name, Last Name, State , Type, Type2, Status, Status2, Total Bill, Amount Paid, and Balance Due based on the criteria supplied. -
CustomerSearch
This method allows you to receive an array of customer’s information based on search criteria. -
DoesJobNumberExist
This method returns a Boolean value (True or False) based on the existence of a job number. -
DoesOrderIDExist
This method returns a Boolean value (True or False) based on the existence of a specific order id. - EditStaff
- FindCurrentStatus
-
ForceAppointment
This method allows you to force an order to a specific team and date time. If the order currently exists as scheduled this method will change the scheduled date to the forced date/time. If the order is not currently scheduled the method will force into the date/time slot provided. -
GetAccountNumbers
This method will return an object array of account numbers /customer ID numbers based on the original criteria. You can only search off of one of the properties in the AccountNumbers structure. -
GetAllCalendars
Deprecated (GetAllCalendarsNthTier suggested): This method will return a DataSet of available schedule nodes used for scheduling an order. You must supply an order object that was derived from GetOrderInfoByJobNumber (). This method only returns your team’s schedule and one level of your subcontractor’s calendar. This does not show your subcontractor’s subcontractor schedule nodes. -
GetAllCalendarsNthTier
This method will return a DataSet of available schedule nodes used for scheduling an order. You must supply an order object that was derived from GetOrderInfoByJobNumber() (or a similar order search method that returns a valid orderInfo structure. This method will return all available schedule nodes to the nth degree. -
GetAllChartOfAccounts
Retrieves a List(Of ChartOfAccounts) with all items active and archived - GetAvailability
-
GetBankList
Retrieves a List(Of BankingInfo) with all active Bank types -
GetBillPlanList
Recurring Billing Module Users Only: This method returns an object array of "Bill Plans" based on search elements provided via the SearchBillPlanRequest structure. -
GetChartOfAccounts
DEPRECATEDThis method returns an object array of your current Chart of Accounts. -
GetCustomAppSettings
This method will return the value saved in your custom application setting based on the appName & appSetting properties you provide. -
GetCustomerBalanceDue
Recurring Billing Module Users Only: This method returns an object with Customer ID, Work Order Balance, Invoice Balance, and Total Balance based on the customer id you provide. -
GetEquipmentStatusList
This method returns an object array of all available serialized equipment statuses inside of the EqupmentStatusResponse structure. -
GetFullZipCodeCoverage
This method returns the full zip code coverage of your teams/subs. -
GetIssueNotes
Gets an array of the associated notes for a single issue ticket. -
GetJobTypeByName
This method returns a NON-typed array of all SKU’s with the specific job type name supplied. -
GetJobTypeCustomQuestions
This method returns an object array of all current custom questions attached to the job type (or job type 2) supplied. -
GetJobTypeInfo
This method returns a NON-typed array of all SKU’s with the specific job type name supplied. -
GetLocationByCriteria
This method allows you to find a location in your ProBusinessTools account based on the criteria provided. -
GetNextJobNumberInSystem
This method returns you the next available numeric job number available in the system. This number is not held by any status and if not used could be lost to another request. -
GetOneOffTransactions
Recurring Billing Module Users Only: This method returns an object array of all "one off" transactions based off of the CustomerIDNumber or Account Number provided in the SearchByRequest structure. -
GetOrderInfoFromJobNumber
This method will return an OrderInfo object based on the job number provided. This object does not contain any notes on the order. Notes can be acquired for this order by using GetOrderNotesByJobNumber(). -
GetOrderInfoOnCriteria
This method returns you an object array of the OrderInfo structure. The parts for the order are not including with the structures provided. -
GetOrderNotesByJobNumber
This method returns an object array of all the user notes for a specific job number. You can instruct the method to include system notes for the order as well by passing a true value to the includeSystemNotes parameter. -
GetOrderPartsByJobNumber
This method returns an object array of the OrderPartsInfo structure attached to a specific work order. -
GetPartInfo
The method returns a specific PartInfo object from the Part SKU provided as a parameter. -
GetQandAQuestions
This method returns the Q&A questions and answers (if applicable) for a specific order. - GetSchedules
-
GetSubcontractorInfo
This method will return subcontractor custom object for the internal id supplied -
GetTeamByCriteria
This method searches for teams based on supplied criteria and returns the dataset with any teams that match said criteria. -
GetTeamInfo
This method will return a custom object with all the information for the team id provided. -
GetTechIDByName
This method will return a string array of id’s from a specific name provided as a parameter. -
GetTechIDByPayrollID
This method returns the ID of the technician based on the payrollID provided as a parameter. -
GetTimeSlotDefinitions
This method returns an object array of the CompanyTimeSlotInfo() structure. This structure will display the time slot information currently setup for this account. -
GetTotalTimeFactorForOrder
This method returns the Time Factor for the specific order provided as a parameter. -
InsertIssueTicket
This method is used for inserting a new issue ticket into ProBusinessTools. Along with the standard webServiceKey you need to include a IssueTicket. TicketID, OpenedBy, OpenedByDate will be set to automatic values.
Any value that would normally be a dropdown list will be validated to one of the values in that selection.The method will return the new ticket. -
InsertNewCustomer
This method allows you to add a customer to your ProBusinessTools account. This can be done independently of InsertNewOrders(). -
InsertNewLocation
This method allows you to insert the basic information to properly setup a new location in your ProBusinessTools account. It returns the new locations internal id. -
InsertNewOrders
This method allows you to insert a complete work order into your ProBusinessTools account. The parameter UpdateIfOrderAlreadyExists allows you to update an existing order with the supplied data. This relationship is based on the job number or they ordered id supplied in the OrderInfo structure. -
InsertNewTeam
This method allows you to insert the basic information to properly setup a new team member into your ProBusinessTools account. You will need to log in to you ProBusinessTools account to add a coverage area to your team. -
InsertRecurringBillingTransaction
Recurring Billing Module Users Only: This method allows you to insert a new singular billing transaction to a specific account number. - LookupSecurityRole
- LookupStaff
-
OrderSearchByCustomerID
This method will return you an object array of the OrderInfo structure linked via the internal customer id number. You can find this number from a corresponding order’s CustomerInfo sub structure. -
PaymentReconciliationDetail
Recurring Billing Module Users Only: This method returns an object array of ReconciliationDetail within the ReconciliationDetailResponse structure detailing each payment made to a specific statement or work order. You can specify a date range of payments along with filtering based on the collectionAgent or customerIDNumber. -
PaymentReconciliationTotal
Recurring Billing Module Users Only: This method returns the sum of payments made for work orders and statements, respectfully, based on criteria provided. -
PayrollReportSearch
This method searches for Payrolls based on supplied criteria and returns the dataset with any items that match said criteria.
Note: PaidOutDateRange is REQUIRED and has to be a range of 3 months or less -
RecurringBillingBalanceTransfer
This tool is designed to transfer existing balances from previously paid statements that were paid in excess to unpaid statements. Do not restart until you receive a response from your original request. -
RecurringBillingCreateStatements
Creates recurring billing statements. This can be a long running process. Do not restart until you receive a response from your original request. -
RecurringBillingStatementPayment
Recurring Billing Module Users Only: This method allows the user to create a payment to either a specific statement, a master statement or a specific set of statements based on a customer id. In the statement property, a master statement is preceded by an "X" whereas a payment based on customer id number will be preceded with cid:. To pay a specific statement simply enter the statement number (id) into the statement property. -
RecurringBillingVoidPayment
Recurring Billing Module Users Only: This method will allow you to void a payment based on the payment number and payment date. This process cannot be undone. -
SearchCustomerSchedules
Recurring Billing Module Users Only: This method Returns an object array of your customer billing schedules. -
SearchEquipment
This method returns an object array of the structure EquipmentInfo within the structure EquipmentResponse based on a specific set of criteria. -
SearchIssueTickets
Gets an array of issuetickets based on a set of search criteria.If you wish to search for all staff or all teams then set the desired item's type to 'staff' or 'teams' respectively and leave the name blank or use '[ALL]' -
SearchOrders
This method returns an object array of the OrderSearchResults. This structure shows some basic information of the orders queried by a set of criteria supplied. -
SearchParts
This method returns an object array of the PartsInfo structure based on a specific set of criteria. -
SearchRecurringBillingStatements
Recurring Billing Module Users Only: This method returns three separate data tables with in the StatementSearchResponse structure. The first table consisting of general statement data. The second consisting of detailed multi-record data related to items in the first table. The third table consisting of payment data related to the first table. -
SearchRecurringBillingTransactions
Recurring Billing Module Users Only: This method returns an object array of the rbTransactionSearchResponse structure within the TransactionSearchResults structure. -
SearchWorkOrderInvoices
This method returns an object array of the WOAccountingInfo structure within the WorkOrderInvoiceSearchResponse structure. All client and customer invoices previously created will be itemized in this return. -
SendRandomEmail
Send emails to random staff members that have the status provided. Emailbody must be formated in HTML. fromEmail will be DoNotReply@probusinesstools.com if an empty string is passed. sendcopyto will not be used if empty string is passed -
SetMyAppointment
This method allows the user to set an appointment in ProBusinessTools for a specific order based on information selected from the GetAllCalendarsNthTier() web method result set. You must retrieve a complete OrderInfo object from the GetOrderInfoFromJobNumber() method (or similar) to send to this method.
The following represents the data mapping between the GetAllCalendarsNthTier() result set and the ScheduleToInfo structure that is mandatory:GetAllCalendarsNthTier ScheduleToInfo ScheduleID ScheduleID empType ScheduleType empID ScheduleTypeID - SetStatus
-
SetStatus_old
DEPRECATED: Use SetStatus instead. -
TerminateCustomerSchedule
Recurring Billing Module Users Only: This method allows the user to terminate (based on date) a customer billing schedule. The return will be true if the termination was successful. -
UnAssignOrder
This method will un-assign an order from a team or subcontractor. You must first verify that the order is not scheduled. This method requires a complete OrderInfo object. -
UpdateCustomQuestions
This method allows you to update your custom questions on orders/customers/employees. The only data required in the Question structure is ID and SelectedAnswer. Use on/off as the value for checkboxes. It will return a string based on the successful update of the data. -
UpdateCustomerInfo
This method simply allows you to update information for a specific customer. It is recommended that you retrieve the current CustomInfo structure from a valid OrderInfo object, manipulate the properties you want changed and then submit that structure to this method. The method will echo the updated CustomerInfo structure. -
UpdateIssueTicket
Allows user to update an issue ticket. Returns the updated ticket information. -
UpdateLocation
This method allows you to update a location in your ProBusinessTools account. It is recommended that you retrieve the current LocationInfo structure, manipulate the properties you want changed and then submit that structure to this method. The method will echo the updated LocationInfo structure. -
UpdatePartsToOrder
Terminated: This method is no longer in use. -
UpdateQuestions
This method allows you to update your prescreening questions. It will return a Boolean value (True or False) based on the successful update of the data. -
UpdateShipping
This method allows you to update the shipping information on a work order. -
UpdateTeam
This method allows you to update a team member in your ProBusinessTools account. You will need to log in to you ProBusinessTools account to add a coverage area to your team. It is recommended that you retrieve the current TeamInfo structure, manipulate the properties you want changed and then submit that structure to this method. The method will echo the updated TeamInfo structure. - UpdateWorkOrderCustomQuestions
-
UpdateWorkOrderStatusByJobNumber
DEPRECATED: Use UpdateWorkOrderStatusByJobNumber_new. This method will allow you to update the primary order status based on the job number provided. -
UpdateWorkOrderStatusByJobNumber_new
This method will allow you to update the primary order status based on the job number provided. -
UpdateWorkOrders
This method allows you to update a work order. You must first retrieve an OrderInfo object from a method like GetOrderInfoFromJobNumber(). You then can manipulate this object with your changes then send this new manipulated OrderInfoobject to this method. Customer and part information will also be updated based on the data you submit. -
UploadImage
This method accepts serialized images and stores them on PBT Servers attached to orders. -
WorkOrderPayment
This method allows you to enter a customer payment to a specific work order. In the WorkOrderPaymentRequest structure you must include a valid OrderID.