|
|
@@ -161,14 +161,22 @@ public class ReceiptXeroPoster : IXeroPoster<Receipt, ReceiptXeroPosterSettings>
|
|
|
{
|
|
|
throw new MissingSettingException<ReceiptXeroPosterSettings>(x => x.Account);
|
|
|
}
|
|
|
- else
|
|
|
+ else if(AccountXeroUtils.GetAccount(ConnectionData, Settings.Account).Get(out var account, out var error))
|
|
|
{
|
|
|
xeroReceipt.Account ??= new();
|
|
|
- xeroReceipt.Account.Code = Settings.Account;
|
|
|
+ xeroReceipt.Account.AccountID = account.AccountID;
|
|
|
+ xeroReceipt.Account.Code = account.Code;
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ CoreUtils.LogException("", error);
|
|
|
+ results.AddFailed(receipt, error.Message);
|
|
|
+ continue;
|
|
|
}
|
|
|
|
|
|
xeroReceipt.Date = receipt.Date;
|
|
|
- xeroReceipt.Details = receipt.Notes.Truncate(18);
|
|
|
+ // xeroReceipt.Details = receipt.Notes.Truncate(18);
|
|
|
+ xeroReceipt.Reference = receipt.Notes.Truncate(12);
|
|
|
|
|
|
if(billReceipts.TryGetValue(receipt.ID, out var receiptInvoices))
|
|
|
{
|
|
|
@@ -182,10 +190,11 @@ public class ReceiptXeroPoster : IXeroPoster<Receipt, ReceiptXeroPosterSettings>
|
|
|
// BankAccountNumber
|
|
|
|
|
|
line.Amount = bill.Amount;
|
|
|
- line.Details = receipt.Notes;
|
|
|
+ // line.Details = receipt.Notes;
|
|
|
|
|
|
if(Guid.TryParse(bill.Invoice.PostedReference, out var xeroInvoiceID))
|
|
|
{
|
|
|
+ line.Invoice ??= new();
|
|
|
line.Invoice.InvoiceID = xeroInvoiceID;
|
|
|
}
|
|
|
else
|