Link

Update Invoice

To update an Invoice, pass the values to Invoice wrapper along with InvoiceId (Xero identifier) and assign it to request.xeroInvoice and then call the method BreadwinnerAPI.call().

Sample Code

try{
    bw_xero_api02.BreadwinnerAPI.RequestObject req = new  bw_xero_api02.BreadwinnerAPI.RequestObject();
    List<bw_xero_api02.Invoice> xeroInvoicesList = new List<bw_xero_api02.Invoice>();
    bw_xero_api02.Invoice xeroInvoice = new bw_xero_api02.Invoice ();
    xeroInvoice.InvoiceID = '5eac31f6-a05f-4a84-b3aa-47154c82afca'; // Required 
    xeroInvoice.DueDate = string.valueof(system.today()+30);
    bw_xero_api02.Invoice.LineItemWrapper invoiceLineItem = new bw_xero_api02.Invoice.LineItemWrapper();
    invoiceLineItem.ItemCode = ''; 
    invoiceLineItem.Description ='li desc';
    invoiceLineItem.UnitAmount = 500;
    invoiceLineItem.Quantity = 3;
    invoiceLineItem.AccountCode = '200';
    list<bw_xero_api02.Invoice.LineItemWrapper> invoiceLineItemsList = new list<bw_xero_api02.Invoice.LineItemWrapper>();
    invoiceLineItemsList.add(invoiceLineItem);
    xeroInvoice.LineItems = invoiceLineItemsList;
    xeroInvoice.ClientId = '39efa556-8dda-4c81-83d3-a631e59eb6d3';
    xeroInvoicesList.add(xeroInvoice);
    req.xeroInvoice = xeroInvoicesList;


    bw_xero_api02.BreadwinnerAPI.ResponseObject res =  bw_xero_api02.BreadwinnerAPI.call('updateInvoice', req);
    if(res.errors.size()>0){
        for(bw_xero_api02.BreadwinnerAPI.Error er :res.errors){
            System.debug(er); 
        }
    }
    system.debug('Updated Invoice' +res.xeroInvoices);
}catch(Exception ex){
    System.debug('Exception occurred while creating customers in Stripe.'+ex.getStackTraceString());
}