SWS WaiveFee Method
Allows you to waive a fee that has been assess to an account, but that has not yet been paid. This will allow you to remove a fee even if it has gone through nightly processing, but it will count towards the waived count or amount set by the site admin in the site rules.
Parameters
Name | DataType | Is Required |
---|---|---|
Amount | Decimal | Required |
Description | The amount of the fee that will be waived. | |
AssessmentID | Long | Required |
Description | The assessment’s ID number. This can be retrieved using the GetAssessments method. It can also be retrieved using the GetRentalLedger method. | |
OrgID | Long | Required |
Description | The organization’s ID number. | |
Reason | String | Optional |
Description | The reason for waiving the fee. | |
RentalID | Long | Required |
Description | The rental item’s ID number. This is returned when using the MakeReservation method or can be searched for using the SearchBy method. | |
SiteID | Long | Required |
Description | The site’s ID number. This can be found using the GetSiteList method. |
Returned Parameters
Name | DataType |
---|---|
Succeeded | Boolean |
Description | Indicates if the fee waiver was successful (“True”) or not (“False”). |
Example
As with every method we need to pass in credentials. We do this with the LookupUser request object.
We’ll assume you’ve got a web reference, let’s name it SWS, in your Visual Studio project. At this point we need to our objects. We’ll need the standard service object, a WaiveFee request object and a WaiveFee response object. We can define and create those like this:
// Create a request and response objects
SWS.WSSoapClient service = new SWS.WSSoapClient();
SWS.WaiveFee_Request request = new SWS.WaiveFee_Request();
SWS.WaiveFee_Response response;
Here’s my sample code of the Request object.
// WaiveFee Request
request.OrgID = 123456;
request.SiteID = 123546;
request.AssessmentID = 123456;
request.RentalID = 123456;
request.Amount = 55.26m;
request.Reason = "Was charged the fee because of a misunderstanding";
Finally we can call the method and pass across the login object and the request object to waive our fee. It’s a good idea to do this in a Try Catch block.
// Call the method that will load the response object
try
{
response = service.WaiveFee(user_request, request);
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
Note that if something goes wrong the service will respond with an exception. You’ll want to take a look at that message returned in that exception so it can be debugged.
For a full list of methods see SWS Methods.