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 .xml suffix or ?format=xml
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /xml/reply/BillMeLaterSubscription HTTP/1.1
Host: devapi.billhighway.com
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<BillMeLaterSubscription xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="https://www.billhighway.com/api">
<CampaignInfo xmlns:d2p1="http://schemas.datacontract.org/2004/07/BH.CloudAPI.Common4.DTO.Subscriptions">
<d2p1:CampaignInformation>
<d2p1:Amount>0</d2p1:Amount>
<d2p1:CampaignId>0</d2p1:CampaignId>
<d2p1:CampaignName>String</d2p1:CampaignName>
<d2p1:ChapPayID>String</d2p1:ChapPayID>
</d2p1:CampaignInformation>
</CampaignInfo>
<Header xmlns:d2p1="http://schemas.datacontract.org/2004/07/BH.CloudAPI.Common.DTO">
<d2p1:CampaignId>0</d2p1:CampaignId>
<d2p1:ClientId>0</d2p1:ClientId>
<d2p1:CreatedBy>0</d2p1:CreatedBy>
<d2p1:GroupId>0</d2p1:GroupId>
<d2p1:IpAddress>String</d2p1:IpAddress>
<d2p1:Location>String</d2p1:Location>
<d2p1:LoggedInUserId>0</d2p1:LoggedInUserId>
<d2p1:Machine>String</d2p1:Machine>
<d2p1:ReCaptchaScore>0</d2p1:ReCaptchaScore>
<d2p1:Referrer>String</d2p1:Referrer>
<d2p1:Task>String</d2p1:Task>
</Header>
<SubscriptionInfo xmlns:d2p1="http://schemas.datacontract.org/2004/07/BH.CloudAPI.Common4.DTO.SalesForce">
<d2p1:AptifyUpdateType>0</d2p1:AptifyUpdateType>
<d2p1:AutoRenew>false</d2p1:AutoRenew>
<d2p1:ChapId>0</d2p1:ChapId>
<d2p1:ChapMemPayID>0</d2p1:ChapMemPayID>
<d2p1:ClientSubscriberId>String</d2p1:ClientSubscriberId>
<d2p1:CompanyID>0</d2p1:CompanyID>
<d2p1:CreatedBy>0</d2p1:CreatedBy>
<d2p1:Fields>
<d2p1:SubscriberFormField>
<d2p1:_x003C_Name_x003E_k__BackingField>String</d2p1:_x003C_Name_x003E_k__BackingField>
<d2p1:_x003C_Value_x003E_k__BackingField>String</d2p1:_x003C_Value_x003E_k__BackingField>
</d2p1:SubscriberFormField>
</d2p1:Fields>
<d2p1:FormTemplateID>0</d2p1:FormTemplateID>
<d2p1:FrequencyID>0</d2p1:FrequencyID>
<d2p1:MemberSubscriptionInvID>0</d2p1:MemberSubscriptionInvID>
<d2p1:RenewedMemberSubscriptionInvID>0</d2p1:RenewedMemberSubscriptionInvID>
<d2p1:SignupTypeID>0</d2p1:SignupTypeID>
<d2p1:SubscriptionInvoiceID>0</d2p1:SubscriptionInvoiceID>
<d2p1:UpdatedBy>0</d2p1:UpdatedBy>
<d2p1:UserID>0</d2p1:UserID>
</SubscriptionInfo>
</BillMeLaterSubscription>
HTTP/1.1 200 OK Content-Type: application/xml Content-Length: length <BillMePaymentResult xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/BH.CloudAPI.Common.DTO"> <ErrorCode>String</ErrorCode> <IsDuplicate>false</IsDuplicate> <IsError>false</IsError> <IsSuccessful>false</IsSuccessful> <Message>String</Message> <TransactionRecordID>0</TransactionRecordID> </BillMePaymentResult>