| Required permission: | CreatePayments | 
| POST | /Dynamics/CreateSale/{regent_id} | 
|---|
using System;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using ServiceStack;
using ServiceStack.DataAnnotations;
using regis.ClassLibrary.Requests;
namespace regis.ClassLibrary.Requests
{
    public partial class FinanceCreateSaleItemsRequest
    {
        public virtual decimal amount { get; set; }
        public virtual string code { get; set; }
    }
    public partial class FinanceCreateSaleRequest
    {
        public FinanceCreateSaleRequest()
        {
            sale_items = new List<FinanceCreateSaleItemsRequest>{};
        }
        public virtual int regent_id { get; set; }
        public virtual decimal amount { get; set; }
        public virtual string code { get; set; }
        public virtual string rebate_code { get; set; }
        public virtual decimal? rebate_amount { get; set; }
        public virtual string payment_id { get; set; }
        public virtual string reporting_term { get; set; }
        public virtual List<FinanceCreateSaleItemsRequest> sale_items { get; set; }
    }
}
C# FinanceCreateSaleRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /Dynamics/CreateSale/{regent_id} HTTP/1.1 
Host: data.regent-college.edu 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
	regent_id: 0,
	amount: 0,
	code: String,
	rebate_code: String,
	rebate_amount: 0,
	payment_id: String,
	reporting_term: String,
	sale_items: 
	[
		{
			amount: 0,
			code: String
		}
	]
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
	errorCode: String,
	message: String,
	stackTrace: String,
	errors: 
	[
		{
			errorCode: String,
			fieldName: String,
			message: String,
			meta: 
			{
				String: String
			}
		}
	],
	meta: 
	{
		String: String
	}
}