Method PostBillInformation

Summary

Returns Tax Bill Information

Remarks

Returns Tax bill info from accounts receivable. It returns a row for each receivable, and then the total amount due along with the account info.

Input Parameters

NameTypeLengthDescription
taxID numeric 9 [Required] Tax Account ID
effectiveDate date 8 [Required] Effective Date, Format=MMDDYYYY. Default to today's date if not provided.
taxYear numeric 4 Tax Year
VINNumber yn 1 VIN Number Y/N. If blank, defaults to 'Y'.
memberName System.String 10 Member Name
rows numeric 4 Number of rows to return. Used for paging. default if not input is 50.
pageNumber numeric 5 Page Number. Used for paging

Example

POST http://localhost/FusionServices/v3/Naviline/Tax/BillInformation

Return Values

NameDescription
C2TAXYEAR Tax Year
C2DLQYR Deliquent year
C2DLQMT Deliquent month
C2DLQDY Deliquent day
C2UNPAID Base Tax Amount
C2PNLT Penalty Amount
C2INT Interest Amount
C2COLF Collection Fee Amount
C2DISC Discount Amount
C2TOTD Total Due
AccountType Account Type. Roll Code description
OwnerName Owner Name
PropertyDescription Property address
CurrentDue Current amount due
PenaltyPaymentAmount Penalty Payment Amount
MemberName Member Name
PageNumber Page number returned. Used with paging.
Rows Number of rows returned
More?YN More records Y/N
ErrorCode 0000 if successful
ErrorMessage details of any error that occurred

Sample Responses

Sample Code

using System.Net;
using Newtonsoft.Json.Linq;

public void MethodName(parms)
{
   string uri = "http://localhost/FusionServices/v3/Naviline/Tax/BillInformation";
   System.Collections.Specialized.NameValueCollection postParms = 
     new System.Collections.Specialized.NameValueCollection(); 
   // Set paramater values
   postParms.Add("taxID",System.Web.HttpUtility.UrlEncode("290359"));

   WebClient req = new WebClient();
   wc.Headers.Add("Content-Type", "application/x-www-form-urlencoded");
   wc.Headers.Set("X-APPID", "YOURID");
   wc.Headers.Set("X-APPKEY", "YOURKEY");

   byte[] responseBytes = wc.UploadValues(new Uri(uri), "POST", postParms);
   string stringResult = Encoding.UTF8.GetString(responseBytes); 
   JObject response = JObject.Parse(stringResult);
   string error = response["OutputParms"]["ErrorCode"].ToString();
   if (error == "0000")
   {
        JArray jRows = (JArray)response["Rows"];
        foreach (JObject row in jRows)
        {
             string C2TAXYEAR = row["C2TAXYEAR"].ToString();
             string C2DLQYR = row["C2DLQYR"].ToString();
             string C2DLQMT = row["C2DLQMT"].ToString();
             string C2DLQDY = row["C2DLQDY"].ToString();
             string C2UNPAID = row["C2UNPAID"].ToString();
             string C2PNLT = row["C2PNLT"].ToString();
             string C2INT = row["C2INT"].ToString();
             string C2COLF = row["C2COLF"].ToString();
             string C2DISC = row["C2DISC"].ToString();
             string C2TOTD = row["C2TOTD"].ToString();
             // TODO - YOUR CODE HERE
        }
   }
}

C# Razor MVC Sample Code

using System;
using System.Linq;
using System.Web;
using System.ComponentModel.DataAnnotations;
using System.Collections.Specialized;
using FusionServiceHelper.Models;

// NOTE: Use the namespace generated when you add the class, so that it is correct.
namespace FusionRazor.Models
{
   public class PostBillInformation
   {
       // Add property for each input param in order to map a field to it
       [Required(ErrorMessage = "Required")]
       [RegularExpression("[0-9]{0,9}", ErrorMessage = "Numeric values only. Must be 9 digits or less. ")]
       public string taxID{get; set;}

       [Required(ErrorMessage = "Required")]
       [RegularExpression("^\\d\\d(0[1-9]|1[012])(0[1-9]|[12][0-9]|3[01])$", ErrorMessage = "Date values only. Format: YYMMDD")]
       public string effectiveDate{get; set;}

       [RegularExpression("[0-9]{0,4}", ErrorMessage = "Numeric values only. Must be 4 digits or less. ")]
       public string taxYear{get; set;}

       [RegularExpression("^[YN]{0,1}$", ErrorMessage = "Must be Y or N.")]
       public string VINNumber{get; set;}

       [RegularExpression("^(?=.{0,10}$).*", ErrorMessage = "Must be 10 characters or less. ")]
       public string memberName{get; set;}

