2017-10-02 8 views
0

XeroアカウンティングにXero.Apiを使用して、私は費用を承認済みから有料に更新したいと考えています。現時点では、私は次のエラーを取得しています:Xero Api - 費用としての支払額

はを通じて行うことが可能。これは、「無効なステータスの変更ステータスを持つ経費請求が 『AUTHORIZED』、 『支払った』ステータスを持っているように更新することはできません。」 APIの場合は、これが処理されるように最小フィールドの変更は何ですか?

多くのありがとうございます。誰不思議のために

public static void SetExpensePaid(Xero.Api.Example.Applications.Private.Core api,List<Guid> guids) 
    { 
     var account = api.Accounts.Find(); 
     var bank = account.Where(x => x.Name == "Bank").FirstOrDefault(); 
     foreach (var g in guids) 
     { 
      var exp =api.ExpenseClaims.Find(g); 
      var amount = exp.AmountDue; 
      exp.AmountPaid = amount; 
      exp.AmountDue = 0; 
      exp.Status = Xero.Api.Core.Model.Status.ExpenseClaimStatus.Paid; 
      Payment payment = new Payment() 
      { 
       Account = bank, 
       BankAmount = (decimal?)amount, 
       Date = DateTime.Today, 
       IsReconciled = false, 
       Amount = (decimal?)amount 
      }; 
      api.Payments.Create(payment); 

      exp.Payments.Add(payment); 
      api.ExpenseClaims.Update(exp); 
     } 

    } 
+0

メッセージを編集して、試したコードを追加してください。 – LW001

答えて

2

は、.... Xeroなどからの応答を得ることができた

通常は、請求書またはクレジットメモのために、あなたがそれらをマークするために支払いのエンドポイントを使用して、それらに完全な支払いを行う必要があり

PAIDとして。

残念ながら、現時点でXero API経由で経費請求を行うことはできません。お支払いはXeroアプリで行う必要があります。

https://developer.xero.com/documentation/api/expense-claims#POST

ので、現時点では行うことはできません。

関連する問題