UpdateBill
Updates one or more fields on an existing customer bill.Input Properties
UpdateBillRequest
Output Properties
UpdateBillResponse
Http Request
PATCH https://yourcompany-api.exigo.com/3.0/bill HTTP/1.1 Content-Type: application/json Authorization: Basic base64Encoded(yourlogin@yourcompany:yourpassword){ "vendorBillID": 1, "customerID": 1, "customerKey": "1", "warehouseID": 1, "currencyCode": "usd", "datePaymentDue": "2025-10-30T00:00:00-05:00", "reference": "", "dateReceived": "2025-10-30T00:00:00-05:00", "amount": null, "isOtherIncome": true, "notes": "", "payableType": 1, "taxablePeriodTy": 1, "taxablePeriodID": 1 }
Http Response
HTTP/1.1 200 OK Content-Type: application/json; charset=utf-8 Content-Length: length{ "result": null }
Soap Request
The following is a sample SOAP 1.1 request and response. The placeholders shown need to be replaced with actual values.
POST /3.0/ExigoApi.asmx HTTP/1.1 Host: lifewave-api.exigo.com Content-Type: text/xml; charset=utf-8 Content-Length: length SOAPAction: "https://api.exigo.com/UpdateBill" <?xml version="1.0" encoding="utf-8"?> <soap:Envelope
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Header> <ApiAuthentication xmlns="http://api.exigo.com/"> <LoginName>string</LoginName> <Password>string</Password> <Company>string</Company> <Identity>string</Identity> <RequestTimeUtc>dateTime</RequestTimeUtc> <Signature>string</Signature> </ApiAuthentication> </soap:Header> <soap:Body> <UpdateBillRequest xmlns="http://api.exigo.com/"> <VendorBillID>int</VendorBillID> <CustomerID>int</CustomerID> <CustomerKey>string</CustomerKey> <WarehouseID>int</WarehouseID> <CurrencyCode>string</CurrencyCode> <DatePaymentDue>dateTime</DatePaymentDue> <Reference>string</Reference> <DateReceived>dateTime</DateReceived> <Amount>decimal</Amount> <IsOtherIncome>boolean</IsOtherIncome> <Notes>string</Notes> <StatusType>int</StatusType> <PayableType>int</PayableType> <TaxablePeriodTy>int</TaxablePeriodTy> <TaxablePeriodID>int</TaxablePeriodID> <VendorBillTy>int</VendorBillTy> </UpdateBillRequest> </soap:Body> </soap:Envelope>
Soap Response
HTTP/1.1 200 OK Content-Type: text/xml; charset=utf-8 Content-Length: length <?xml version="1.0" encoding="utf-8"?> <soap:Envelope
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Body> <UpdateBillResult xmlns="http://api.exigo.com/" /> </soap:Body> </soap:Envelope>
C# Rest Client
Install Nuget package Exigo.Api.Client
try
{
    //Create Api Client
    var api = new ExigoApiClient("yourcmpany", "yourlogin", "yourpassword");
 
    //Create Request
    var req = new UpdateBillRequest();
 
    req.VendorBillID = 1;           //Unique numeric identifier for bill record.
    req.CustomerID = 1;             //Unique numeric identifier for customer record.
    req.CustomerKey = "1";          //Unique alpha numeric identifier for customer record. Exeption will occur if CustomerID & CustomerKey are provided
    req.WarehouseID = 1;            //Unique location for orders
    req.CurrencyCode = "usd";
    req.DatePaymentDue = DateTime.Today;
    req.Reference = "1";
    req.DateReceived = DateTime.Today;
    req.Amount = 1;
    req.IsOtherIncome = true;
    req.Notes = "1";
    req.PayableType = 1;
    req.TaxablePeriodTy = 1;
    req.TaxablePeriodID = 1;
 
    //Send Request to Server and Get Response
    var res = await api.UpdateBillAsync(req);
 
    //Now examine the results:
}
catch (Exception ex)
{
    Console.WriteLine("Error: " + ex.Message);
}
C# Soap Client
try
{
    //Create Main API Context Object
    ExigoApi api = new ExigoApi();
 
    //Create Authentication Header
    ApiAuthentication auth = new ApiAuthentication();
    auth.LoginName = "yourLoginName";
    auth.Password = "yourPassword";
    auth.Company = "yourCompany";
    api.ApiAuthenticationValue = auth;
 
    //Create Request
    UpdateBillRequest req = new UpdateBillRequest();
 
    req.VendorBillID = 1;           //Unique numeric identifier for bill record.
    req.CustomerID = 1;             //Unique numeric identifier for customer record.
    req.CustomerKey = "1";          //Unique alpha numeric identifier for customer record. Exeption will occur if CustomerID & CustomerKey are provided
    req.WarehouseID = 1;            //Unique location for orders
    req.CurrencyCode = "usd";
    req.DatePaymentDue = DateTime.Today;
    req.Reference = "1";
    req.DateReceived = DateTime.Today;
    req.Amount = 1;
    req.IsOtherIncome = true;
    req.Notes = "1";
    req.PayableType = 1;
    req.TaxablePeriodTy = 1;
    req.TaxablePeriodID = 1;
 
    //Send Request to Server and Get Response
    UpdateBillResponse res = api.UpdateBill(req);
 
    //Now examine the results:
}
catch (Exception ex)
{
    Console.WriteLine("Error: " + ex.Message);
}
VB.Net
Try
    'Create Main API Context Object
    Dim api as new ExigoApi()
 
    'Create Authentication Header
    Dim auth as new ApiAuthentication()
    auth.LoginName = "yourLoginName"
    auth.Password = "yourPassword"
    auth.Company = "yourCompany"
    api.ApiAuthenticationValue = auth
 
    'Create Request
    Dim req as new UpdateBillRequest()
 
    req.VendorBillID = 1
    req.CustomerID = 1
    req.CustomerKey = "1"
    req.WarehouseID = 1
    req.CurrencyCode = "usd"
    req.DatePaymentDue = DateTime.Today
    req.Reference = "1"
    req.DateReceived = DateTime.Today
    req.Amount = 1
    req.IsOtherIncome = true
    req.Notes = "1"
    req.PayableType = 1
    req.TaxablePeriodTy = 1
    req.TaxablePeriodID = 1
 
    'Send Request to Server and Get Response
    Dim res As UpdateBillResponse = api.UpdateBill(req)
 
    'Now examine the results:
