private static void Main() { var settings = LoadSettings(); var serverUri = new Uri(settings.ServerUri); var serverCredential = new NetworkCredential(settings.AccountUsername, settings.AccountPassword); var userCredential = new IntacctUserCredential(settings.CompanyName, settings.Username, settings.Password); var client = new IntacctClient(serverUri, serverCredential); var session = client.InitiateApiSession(userCredential).Result; Console.WriteLine($"Session created, ID: {session.SessionId}, Endpoint: {session.EndpointUri}"); // create customer var customer = new IntacctCustomer("C0021", "MT Test " + Guid.NewGuid()) { ExternalId = "1337", PrimaryContact = new IntacctContact(Guid.NewGuid().ToString(), "Random") }; var response = client.ExecuteOperations(new[] { new CreateCustomerOperation(session, customer) }, CancellationToken.None).Result; Console.WriteLine($"Customer created: {response.Success}"); if (!response.Success) { return; } // retrieve customer response = client.ExecuteOperations(new[] { new GetEntityOperation <IntacctCustomer>(session, customer.Id) }, CancellationToken.None).Result; Console.WriteLine($"Customer retrieved: {response.Success}"); if (!response.Success) { return; } // create invoice var invoice = new IntacctInvoice(customer.Id, new IntacctDate(1, 1, 2015), new IntacctDate(1, 1, 2015)); var lineItem = IntacctLineItem.CreateWithAccountNumber("2000", 15); lineItem.Memo = "Services rendered"; invoice.Items.Add(lineItem); response = client.ExecuteOperations(new[] { new CreateInvoiceOperation(session, invoice) }, CancellationToken.None).Result; Console.WriteLine($"Invoice created: {response.Success}"); }
public CreateCustomerOperation(IIntacctSession session, IntacctCustomer customer) : base(session, "create_customer", "key") { _customer = customer; }