       [RegularExpression("[0-9]{0,4}", ErrorMessage = "Numeric values only. Must be 4 digits or less. ")]
       public string rows{get; set;}

       [RegularExpression("[0-9]{0,5}", ErrorMessage = "Numeric values only. Must be 5 digits or less. ")]
       public string pageNumber{get; set;}

       public PostBillInformation()
       {
           //Set any defaults here
       }
   }
}
@* NOTE: Use Add->View to add the View. *@
@* NOTE: Check the 'Create strongly-typed view checkbox, and select the PostBillInformation class. *@
@* NOTE: Select Edit as the Scaffold template. *@
@* NOTE: Use the @model line that is generated at the top.  Replace the rest with the lines below.
@model FusionRazor.Models.PostBillInformation

@{
   ViewBag.Title = "PostBillInformation";
}

<h2>PostBillInformation</h2>
@using (Html.BeginForm()) {
   @Html.AntiForgeryToken()
   @Html.ValidationSummary(true)
   <fieldset>
   <legend>PostBillInformation</legend>
       <div class="editor-label">
           @Html.LabelFor(model => model.taxID)
       </div>
       <div class="editor-field">
           @Html.EditorFor(model => model.taxID)
           @Html.ValidationMessageFor(model => model.taxID)
       </div>
       <div class="editor-label">
           @Html.LabelFor(model => model.effectiveDate)
       </div>
       <div class="editor-field">
           @Html.EditorFor(model => model.effectiveDate)
           @Html.ValidationMessageFor(model => model.effectiveDate)
       </div>
       <div class="editor-label">
           @Html.LabelFor(model => model.taxYear)
       </div>
       <div class="editor-field">
           @Html.EditorFor(model => model.taxYear)
           @Html.ValidationMessageFor(model => model.taxYear)
       </div>
       <div class="editor-label">
           @Html.LabelFor(model => model.VINNumber)
       </div>
       <div class="editor-field">
           @Html.EditorFor(model => model.VINNumber)
           @Html.ValidationMessageFor(model => model.VINNumber)
       </div>
       <div class="editor-label">
           @Html.LabelFor(model => model.memberName)
       </div>
       <div class="editor-field">
           @Html.EditorFor(model => model.memberName)
           @Html.ValidationMessageFor(model => model.memberName)
       </div>
       <div class="editor-label">
           @Html.LabelFor(model => model.rows)
       </div>
       <div class="editor-field">
           @Html.EditorFor(model => model.rows)
           @Html.ValidationMessageFor(model => model.rows)
       </div>
       <div class="editor-label">
           @Html.LabelFor(model => model.pageNumber)
       </div>
       <div class="editor-field">
           @Html.EditorFor(model => model.pageNumber)
           @Html.ValidationMessageFor(model => model.pageNumber)
       </div>
       <p>
       <input type="submit" value="Submit"/>
       </p>
   </fieldset>

}

@section Scripts {
   @Scripts.Render("~/bundles/jqueryval")
}
using System;
using System.Collections.Specialized;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using FusionServiceHelper.Models;

// NOTE: Replace 'MyController' with the name of your controller.

// 
// GET: /MyController/PostBillInformation
public ActionResult PostBillInformation()
{
   // Create a new instance of the model to pick up any default values.
   PostBillInformation model =  new PostBillInformation();

   // pass model to set to default values
   // NOTE: Change 'MyFolderPath' to the path to the .cshtml file.
   return View("~/Views/MyFolderPath/PostBillInformation.cshtml", model);
}

// 
// POST: /MyController/PostBillInformation
[HttpPost]
public ActionResult PostBillInformation(FormCollection collection)
{
   string url = "v3/Naviline/Tax/BillInformation";
   // Get the value from each input field
   NameValueCollection inputParms = new NameValueCollection();
   inputParms.Add("taxID", collection["taxID"]);
   inputParms.Add("effectiveDate", collection["effectiveDate"]);
   inputParms.Add("taxYear", collection["taxYear"]);
   inputParms.Add("VINNumber", collection["VINNumber"]);
   inputParms.Add("memberName", collection["memberName"]);
   inputParms.Add("rows", collection["rows"]);
   inputParms.Add("pageNumber", collection["pageNumber"]);

   try
   {
       // Send the request
       FusionServiceRequest request = new FusionServiceRequest();
       FusionServiceResult result = request.Post(url, inputParms);

       return View("Result", result);
   }
   catch(Exception e)
   {
       HandleErrorInfo info = new HandleErrorInfo(e, "MyController", "PostBillInformation");
       return View("Error", info);
   }
}