Catch ex As Exception
    Console.WriteLine("Error: " & ex.Message)
End Try
PHP
Note: PHP is not officially supported.<?php
try
{
    //Setup the SoapClient and Authentication
    $api = new SoapClient("http://api.exigo.com/3.0/ExigoApi.asmx?WSDL");
    $ns = "http://api.exigo.com/";
    $auth = array()
    $auth["LoginName"] = new SoapVar("yourLoginName",XSD_STRING,null,null,null,$ns);
    $auth["Password"] = new SoapVar("yourPassword",XSD_STRING,null,null,null,$ns);
    $auth["Company"] = new SoapVar("yourCompany",XSD_STRING,null,null,null,$ns);
    $headerBody = new SoapVar($auth, SOAP_ENC_OBJECT);
    $header = new SoapHeader($ns, 'ApiAuthentication', $headerBody);
    $api->__setSoapHeaders(array($header));
 
    //Create Request
 
    $req->VendorBillID = 1;
    $req->CustomerID = 1;
    $req->CustomerKey = "1";
    $req->WarehouseID = 1;
    $req->CurrencyCode = "usd";
    $req->DatePaymentDue = 1;
    $req->Reference = "1";
    $req->DateReceived = 1;
    $req->Amount = 1;
    $req->IsOtherIncome = 1;
    $req->Notes = "1";
    $req->PayableType = 1;
    $req->TaxablePeriodTy = 1;
    $req->TaxablePeriodID = 1;
 
    //Send Request to Server and Get Response
    $res = $api.UpdateBill($req);
 
    //Now examine the results:
}
catch (SoapFault $ex)
{
    echo "Error: ", $ex->getMessage();
}
?>
Java
Note: Java is not officially supported.try
{
    //Create Main API Context Object
    ExigoApi api = new ExigoApi();
 
    //Create Authentication Header
    ApiAuthentication auth = new ApiAuthentication();
    auth.setLoginName("yourLoginName");
    auth.setPassword("yourPassword");
    auth.setCompany("yourCompany");
    api.setApiAuthenticationValue(auth);
 
    //Create Request
    UpdateBillRequest req = new UpdateBillRequest();
 
    req.setVendorBillID(1);
    req.setCustomerID(1);
    req.setCustomerKey("1");
    req.setWarehouseID(1);
    req.setCurrencyCode("usd");
    req.setDatePaymentDue(1);
    req.setReference("1");
    req.setDateReceived(1);
    req.setAmount(1);
    req.setIsOtherIncome(1);
    req.setNotes("1");
    req.setPayableType(1);
    req.setTaxablePeriodTy(1);
    req.setTaxablePeriodID(1);
 
    //Send Request to Server and Get Response
    UpdateBillResponse res = api.getExigoApiSoap().updateBill(req, auth);
 
    //Now examine the results:
}
catch (Exception ex)
{
    System.out.println("Error: " + ex.getMessage());
}