Billhighway Cloud API

<back to all web services

BillMeLaterSubscription


export class ApiClientHeader
{
    public ClientId?: number;
    public Referrer?: string;
    public IpAddress?: string;
    public LoggedInUserId?: number;
    public GroupId?: number;
    public Task?: string;
    public Machine?: string;
    public Location?: string;
    public CreatedBy?: number;
    public CampaignId?: number;
    public ReCaptchaScore?: number;

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

export class SubscriberFormField
{
    public Name?: string;
    public Value?: string;

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

export class SubscriptionParameters
{
    public FormTemplateID?: number;
    public SubscriptionInvoiceID?: number;
    public ClientSubscriberId?: string;
    public SignupTypeID?: number;
    public FrequencyID?: number;
    public AutoRenew?: boolean;
    public CompanyID?: number;
    public UserID?: number;
    public ChapMemPayID?: number;
    public MemberSubscriptionInvID?: number;
    public Fields?: SubscriberFormField[];
    public CreatedBy?: number;
    public UpdatedBy?: number;
    public AptifyUpdateType?: number;
    public RenewedMemberSubscriptionInvID?: number;
    public ChapId?: number;

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

export class CampaignInformation
{
    public CampaignId?: number;
    public CampaignName?: string;
    public Amount?: number;
    public ChapPayID?: string;

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

export class BillMeLaterSubscription
{
    public Header?: ApiClientHeader;
    public SubscriptionInfo?: SubscriptionParameters;
    public CampaignInfo?: CampaignInformation[];

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

export class BillMeCloudServiceResponse
{
    public IsDuplicate?: boolean;
    public IsSuccessful?: boolean;
    public ErrorCode?: string;
    public Message?: string;
    public IsError?: boolean;

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

export class BillMePaymentResult extends BillMeCloudServiceResponse
{
    public TransactionRecordID?: number;

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

TypeScript BillMeLaterSubscription 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.

POST /jsv/reply/BillMeLaterSubscription HTTP/1.1 
Host: devapi.billhighway.com 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	Header: 
	{
		ClientId: 0,
		Referrer: String,
		IpAddress: String,
		LoggedInUserId: 0,
		GroupId: 0,
		Task: String,
		Machine: String,
		Location: String,
		CreatedBy: 0,
		CampaignId: 0,
		ReCaptchaScore: 0
	},
	SubscriptionInfo: 
	{
		FormTemplateID: 0,
		SubscriptionInvoiceID: 0,
		ClientSubscriberId: String,
		SignupTypeID: 0,
		FrequencyID: 0,
		AutoRenew: False,
		CompanyID: 0,
		UserID: 0,
		ChapMemPayID: 0,
		MemberSubscriptionInvID: 0,
		Fields: 
		[
			{
				Name: String,
				Value: String
			}
		],
		CreatedBy: 0,
		UpdatedBy: 0,
		AptifyUpdateType: 0,
		RenewedMemberSubscriptionInvID: 0,
		ChapId: 0
	},
	CampaignInfo: 
	[
		{
			CampaignId: 0,
			CampaignName: String,
			Amount: 0,
			ChapPayID: String
		}
	]
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	TransactionRecordID: 0,
	IsDuplicate: False,
	IsSuccessful: False,
	ErrorCode: String,
	Message: String,
	IsError: False
}