/// <summary> /// List all the payments made by your customer. /// </summary> /// <param name="parameters">The parameters is the dictionary object which is having the filters to refine the list as key,value pairs.<br></br>The possible filters are described below<br></br> /// <table> /// <tr>customer_name<td></td><td>Search payments by customer name.<br></br>Variants: <i>customer_name_startswith</i> and <i>customer_name_contains</i></td></tr> /// <tr><td>reference_number</td><td>Search payments by reference number.<br></br>Variants: <i>reference_number_startswith</i> and <i>reference_number_contains</i></td></tr> /// <tr><td>date</td><td>Search payments by payment made date.<br></br>Variants: <i>date_start, date_end, date_before</i> and <i>date_after</i></td></tr> /// <tr><td>amount</td><td>Search payments by payment amount.<br></br>Variants: <i>amount_less_than, amount_less_equals, amount_greater_than</i> and <i>amount_greater_equals</i></td></tr> /// <tr><td>payment_mode</td><td>Search payments by payment mode.<br></br>Variants: <i>payment_mode_startswith</i> and <i>payment_mode_contains</i></td></tr> /// <tr><td>notes</td><td>Search payments by customer notes.<br></br>Variants: <i>notes_startswith</i> and <i>notes_contains</i></td></tr> /// <tr><td>customer_id</td><td>Search payments by customer id.</td></tr> /// <tr><td>invoice_id</td><td>Search payments by invoice id.</td></tr> /// <tr><td>filter_by</td><td>Filter payments by mode.<br></br>Allowed Values: <i>PaymentMode.All, PaymentMode.Check, PaymentMode.Cash, PaymentMode.BankTransfer, PaymentMode.Paypal, PaymentMode.CreditCard, PaymentMode.GoogleCheckout, PaymentMode.Credit, PaymentMode.Authorizenet, PaymentMode.BankRemittance, PaymentMode.Payflowpro, PaymentMode.Stripe, PaymentMode.TwoCheckout, PaymentMode.Braintree</i> and <i>PaymentMode.Others</i></td></tr> /// <tr><td>search_text</td><td>Search payments by reference number or customer name or payment description.</td></tr> /// <tr><td>sort_column</td><td>Sort the payment list.<br></br>Allowed Values: <i>customer_name, unused_amount, amount, bcy_amount, date, reference_number, account_name</i> and <i>payment_mode</i></td></tr> /// </table> /// </param> /// <returns>CustomerPaymentList object.</returns> public CustomerPaymentList GetCustomerPayments(Dictionary <object, object> parameters) { string address = baseAddress; var responce = ZohoHttpClient.get(address, getQueryParameters(parameters)); return(CustomerPaymentParser.getPaymentList(responce)); }
/// <summary> /// Gets the details of a customer payment. /// </summary> /// <param name="payment_id">The payment_id is the identifier of the customer payment.</param> /// <returns>Customerpayment object.</returns> public CustomerPayment Get(string payment_id) { string address = baseAddress + "/" + payment_id; var responce = ZohoHttpClient.get(address, getQueryParameters()); return(CustomerPaymentParser.getPayment(responce)); }
/// <summary> /// Deletes an existing customer payment. /// </summary> /// <param name="payment_id">The payment_id is the identifier of an existing customer payment.</param> /// <returns>System.String.<br></br>The success message is "The payment has been deleted."</returns> public string Delete(string payment_id) { string address = baseAddress + "/" + payment_id; var responce = ZohoHttpClient.delete(address, getQueryParameters()); return(CustomerPaymentParser.getMessage(responce)); }
/// <summary> /// Update an existing customer payment. You can also modify the amount applied to the invoices. /// </summary> /// <param name="payment_id">The payment_id is the identifier of the customer payment.</param> /// <param name="update_info">The update_info is the Customerpayment object which is having the changes to apply.</param> /// <returns>Customerpayment object.</returns> public CustomerPayment Update(string payment_id, CustomerPayment update_info) { string address = baseAddress + "/" + payment_id; var json = JsonConvert.SerializeObject(update_info); var jsonstring = new Dictionary <object, object>(); jsonstring.Add("JSONString", json); var responce = ZohoHttpClient.put(address, getQueryParameters(jsonstring)); return(CustomerPaymentParser.getPayment(responce)); }
/// <summary> /// Create a payment made by your customer and you can also apply them to invoices either partially or fully. /// </summary> /// <param name="new_customer_payment_info">The new_customer_payment_info is the Customerpayment object which having the info to made payment with date and amount as mandatory attributes.</param> /// <returns>Customerpayment object.</returns> public CustomerPayment Create(CustomerPayment new_customer_payment_info) { string address = baseAddress; var json = JsonConvert.SerializeObject(new_customer_payment_info); var jsonstring = new Dictionary <object, object>(); jsonstring.Add("JSONString", json); var responce = ZohoHttpClient.post(address, getQueryParameters(jsonstring)); return(CustomerPaymentParser.getPayment(responce)); }