| POST | /PMI |
|---|
import 'package:servicestack/servicestack.dart';
class PmiReply implements IHaveErrorField, IConvertible
{
String? UniqueId;
DateTime? CreatedDateTime;
int? ClientId;
String? BillhighwayPaymentConfirmationNumber;
int? BillhighwayUserId;
List<int>? BhInvoiceBatchId;
int? ChapMemPayid;
int? ErrorCode;
String? ErrorMessage;
bool? IsError;
PmiReply({this.UniqueId,this.CreatedDateTime,this.ClientId,this.BillhighwayPaymentConfirmationNumber,this.BillhighwayUserId,this.BhInvoiceBatchId,this.ChapMemPayid,this.ErrorCode,this.ErrorMessage,this.IsError});
PmiReply.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
UniqueId = json['UniqueId'];
CreatedDateTime = JsonConverters.fromJson(json['CreatedDateTime'],'DateTime',context!);
ClientId = json['ClientId'];
BillhighwayPaymentConfirmationNumber = json['BillhighwayPaymentConfirmationNumber'];
BillhighwayUserId = json['BillhighwayUserId'];
BhInvoiceBatchId = JsonConverters.fromJson(json['BhInvoiceBatchId'],'List<int>',context!);
ChapMemPayid = json['ChapMemPayid'];
ErrorCode = json['ErrorCode'];
ErrorMessage = json['ErrorMessage'];
IsError = json['IsError'];
return this;
}
Map<String, dynamic> toJson() => {
'UniqueId': UniqueId,
'CreatedDateTime': JsonConverters.toJson(CreatedDateTime,'DateTime',context!),
'ClientId': ClientId,
'BillhighwayPaymentConfirmationNumber': BillhighwayPaymentConfirmationNumber,
'BillhighwayUserId': BillhighwayUserId,
'BhInvoiceBatchId': JsonConverters.toJson(BhInvoiceBatchId,'List<int>',context!),
'ChapMemPayid': ChapMemPayid,
'ErrorCode': ErrorCode,
'ErrorMessage': ErrorMessage,
'IsError': IsError
};
getTypeName() => "PmiReply";
TypeContext? context = _ctx;
}
class RecurringInvoiceSettings implements IConvertible
{
String? DonationAmount;
RecurringInvoiceSettings({this.DonationAmount});
RecurringInvoiceSettings.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
DonationAmount = json['DonationAmount'];
return this;
}
Map<String, dynamic> toJson() => {
'DonationAmount': DonationAmount
};
getTypeName() => "RecurringInvoiceSettings";
TypeContext? context = _ctx;
}
class SubscriberFormField implements IConvertible
{
String? Name;
String? Value;
SubscriberFormField({this.Name,this.Value});
SubscriberFormField.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Name = json['Name'];
Value = json['Value'];
return this;
}
Map<String, dynamic> toJson() => {
'Name': Name,
'Value': Value
};
getTypeName() => "SubscriberFormField";
TypeContext? context = _ctx;
}
class AttributeItem implements IConvertible
{
String? Name;
String? Value;
AttributeItem({this.Name,this.Value});
AttributeItem.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Name = json['Name'];
Value = json['Value'];
return this;
}
Map<String, dynamic> toJson() => {
'Name': Name,
'Value': Value
};
getTypeName() => "AttributeItem";
TypeContext? context = _ctx;
}
class Chapter implements IConvertible
{
String? GroupId;
Chapter({this.GroupId});
Chapter.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
GroupId = json['GroupId'];
return this;
}
Map<String, dynamic> toJson() => {
'GroupId': GroupId
};
getTypeName() => "Chapter";
TypeContext? context = _ctx;
}
class Member implements IConvertible
{
String? ClassName;
String? UniqueId;
DateTime? CreatedDateTime;
int? ClientId;
String? GroupId;
String? UserId;
String? AlternateUserId;
int? BhUserId;
String? FirstName;
String? LastName;
String? MiddleName;
String? PreferredEmailAddress;
String? OtherEmailAddress;
String? PreferredPhoneNumber;
String? PreferredAddress1;
String? PreferredAddress2;
String? PreferredCity;
String? PreferredState;
String? PreferredZip;
String? PreferredCountry;
String? AccessLevel;
String? MemberStatus;
String? MemberTypeClient;
String? BillingType;
int? FiscalYear;
String? WorkLocation;
DateTime? DOB;
String? Paperless;
String? DisplayName;
String? DisableLogin;
RecurringInvoiceSettings? RecurringInvoiceSettings;
List<SubscriberFormField>? FormFields;
List<AttributeItem>? Attributes;
List<Chapter>? GroupList;
Member({this.ClassName,this.UniqueId,this.CreatedDateTime,this.ClientId,this.GroupId,this.UserId,this.AlternateUserId,this.BhUserId,this.FirstName,this.LastName,this.MiddleName,this.PreferredEmailAddress,this.OtherEmailAddress,this.PreferredPhoneNumber,this.PreferredAddress1,this.PreferredAddress2,this.PreferredCity,this.PreferredState,this.PreferredZip,this.PreferredCountry,this.AccessLevel,this.MemberStatus,this.MemberTypeClient,this.BillingType,this.FiscalYear,this.WorkLocation,this.DOB,this.Paperless,this.DisplayName,this.DisableLogin,this.RecurringInvoiceSettings,this.FormFields,this.Attributes,this.GroupList});
Member.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
ClassName = json['ClassName'];
UniqueId = json['UniqueId'];
CreatedDateTime = JsonConverters.fromJson(json['CreatedDateTime'],'DateTime',context!);
ClientId = json['ClientId'];
GroupId = json['GroupId'];
UserId = json['UserId'];
AlternateUserId = json['AlternateUserId'];
BhUserId = json['BhUserId'];
FirstName = json['FirstName'];
LastName = json['LastName'];
MiddleName = json['MiddleName'];
PreferredEmailAddress = json['PreferredEmailAddress'];
OtherEmailAddress = json['OtherEmailAddress'];
PreferredPhoneNumber = json['PreferredPhoneNumber'];
PreferredAddress1 = json['PreferredAddress1'];
PreferredAddress2 = json['PreferredAddress2'];
PreferredCity = json['PreferredCity'];
PreferredState = json['PreferredState'];
PreferredZip = json['PreferredZip'];
PreferredCountry = json['PreferredCountry'];
AccessLevel = json['AccessLevel'];
MemberStatus = json['MemberStatus'];
MemberTypeClient = json['MemberTypeClient'];
BillingType = json['BillingType'];
FiscalYear = json['FiscalYear'];
WorkLocation = json['WorkLocation'];
DOB = JsonConverters.fromJson(json['DOB'],'DateTime',context!);
Paperless = json['Paperless'];
DisplayName = json['DisplayName'];
DisableLogin = json['DisableLogin'];
RecurringInvoiceSettings = JsonConverters.fromJson(json['RecurringInvoiceSettings'],'RecurringInvoiceSettings',context!);
FormFields = JsonConverters.fromJson(json['FormFields'],'List<SubscriberFormField>',context!);
Attributes = JsonConverters.fromJson(json['Attributes'],'List<AttributeItem>',context!);
GroupList = JsonConverters.fromJson(json['GroupList'],'List<Chapter>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'ClassName': ClassName,
'UniqueId': UniqueId,
'CreatedDateTime': JsonConverters.toJson(CreatedDateTime,'DateTime',context!),
'ClientId': ClientId,
'GroupId': GroupId,
'UserId': UserId,
'AlternateUserId': AlternateUserId,
'BhUserId': BhUserId,
'FirstName': FirstName,
'LastName': LastName,
'MiddleName': MiddleName,
'PreferredEmailAddress': PreferredEmailAddress,
'OtherEmailAddress': OtherEmailAddress,
'PreferredPhoneNumber': PreferredPhoneNumber,
'PreferredAddress1': PreferredAddress1,
'PreferredAddress2': PreferredAddress2,
'PreferredCity': PreferredCity,
'PreferredState': PreferredState,
'PreferredZip': PreferredZip,
'PreferredCountry': PreferredCountry,
'AccessLevel': AccessLevel,
'MemberStatus': MemberStatus,
'MemberTypeClient': MemberTypeClient,
'BillingType': BillingType,
'FiscalYear': FiscalYear,
'WorkLocation': WorkLocation,
'DOB': JsonConverters.toJson(DOB,'DateTime',context!),
'Paperless': Paperless,
'DisplayName': DisplayName,
'DisableLogin': DisableLogin,
'RecurringInvoiceSettings': JsonConverters.toJson(RecurringInvoiceSettings,'RecurringInvoiceSettings',context!),
'FormFields': JsonConverters.toJson(FormFields,'List<SubscriberFormField>',context!),
'Attributes': JsonConverters.toJson(Attributes,'List<AttributeItem>',context!),
'GroupList': JsonConverters.toJson(GroupList,'List<Chapter>',context!)
};
getTypeName() => "Member";
TypeContext? context = _ctx;
}
class InvoiceItem implements IInvoiceItemValidation, IConvertible
{
String? UniqueId;
String? ProductName;
double? AmountDue;
String? ProductType;
int? ActPatternTypeID;
DateTime? TermStartDate;
DateTime? TermEndDate;
int? RecognitionPeriod;
String? RevenueAccount;
String? AccountsReceivableAccount;
String? LiabilityAccount;
String? CreditExpenseAccount;
String? InvoiceClearingAccount;
String? CostCenter;
String? Region;
InvoiceItem({this.UniqueId,this.ProductName,this.AmountDue,this.ProductType,this.ActPatternTypeID,this.TermStartDate,this.TermEndDate,this.RecognitionPeriod,this.RevenueAccount,this.AccountsReceivableAccount,this.LiabilityAccount,this.CreditExpenseAccount,this.InvoiceClearingAccount,this.CostCenter,this.Region});
InvoiceItem.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
UniqueId = json['UniqueId'];
ProductName = json['ProductName'];
AmountDue = JsonConverters.toDouble(json['AmountDue']);
ProductType = json['ProductType'];
ActPatternTypeID = json['ActPatternTypeID'];
TermStartDate = JsonConverters.fromJson(json['TermStartDate'],'DateTime',context!);
TermEndDate = JsonConverters.fromJson(json['TermEndDate'],'DateTime',context!);
RecognitionPeriod = json['RecognitionPeriod'];
RevenueAccount = json['RevenueAccount'];
AccountsReceivableAccount = json['AccountsReceivableAccount'];
LiabilityAccount = json['LiabilityAccount'];
CreditExpenseAccount = json['CreditExpenseAccount'];
InvoiceClearingAccount = json['InvoiceClearingAccount'];
CostCenter = json['CostCenter'];
Region = json['Region'];
return this;
}
Map<String, dynamic> toJson() => {
'UniqueId': UniqueId,
'ProductName': ProductName,
'AmountDue': AmountDue,
'ProductType': ProductType,
'ActPatternTypeID': ActPatternTypeID,
'TermStartDate': JsonConverters.toJson(TermStartDate,'DateTime',context!),
'TermEndDate': JsonConverters.toJson(TermEndDate,'DateTime',context!),
'RecognitionPeriod': RecognitionPeriod,
'RevenueAccount': RevenueAccount,
'AccountsReceivableAccount': AccountsReceivableAccount,
'LiabilityAccount': LiabilityAccount,
'CreditExpenseAccount': CreditExpenseAccount,
'InvoiceClearingAccount': InvoiceClearingAccount,
'CostCenter': CostCenter,
'Region': Region
};
getTypeName() => "InvoiceItem";
TypeContext? context = _ctx;
}
class Invoice implements IInvoiceValidation, IConvertible
{
String? UniqueId;
int? ClientId;
String? GroupId;
String? Description;
String? OpportunityId;
int? Installments;
int? Frequency;
DateTime? InvoiceDueDate;
bool? Deliver;
String? UserId;
int? BhUserId;
String? CurrencyType;
List<InvoiceItem>? InvoiceItems;
int? InvoiceNo;
double? InvoiceAmt;
String? ExternalInvBatchNo;
bool? ExemptFromLateFee;
Invoice({this.UniqueId,this.ClientId,this.GroupId,this.Description,this.OpportunityId,this.Installments,this.Frequency,this.InvoiceDueDate,this.Deliver,this.UserId,this.BhUserId,this.CurrencyType,this.InvoiceItems,this.InvoiceNo,this.InvoiceAmt,this.ExternalInvBatchNo,this.ExemptFromLateFee});
Invoice.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
UniqueId = json['UniqueId'];
ClientId = json['ClientId'];
GroupId = json['GroupId'];
Description = json['Description'];
OpportunityId = json['OpportunityId'];
Installments = json['Installments'];
Frequency = json['Frequency'];
InvoiceDueDate = JsonConverters.fromJson(json['InvoiceDueDate'],'DateTime',context!);
Deliver = json['Deliver'];
UserId = json['UserId'];
BhUserId = json['BhUserId'];
CurrencyType = json['CurrencyType'];
InvoiceItems = JsonConverters.fromJson(json['InvoiceItems'],'List<InvoiceItem>',context!);
InvoiceNo = json['InvoiceNo'];
InvoiceAmt = JsonConverters.toDouble(json['InvoiceAmt']);
ExternalInvBatchNo = json['ExternalInvBatchNo'];
ExemptFromLateFee = json['ExemptFromLateFee'];
return this;
}
Map<String, dynamic> toJson() => {
'UniqueId': UniqueId,
'ClientId': ClientId,
'GroupId': GroupId,
'Description': Description,
'OpportunityId': OpportunityId,
'Installments': Installments,
'Frequency': Frequency,
'InvoiceDueDate': JsonConverters.toJson(InvoiceDueDate,'DateTime',context!),
'Deliver': Deliver,
'UserId': UserId,
'BhUserId': BhUserId,
'CurrencyType': CurrencyType,
'InvoiceItems': JsonConverters.toJson(InvoiceItems,'List<InvoiceItem>',context!),
'InvoiceNo': InvoiceNo,
'InvoiceAmt': InvoiceAmt,
'ExternalInvBatchNo': ExternalInvBatchNo,
'ExemptFromLateFee': ExemptFromLateFee
};
getTypeName() => "Invoice";
TypeContext? context = _ctx;
}
class SubscriptionParameters implements IConvertible
{
int? FormTemplateID;
int? SubscriptionInvoiceID;
String? ClientSubscriberId;
int? SignupTypeID;
int? FrequencyID;
bool? AutoRenew;
int? CompanyID;
int? UserID;
int? ChapMemPayID;
int? MemberSubscriptionInvID;
List<SubscriberFormField>? Fields;
int? CreatedBy;
int? UpdatedBy;
int? AptifyUpdateType;
int? RenewedMemberSubscriptionInvID;
int? ChapId;
SubscriptionParameters({this.FormTemplateID,this.SubscriptionInvoiceID,this.ClientSubscriberId,this.SignupTypeID,this.FrequencyID,this.AutoRenew,this.CompanyID,this.UserID,this.ChapMemPayID,this.MemberSubscriptionInvID,this.Fields,this.CreatedBy,this.UpdatedBy,this.AptifyUpdateType,this.RenewedMemberSubscriptionInvID,this.ChapId});
SubscriptionParameters.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
FormTemplateID = json['FormTemplateID'];
SubscriptionInvoiceID = json['SubscriptionInvoiceID'];
ClientSubscriberId = json['ClientSubscriberId'];
SignupTypeID = json['SignupTypeID'];
FrequencyID = json['FrequencyID'];
AutoRenew = json['AutoRenew'];
CompanyID = json['CompanyID'];
UserID = json['UserID'];
ChapMemPayID = json['ChapMemPayID'];
MemberSubscriptionInvID = json['MemberSubscriptionInvID'];
Fields = JsonConverters.fromJson(json['Fields'],'List<SubscriberFormField>',context!);
CreatedBy = json['CreatedBy'];
UpdatedBy = json['UpdatedBy'];
AptifyUpdateType = json['AptifyUpdateType'];
RenewedMemberSubscriptionInvID = json['RenewedMemberSubscriptionInvID'];
ChapId = json['ChapId'];
return this;
}
Map<String, dynamic> toJson() => {
'FormTemplateID': FormTemplateID,
'SubscriptionInvoiceID': SubscriptionInvoiceID,
'ClientSubscriberId': ClientSubscriberId,
'SignupTypeID': SignupTypeID,
'FrequencyID': FrequencyID,
'AutoRenew': AutoRenew,
'CompanyID': CompanyID,
'UserID': UserID,
'ChapMemPayID': ChapMemPayID,
'MemberSubscriptionInvID': MemberSubscriptionInvID,
'Fields': JsonConverters.toJson(Fields,'List<SubscriberFormField>',context!),
'CreatedBy': CreatedBy,
'UpdatedBy': UpdatedBy,
'AptifyUpdateType': AptifyUpdateType,
'RenewedMemberSubscriptionInvID': RenewedMemberSubscriptionInvID,
'ChapId': ChapId
};
getTypeName() => "SubscriptionParameters";
TypeContext? context = _ctx;
}
class CreditCardPayment extends CreditCardPayment implements IConvertible
{
SubscriptionParameters? SubscriptionInfo;
CreditCardPayment({this.SubscriptionInfo});
CreditCardPayment.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
super.fromMap(json);
SubscriptionInfo = JsonConverters.fromJson(json['SubscriptionInfo'],'SubscriptionParameters',context!);
return this;
}
Map<String, dynamic> toJson() => super.toJson()..addAll({
'SubscriptionInfo': JsonConverters.toJson(SubscriptionInfo,'SubscriptionParameters',context!)
});
getTypeName() => "CreditCardPayment";
TypeContext? context = _ctx;
}
class SalesForceCreditInvoiceDetails implements IConvertible
{
int? Invoice;
double? AmountPaid;
String? Region;
String? CostCenter;
SalesForceCreditInvoiceDetails({this.Invoice,this.AmountPaid,this.Region,this.CostCenter});
SalesForceCreditInvoiceDetails.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Invoice = json['Invoice'];
AmountPaid = JsonConverters.toDouble(json['AmountPaid']);
Region = json['Region'];
CostCenter = json['CostCenter'];
return this;
}
Map<String, dynamic> toJson() => {
'Invoice': Invoice,
'AmountPaid': AmountPaid,
'Region': Region,
'CostCenter': CostCenter
};
getTypeName() => "SalesForceCreditInvoiceDetails";
TypeContext? context = _ctx;
}
class CreateApplyCredit implements IConvertible
{
String? ClassName;
String? UniqueId;
DateTime? CreatedDateTime;
int? ClientId;
String? GroupId;
String? UserId;
int? BhUserId;
int? CreditId;
String? CurrencyType;
String? CreditType;
String? Notes;
List<SalesForceCreditInvoiceDetails>? InvoiceDetails;
CreateApplyCredit({this.ClassName,this.UniqueId,this.CreatedDateTime,this.ClientId,this.GroupId,this.UserId,this.BhUserId,this.CreditId,this.CurrencyType,this.CreditType,this.Notes,this.InvoiceDetails});
CreateApplyCredit.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
ClassName = json['ClassName'];
UniqueId = json['UniqueId'];
CreatedDateTime = JsonConverters.fromJson(json['CreatedDateTime'],'DateTime',context!);
ClientId = json['ClientId'];
GroupId = json['GroupId'];
UserId = json['UserId'];
BhUserId = json['BhUserId'];
CreditId = json['CreditId'];
CurrencyType = json['CurrencyType'];
CreditType = json['CreditType'];
Notes = json['Notes'];
InvoiceDetails = JsonConverters.fromJson(json['InvoiceDetails'],'List<SalesForceCreditInvoiceDetails>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'ClassName': ClassName,
'UniqueId': UniqueId,
'CreatedDateTime': JsonConverters.toJson(CreatedDateTime,'DateTime',context!),
'ClientId': ClientId,
'GroupId': GroupId,
'UserId': UserId,
'BhUserId': BhUserId,
'CreditId': CreditId,
'CurrencyType': CurrencyType,
'CreditType': CreditType,
'Notes': Notes,
'InvoiceDetails': JsonConverters.toJson(InvoiceDetails,'List<SalesForceCreditInvoiceDetails>',context!)
};
getTypeName() => "CreateApplyCredit";
TypeContext? context = _ctx;
}
class SalesForceMemberPaymentInvoiceDetail implements IConvertible
{
String? ClassName;
String? UniqueId;
DateTime? CreatedDateTime;
int? ClientId;
int? Invoice;
String? AmountPaid;
SalesForceMemberPaymentInvoiceDetail({this.ClassName,this.UniqueId,this.CreatedDateTime,this.ClientId,this.Invoice,this.AmountPaid});
SalesForceMemberPaymentInvoiceDetail.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
ClassName = json['ClassName'];
UniqueId = json['UniqueId'];
CreatedDateTime = JsonConverters.fromJson(json['CreatedDateTime'],'DateTime',context!);
ClientId = json['ClientId'];
Invoice = json['Invoice'];
AmountPaid = json['AmountPaid'];
return this;
}
Map<String, dynamic> toJson() => {
'ClassName': ClassName,
'UniqueId': UniqueId,
'CreatedDateTime': JsonConverters.toJson(CreatedDateTime,'DateTime',context!),
'ClientId': ClientId,
'Invoice': Invoice,
'AmountPaid': AmountPaid
};
getTypeName() => "SalesForceMemberPaymentInvoiceDetail";
TypeContext? context = _ctx;
}
class AchPayment implements IConvertible
{
String? ClassName;
String? UniqueId;
DateTime? CreatedDateTime;
int? ClientId;
String? GroupId;
String? UserId;
int? BhUserId;
double? Amount;
String? CurrencyType;
String? Country;
String? RoutingNumber;
String? AccountNumber;
String? AchReference;
String? AccountType;
bool? IsSavingsAccount;
String? PayerName;
String? CheckNumber;
String? PreferredEmailAddress;
String? Memo;
List<SalesForceMemberPaymentInvoiceDetail>? InvoiceList;
bool? AutoPay;
bool? StoreAchInfo;
int? EncryptionTypeId;
AchPayment({this.ClassName,this.UniqueId,this.CreatedDateTime,this.ClientId,this.GroupId,this.UserId,this.BhUserId,this.Amount,this.CurrencyType,this.Country,this.RoutingNumber,this.AccountNumber,this.AchReference,this.AccountType,this.IsSavingsAccount,this.PayerName,this.CheckNumber,this.PreferredEmailAddress,this.Memo,this.InvoiceList,this.AutoPay,this.StoreAchInfo,this.EncryptionTypeId});
AchPayment.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
ClassName = json['ClassName'];
UniqueId = json['UniqueId'];
CreatedDateTime = JsonConverters.fromJson(json['CreatedDateTime'],'DateTime',context!);
ClientId = json['ClientId'];
GroupId = json['GroupId'];
UserId = json['UserId'];
BhUserId = json['BhUserId'];
Amount = JsonConverters.toDouble(json['Amount']);
CurrencyType = json['CurrencyType'];
Country = json['Country'];
RoutingNumber = json['RoutingNumber'];
AccountNumber = json['AccountNumber'];
AchReference = json['AchReference'];
AccountType = json['AccountType'];
IsSavingsAccount = json['IsSavingsAccount'];
PayerName = json['PayerName'];
CheckNumber = json['CheckNumber'];
PreferredEmailAddress = json['PreferredEmailAddress'];
Memo = json['Memo'];
InvoiceList = JsonConverters.fromJson(json['InvoiceList'],'List<SalesForceMemberPaymentInvoiceDetail>',context!);
AutoPay = json['AutoPay'];
StoreAchInfo = json['StoreAchInfo'];
EncryptionTypeId = json['EncryptionTypeId'];
return this;
}
Map<String, dynamic> toJson() => {
'ClassName': ClassName,
'UniqueId': UniqueId,
'CreatedDateTime': JsonConverters.toJson(CreatedDateTime,'DateTime',context!),
'ClientId': ClientId,
'GroupId': GroupId,
'UserId': UserId,
'BhUserId': BhUserId,
'Amount': Amount,
'CurrencyType': CurrencyType,
'Country': Country,
'RoutingNumber': RoutingNumber,
'AccountNumber': AccountNumber,
'AchReference': AchReference,
'AccountType': AccountType,
'IsSavingsAccount': IsSavingsAccount,
'PayerName': PayerName,
'CheckNumber': CheckNumber,
'PreferredEmailAddress': PreferredEmailAddress,
'Memo': Memo,
'InvoiceList': JsonConverters.toJson(InvoiceList,'List<SalesForceMemberPaymentInvoiceDetail>',context!),
'AutoPay': AutoPay,
'StoreAchInfo': StoreAchInfo,
'EncryptionTypeId': EncryptionTypeId
};
getTypeName() => "AchPayment";
TypeContext? context = _ctx;
}
class Pmi implements IConvertible
{
String? UniqueId;
DateTime? CreatedDateTime;
int? ClientId;
int? GroupId;
Member? MemberInfo;
List<Invoice>? InvoiceCollection;
CreditCardPayment? CcPaymentInfo;
CreateApplyCredit? CreditInfo;
AchPayment? AchPaymentInfo;
int? LockboxId;
int? MemberSubscriptionInvoiceId;
Pmi({this.UniqueId,this.CreatedDateTime,this.ClientId,this.GroupId,this.MemberInfo,this.InvoiceCollection,this.CcPaymentInfo,this.CreditInfo,this.AchPaymentInfo,this.LockboxId,this.MemberSubscriptionInvoiceId});
Pmi.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
UniqueId = json['UniqueId'];
CreatedDateTime = JsonConverters.fromJson(json['CreatedDateTime'],'DateTime',context!);
ClientId = json['ClientId'];
GroupId = json['GroupId'];
MemberInfo = JsonConverters.fromJson(json['MemberInfo'],'Member',context!);
InvoiceCollection = JsonConverters.fromJson(json['InvoiceCollection'],'List<Invoice>',context!);
CcPaymentInfo = JsonConverters.fromJson(json['CcPaymentInfo'],'CreditCardPayment',context!);
CreditInfo = JsonConverters.fromJson(json['CreditInfo'],'CreateApplyCredit',context!);
AchPaymentInfo = JsonConverters.fromJson(json['AchPaymentInfo'],'AchPayment',context!);
LockboxId = json['LockboxId'];
MemberSubscriptionInvoiceId = json['MemberSubscriptionInvoiceId'];
return this;
}
Map<String, dynamic> toJson() => {
'UniqueId': UniqueId,
'CreatedDateTime': JsonConverters.toJson(CreatedDateTime,'DateTime',context!),
'ClientId': ClientId,
'GroupId': GroupId,
'MemberInfo': JsonConverters.toJson(MemberInfo,'Member',context!),
'InvoiceCollection': JsonConverters.toJson(InvoiceCollection,'List<Invoice>',context!),
'CcPaymentInfo': JsonConverters.toJson(CcPaymentInfo,'CreditCardPayment',context!),
'CreditInfo': JsonConverters.toJson(CreditInfo,'CreateApplyCredit',context!),
'AchPaymentInfo': JsonConverters.toJson(AchPaymentInfo,'AchPayment',context!),
'LockboxId': LockboxId,
'MemberSubscriptionInvoiceId': MemberSubscriptionInvoiceId
};
getTypeName() => "Pmi";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'devapi.billhighway.com', types: <String, TypeInfo> {
'PmiReply': TypeInfo(TypeOf.Class, create:() => PmiReply()),
'RecurringInvoiceSettings': TypeInfo(TypeOf.Class, create:() => RecurringInvoiceSettings()),
'SubscriberFormField': TypeInfo(TypeOf.Class, create:() => SubscriberFormField()),
'AttributeItem': TypeInfo(TypeOf.Class, create:() => AttributeItem()),
'Chapter': TypeInfo(TypeOf.Class, create:() => Chapter()),
'Member': TypeInfo(TypeOf.Class, create:() => Member()),
'List<SubscriberFormField>': TypeInfo(TypeOf.Class, create:() => <SubscriberFormField>[]),
'List<AttributeItem>': TypeInfo(TypeOf.Class, create:() => <AttributeItem>[]),
'List<Chapter>': TypeInfo(TypeOf.Class, create:() => <Chapter>[]),
'InvoiceItem': TypeInfo(TypeOf.Class, create:() => InvoiceItem()),
'Invoice': TypeInfo(TypeOf.Class, create:() => Invoice()),
'List<InvoiceItem>': TypeInfo(TypeOf.Class, create:() => <InvoiceItem>[]),
'SubscriptionParameters': TypeInfo(TypeOf.Class, create:() => SubscriptionParameters()),
'CreditCardPayment': TypeInfo(TypeOf.Class, create:() => CreditCardPayment()),
'SalesForceCreditInvoiceDetails': TypeInfo(TypeOf.Class, create:() => SalesForceCreditInvoiceDetails()),
'CreateApplyCredit': TypeInfo(TypeOf.Class, create:() => CreateApplyCredit()),
'List<SalesForceCreditInvoiceDetails>': TypeInfo(TypeOf.Class, create:() => <SalesForceCreditInvoiceDetails>[]),
'SalesForceMemberPaymentInvoiceDetail': TypeInfo(TypeOf.Class, create:() => SalesForceMemberPaymentInvoiceDetail()),
'AchPayment': TypeInfo(TypeOf.Class, create:() => AchPayment()),
'List<SalesForceMemberPaymentInvoiceDetail>': TypeInfo(TypeOf.Class, create:() => <SalesForceMemberPaymentInvoiceDetail>[]),
'Pmi': TypeInfo(TypeOf.Class, create:() => Pmi()),
'List<Invoice>': TypeInfo(TypeOf.Class, create:() => <Invoice>[]),
});
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 /PMI HTTP/1.1
Host: devapi.billhighway.com
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<Pmi xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/BH.CloudAPI.Common4.DTO.SalesForce">
<AchPaymentInfo>
<AccountNumber>String</AccountNumber>
<AccountType>String</AccountType>
<AchReference>String</AchReference>
<Amount>0</Amount>
<AutoPay>false</AutoPay>
<BhUserId>0</BhUserId>
<CheckNumber>String</CheckNumber>
<ClassName>String</ClassName>
<ClientId>0</ClientId>
<Country>String</Country>
<CreatedDateTime>0001-01-01T00:00:00</CreatedDateTime>
<CurrencyType>String</CurrencyType>
<EncryptionTypeId>0</EncryptionTypeId>
<GroupId>String</GroupId>
<InvoiceList>
<SalesForceMemberPaymentInvoiceDetail>
<AmountPaid>String</AmountPaid>
<ClassName>String</ClassName>
<ClientId>0</ClientId>
<CreatedDateTime>0001-01-01T00:00:00</CreatedDateTime>
<Invoice>0</Invoice>
<UniqueId>String</UniqueId>
</SalesForceMemberPaymentInvoiceDetail>
</InvoiceList>
<Memo>String</Memo>
<PayerName>String</PayerName>
<PreferredEmailAddress>String</PreferredEmailAddress>
<RoutingNumber>String</RoutingNumber>
<StoreAchInfo>false</StoreAchInfo>
<UniqueId>String</UniqueId>
<UserId>String</UserId>
</AchPaymentInfo>
<CcPaymentInfo>
<Address1>String</Address1>
<Address2>String</Address2>
<Amount>String</Amount>
<AutoPay>false</AutoPay>
<BhUserId>0</BhUserId>
<BillingCity>String</BillingCity>
<BillingState>String</BillingState>
<CardReferenceOrCardNumber>String</CardReferenceOrCardNumber>
<CardType>String</CardType>
<ClassName>String</ClassName>
<ClientId>0</ClientId>
<Country>String</Country>
<CreatedDateTime>0001-01-01T00:00:00</CreatedDateTime>
<CurrencyType>String</CurrencyType>
<Cvv>String</Cvv>
<ExpMonth>0</ExpMonth>
<ExpYear>0</ExpYear>
<GroupId>String</GroupId>
<InvoiceList>
<SalesForceMemberPaymentInvoiceDetail>
<AmountPaid>String</AmountPaid>
<ClassName>String</ClassName>
<ClientId>0</ClientId>
<CreatedDateTime>0001-01-01T00:00:00</CreatedDateTime>
<Invoice>0</Invoice>
<UniqueId>String</UniqueId>
</SalesForceMemberPaymentInvoiceDetail>
</InvoiceList>
<Location>String</Location>
<Memo>String</Memo>
<NameOnCard>String</NameOnCard>
<OpportunityId>String</OpportunityId>
<PostalCode>String</PostalCode>
<PreferredEmailAddress>String</PreferredEmailAddress>
<StoreCardInfo>false</StoreCardInfo>
<UniqueId>String</UniqueId>
<UserId>String</UserId>
</CcPaymentInfo>
<ClientId>0</ClientId>
<CreatedDateTime>0001-01-01T00:00:00</CreatedDateTime>
<CreditInfo>
<BhUserId>0</BhUserId>
<ClassName>String</ClassName>
<ClientId>0</ClientId>
<CreatedDateTime>0001-01-01T00:00:00</CreatedDateTime>
<CreditId>0</CreditId>
<CreditType>String</CreditType>
<CurrencyType>String</CurrencyType>
<GroupId>String</GroupId>
<InvoiceDetails>
<SalesForceCreditInvoiceDetails>
<AmountPaid>0</AmountPaid>
<CostCenter>String</CostCenter>
<Invoice>0</Invoice>
<Region>String</Region>
</SalesForceCreditInvoiceDetails>
</InvoiceDetails>
<Notes>String</Notes>
<UniqueId>String</UniqueId>
<UserId>String</UserId>
</CreditInfo>
<GroupId>0</GroupId>
<InvoiceCollection>
<Invoice>
<BhUserId>0</BhUserId>
<ClientId>0</ClientId>
<CurrencyType>String</CurrencyType>
<Deliver>false</Deliver>
<Description>String</Description>
<ExemptFromLateFee>false</ExemptFromLateFee>
<ExternalInvBatchNo>String</ExternalInvBatchNo>
<Frequency>0</Frequency>
<GroupId>String</GroupId>
<Installments>0</Installments>
<InvoiceAmt>0</InvoiceAmt>
<InvoiceDueDate>0001-01-01T00:00:00</InvoiceDueDate>
<InvoiceItems>
<InvoiceItem>
<AmountDue>String</AmountDue>
<ProductName>String</ProductName>
<RevenueAccount>String</RevenueAccount>
</InvoiceItem>
</InvoiceItems>
<InvoiceNo>0</InvoiceNo>
<OpportunityId>String</OpportunityId>
<UniqueId>String</UniqueId>
<UserId>String</UserId>
</Invoice>
</InvoiceCollection>
<LockboxId>0</LockboxId>
<MemberInfo>
<AccessLevel>String</AccessLevel>
<AlternateUserId>String</AlternateUserId>
<Attributes xmlns:d3p1="https://www.billhighway.com/api">
<d3p1:AttributeItem>
<d3p1:Name>String</d3p1:Name>
<d3p1:Value>String</d3p1:Value>
</d3p1:AttributeItem>
</Attributes>
<BhUserId>0</BhUserId>
<BillingType>String</BillingType>
<ClassName>String</ClassName>
<ClientId>0</ClientId>
<CreatedDateTime>0001-01-01T00:00:00</CreatedDateTime>
<DOB>0001-01-01T00:00:00</DOB>
<DisableLogin>String</DisableLogin>
<DisplayName>String</DisplayName>
<FirstName>String</FirstName>
<FiscalYear>0</FiscalYear>
<FormFields>
<SubscriberFormField>
<_x003C_Name_x003E_k__BackingField>String</_x003C_Name_x003E_k__BackingField>
<_x003C_Value_x003E_k__BackingField>String</_x003C_Value_x003E_k__BackingField>
</SubscriberFormField>
</FormFields>
<GroupId>String</GroupId>
<GroupList xmlns:d3p1="http://schemas.datacontract.org/2004/07/BH.CloudAPI.Common.DTO">
<d3p1:Chapter>
<d3p1:GroupId>String</d3p1:GroupId>
</d3p1:Chapter>
</GroupList>
<LastName>String</LastName>
<MemberStatus>String</MemberStatus>
<MemberTypeClient>String</MemberTypeClient>
<MiddleName>String</MiddleName>
<OtherEmailAddress>String</OtherEmailAddress>
<Paperless>String</Paperless>
<PreferredAddress1>String</PreferredAddress1>
<PreferredAddress2>String</PreferredAddress2>
<PreferredCity>String</PreferredCity>
<PreferredCountry>String</PreferredCountry>
<PreferredEmailAddress>String</PreferredEmailAddress>
<PreferredPhoneNumber>String</PreferredPhoneNumber>
<PreferredState>String</PreferredState>
<PreferredZip>String</PreferredZip>
<RecurringInvoiceSettings xmlns:d3p1="http://schemas.datacontract.org/2004/07/BH.CloudAPI.Common.DTO.Member">
<d3p1:DonationAmount>String</d3p1:DonationAmount>
</RecurringInvoiceSettings>
<UniqueId>String</UniqueId>
<UserId>String</UserId>
<WorkLocation>String</WorkLocation>
</MemberInfo>
<MemberSubscriptionInvoiceId>0</MemberSubscriptionInvoiceId>
<UniqueId>String</UniqueId>
</Pmi>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length
<PmiReply xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/BH.CloudAPI.Common4.DTO.SalesForce">
<BhInvoiceBatchId xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d2p1:int>0</d2p1:int>
</BhInvoiceBatchId>
<BillhighwayPaymentConfirmationNumber>String</BillhighwayPaymentConfirmationNumber>
<BillhighwayUserId>0</BillhighwayUserId>
<ChapMemPayid>0</ChapMemPayid>
<ClientId>0</ClientId>
<CreatedDateTime>0001-01-01T00:00:00</CreatedDateTime>
<ErrorCode>0</ErrorCode>
<ErrorMessage>String</ErrorMessage>
<UniqueId>String</UniqueId>
</PmiReply>