Billhighway Cloud API

<back to all web services

RecurringObligationTemplateGetRq

The following routes are available for this service:
GET/signup/api/nat/{natID}/recurring/obligation/templates
GET/signup/api/nat/{natID}/group/{groupId}/recurring/obligation/templates
GET/signup/api/nat/{natID}/group/{groupId}/{usertype}/user/{userid}/recurring/obligation/templates

export class RecurringObligationTemplateGetRq
{
    public NatID?: number;
    public GroupId?: number;
    public UserId?: string;
    public UserType?: string;

    public constructor(init?: Partial<RecurringObligationTemplateGetRq>) { (Object as any).assign(this, init); }
}

export class RecurringInvoiceModel
{
    public ChapID?: number;
    public ClientGroupID?: string;
    public RecurringInvoiceID?: number;
    public MemTypeID?: number;
    public BillingTypeName?: string;
    public InvoiceDescription?: string;
    public Amount?: number;
    public ProcessingCurrency?: string;
    public FrequencyDescription?: string;
    public EffectiveDate?: string;
    public EndDate?: string;
    public NextDueDate?: string;
    public donationCoaNum?: string;
    public donationCoaDesc?: string;
    public Donation_ChapBillCatID?: number;
    public FrequencyID?: number;
    public Monthly_DayOfMOnth?: number;
    public Weekly_DayOfWeek?: number;
    public SemiMonthly_DayOfMonth1?: number;
    public SemiMonthly_DayOfMonth2?: number;
    public UseLastDayOfMonth?: boolean;
    public IsActive?: boolean;
    public NumOccurences?: number;

    public constructor(init?: Partial<RecurringInvoiceModel>) { (Object as any).assign(this, init); }
}

export class FiscalYearItem
{
    public Year?: number;
    public BeginDate?: string;
    public EndDate?: string;

    public constructor(init?: Partial<FiscalYearItem>) { (Object as any).assign(this, init); }
}

export class RecurringObligationInvoiceTemplateItem
{
    public RecurringObligationTemplateItemId?: number;
    public RecurringObligationInvoiceTemplateItemId?: number;
    public RecurringObligationInvoiceTemplateId?: number;
    public Amount?: number;
    public ChapBillCatId?: number;
    public Name?: string;

    public constructor(init?: Partial<RecurringObligationInvoiceTemplateItem>) { (Object as any).assign(this, init); }
}

export class RecurringObligationInvoiceTemplate
{
    public RecurringObligationTemplateId?: number;
    public RecurringObligationInvoiceTemplateId?: number;
    public NationalId?: number;
    public MemberTypeClientId?: number;
    public FiscalYear?: FiscalYearItem;
    public ChapId?: number;
    public IsDeleted?: boolean;
    public Name?: string;
    public RecurringObligationInvoiceTemplateItems?: RecurringObligationInvoiceTemplateItem[];

    public constructor(init?: Partial<RecurringObligationInvoiceTemplate>) { (Object as any).assign(this, init); }
}

export class RecurringObligationChapBillCatDetail
{
    public ChapBillCatId?: number;
    public ChapBillCatDesc?: string;
    public NatId?: number;
    public IsContribution?: boolean;
    public CalcTypeId?: number;
    public DonationAmounts?: KeyValuePair<number,string>[];
    public ChartOfAccountRefId?: string;

    public constructor(init?: Partial<RecurringObligationChapBillCatDetail>) { (Object as any).assign(this, init); }
}

export class RecurringObligationWrapper
{
    public RecurringInvoices?: RecurringInvoiceModel[];
    public RecurringObligationTemplates?: RecurringObligationInvoiceTemplate[];
    public RecurringObligationChapBillCatDetail?: RecurringObligationChapBillCatDetail[];

    public constructor(init?: Partial<RecurringObligationWrapper>) { (Object as any).assign(this, init); }
}

export class RecurringObligationTemplateGetRs
{
    public RecurringObligations?: RecurringObligationWrapper;

    public constructor(init?: Partial<RecurringObligationTemplateGetRs>) { (Object as any).assign(this, init); }
}

TypeScript RecurringObligationTemplateGetRq DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv

HTTP + JSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

GET /signup/api/nat/{natID}/recurring/obligation/templates HTTP/1.1 
Host: devapi.billhighway.com 
Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	RecurringObligations: 
	{
		RecurringInvoices: 
		[
			{
				ChapID: 0,
				ClientGroupID: String,
				RecurringInvoiceID: 0,
				MemTypeID: 0,
				BillingTypeName: String,
				InvoiceDescription: String,
				Amount: 0,
				ProcessingCurrency: String,
				FrequencyDescription: String,
				EffectiveDate: 0001-01-01,
				EndDate: 0001-01-01,
				NextDueDate: 0001-01-01,
				donationCoaNum: String,
				donationCoaDesc: String,
				Donation_ChapBillCatID: 0,
				FrequencyID: 0,
				Monthly_DayOfMOnth: 0,
				Weekly_DayOfWeek: 0,
				SemiMonthly_DayOfMonth1: 0,
				SemiMonthly_DayOfMonth2: 0,
				UseLastDayOfMonth: False,
				IsActive: False,
				NumOccurences: 0
			}
		],
		RecurringObligationTemplates: 
		[
			{
				RecurringObligationTemplateId: 0,
				RecurringObligationInvoiceTemplateId: 0,
				NationalId: 0,
				MemberTypeClientId: 0,
				FiscalYear: 
				{
					Year: 0,
					BeginDate: 0001-01-01,
					EndDate: 0001-01-01
				},
				ChapId: 0,
				IsDeleted: False,
				Name: String,
				RecurringObligationInvoiceTemplateItems: 
				[
					{
						RecurringObligationTemplateItemId: 0,
						RecurringObligationInvoiceTemplateItemId: 0,
						RecurringObligationInvoiceTemplateId: 0,
						Amount: 0,
						ChapBillCatId: 0,
						Name: String
					}
				]
			}
		],
		RecurringObligationChapBillCatDetail: 
		[
			{
				ChapBillCatId: 0,
				ChapBillCatDesc: String,
				NatId: 0,
				IsContribution: False,
				CalcTypeId: 0,
				DonationAmounts: 
				[
					{
						Key: 0,
						Value: String
					}
				],
				ChartOfAccountRefId: String
			}
		]
	}
}