| POST | /SMP |
|---|
Imports System
Imports System.Collections
Imports System.Collections.Generic
Imports System.Runtime.Serialization
Imports ServiceStack
Imports ServiceStack.DataAnnotations
Imports BH.CloudAPI.Common4.DTO.SalesForce
Imports BH.CloudAPI.Common.DTO.Member
Imports BH.CloudAPI.Common4.DTO
Imports BH.CloudAPI.Common.DTO
Imports BH.CloudAPI.Common4.DTO.Subscriptions
Namespace Global
Namespace BH.CloudAPI.Common.DTO
Public Partial Class Chapter
Public Overridable Property GroupId As String
End Class
End Namespace
Namespace BH.CloudAPI.Common.DTO.Member
Public Partial Class RecurringInvoiceSettings
Public Overridable Property DonationAmount As String
End Class
End Namespace
Namespace BH.CloudAPI.Common4.DTO
Public Partial Class AttributeItem
Public Overridable Property Name As String
Public Overridable Property Value As String
End Class
Public Partial Class CreditCardPayment
Inherits CreditCardPayment
Public Overridable Property SubscriptionInfo As SubscriptionParameters
End Class
End Namespace
Namespace BH.CloudAPI.Common4.DTO.SalesForce
Public Partial Class AchPayment
Public Sub New()
InvoiceList = New List(Of SalesForceMemberPaymentInvoiceDetail)
End Sub
Public Overridable Property ClassName As String
Public Overridable Property UniqueId As String
Public Overridable Property CreatedDateTime As Date
Public Overridable Property ClientId As Integer
Public Overridable Property GroupId As String
Public Overridable Property UserId As String
Public Overridable Property BhUserId As Integer
Public Overridable Property Amount As Decimal
Public Overridable Property CurrencyType As String
Public Overridable Property Country As String
Public Overridable Property RoutingNumber As String
Public Overridable Property AccountNumber As String
Public Overridable Property AchReference As String
Public Overridable Property AccountType As String
Public Overridable Property IsSavingsAccount As Boolean
Public Overridable Property PayerName As String
Public Overridable Property CheckNumber As String
Public Overridable Property PreferredEmailAddress As String
Public Overridable Property Memo As String
Public Overridable Property InvoiceList As List(Of SalesForceMemberPaymentInvoiceDetail)
Public Overridable Property AutoPay As Boolean
Public Overridable Property StoreAchInfo As Boolean
Public Overridable Property EncryptionTypeId As Integer
End Class
Public Partial Class Member
Public Sub New()
FormFields = New List(Of SubscriberFormField)
Attributes = New List(Of AttributeItem)
GroupList = New List(Of Chapter)
End Sub
Public Overridable Property ClassName As String
Public Overridable Property UniqueId As String
Public Overridable Property CreatedDateTime As Date
Public Overridable Property ClientId As Integer
Public Overridable Property GroupId As String
Public Overridable Property UserId As String
Public Overridable Property AlternateUserId As String
Public Overridable Property BhUserId As Integer
Public Overridable Property FirstName As String
Public Overridable Property LastName As String
Public Overridable Property MiddleName As String
Public Overridable Property PreferredEmailAddress As String
Public Overridable Property OtherEmailAddress As String
Public Overridable Property PreferredPhoneNumber As String
Public Overridable Property PreferredAddress1 As String
Public Overridable Property PreferredAddress2 As String
Public Overridable Property PreferredCity As String
Public Overridable Property PreferredState As String
Public Overridable Property PreferredZip As String
Public Overridable Property PreferredCountry As String
Public Overridable Property AccessLevel As String
Public Overridable Property MemberStatus As String
Public Overridable Property MemberTypeClient As String
Public Overridable Property BillingType As String
Public Overridable Property FiscalYear As Integer
Public Overridable Property WorkLocation As String
Public Overridable Property DOB As Date
Public Overridable Property Paperless As String
Public Overridable Property DisplayName As String
Public Overridable Property DisableLogin As String
Public Overridable Property RecurringInvoiceSettings As RecurringInvoiceSettings
Public Overridable Property FormFields As List(Of SubscriberFormField)
Public Overridable Property Attributes As List(Of AttributeItem)
Public Overridable Property GroupList As List(Of Chapter)
End Class
Public Partial Class SalesForceMemberPaymentInvoiceDetail
Public Overridable Property ClassName As String
Public Overridable Property UniqueId As String
Public Overridable Property CreatedDateTime As Date
Public Overridable Property ClientId As Integer
Public Overridable Property Invoice As Integer
Public Overridable Property AmountPaid As String
End Class
Public Partial Class Smp
Public Overridable Property UniqueId As String
Public Overridable Property CreatedDateTime As Date
Public Overridable Property ClientId As Integer
Public Overridable Property GroupId As String
Public Overridable Property UserId As Integer
Public Overridable Property AdminId As Integer
Public Overridable Property MemberInfo As Member
Public Overridable Property CcPaymentInfo As CreditCardPayment
Public Overridable Property AchPaymentInfo As AchPayment
Public Overridable Property Subscription As Subscription
Public Overridable Property BillMeLaterInfo As BillMeLaterInformation
End Class
Public Partial Class SmpReply
Implements IHaveErrorField
Public Overridable Property UniqueId As String
Public Overridable Property CreatedDateTime As Date
Public Overridable Property ClientId As Integer
Public Overridable Property BillhighwayUserId As Integer
Public Overridable Property ConfirmationNumber As String
Public Overridable Property PaymentConfirmationNumber As Long
Public Overridable Property SubscriptionConfirmationNumber As Long
Public Overridable Property ErrorCode As Integer
Public Overridable Property ErrorMessage As String
Public Overridable Property IsError As Boolean
End Class
Public Partial Class SubscriberFormField
Public Overridable Property Name As String
Public Overridable Property Value As String
End Class
Public Partial Class Subscription
Public Sub New()
Fields = New List(Of SubscriberFormField)
End Sub
Public Overridable Property UniqueId As String
Public Overridable Property FormTemplateID As Integer
Public Overridable Property SubscriptionInvoiceID As Integer
Public Overridable Property ClientSubscriberId As String
Public Overridable Property SignupTypeID As Integer
Public Overridable Property FrequencyID As Integer
Public Overridable Property AutoRenew As Boolean
Public Overridable Property UserID As Integer
Public Overridable Property ChapMemPayID As Long
Public Overridable Property Fields As List(Of SubscriberFormField)
Public Overridable Property CreatedBy As Integer
Public Overridable Property UpdatedBy As Integer
Public Overridable Property RenewedMemberSubscriptionInvID As Long
Public Overridable Property SubscriptionTypeId As String
End Class
Public Partial Class SubscriptionParameters
Public Sub New()
Fields = New List(Of SubscriberFormField)
End Sub
Public Overridable Property FormTemplateID As Integer
Public Overridable Property SubscriptionInvoiceID As Integer
Public Overridable Property ClientSubscriberId As String
Public Overridable Property SignupTypeID As Integer
Public Overridable Property FrequencyID As Integer
Public Overridable Property AutoRenew As Boolean
Public Overridable Property CompanyID As Long
Public Overridable Property UserID As Integer
Public Overridable Property ChapMemPayID As Long
Public Overridable Property MemberSubscriptionInvID As Long
Public Overridable Property Fields As List(Of SubscriberFormField)
Public Overridable Property CreatedBy As Integer
Public Overridable Property UpdatedBy As Integer
Public Overridable Property AptifyUpdateType As Integer
Public Overridable Property RenewedMemberSubscriptionInvID As Long
Public Overridable Property ChapId As Integer
End Class
End Namespace
Namespace BH.CloudAPI.Common4.DTO.Subscriptions
Public Partial Class BillMeLaterInformation
Public Sub New()
Campaigns = New List(Of CampaignInformation)
End Sub
Public Overridable Property IsBillMeLaterPayment As Boolean
Public Overridable Property IsBillMeLaterSubscription As Boolean
Public Overridable Property MemberSubscriptionInvId As Integer
Public Overridable Property Campaigns As List(Of CampaignInformation)
End Class
Public Partial Class CampaignInformation
Public Overridable Property CampaignId As Integer
Public Overridable Property CampaignName As String
Public Overridable Property Amount As Decimal
Public Overridable Property ChapPayID As String
End Class
End Namespace
End Namespace
To override the Content-type in your clients, use the HTTP Accept Header, append the .csv suffix or ?format=csv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /SMP HTTP/1.1
Host: devapi.billhighway.com
Accept: text/csv
Content-Type: text/csv
Content-Length: length
{"UniqueId":"String","CreatedDateTime":"0001-01-01T00:00:00.0000000","ClientId":0,"GroupId":"String","UserId":0,"AdminId":0,"MemberInfo":{"ClassName":"String","UniqueId":"String","CreatedDateTime":"0001-01-01T00:00:00.0000000","ClientId":0,"GroupId":"String","UserId":"String","AlternateUserId":"String","BhUserId":0,"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":"String","FiscalYear":0,"WorkLocation":"String","DOB":"0001-01-01T00:00:00.0000000","Paperless":"String","DisplayName":"String","DisableLogin":"String","RecurringInvoiceSettings":{"DonationAmount":"String"},"FormFields":[{"Name":"String","Value":"String"}],"Attributes":[{"Name":"String","Value":"String"}],"GroupList":[{"GroupId":"String"}]},"CcPaymentInfo":{"ClassName":"String","UniqueId":"String","CreatedDateTime":"0001-01-01T00:00:00.0000000","ClientId":0,"GroupId":"String","UserId":"String","BhUserId":0,"Amount":"String","AutoPay":false,"CurrencyType":"String","Country":"String","CardReferenceOrCardNumber":"String","StoreCardInfo":false,"Address1":"String","Address2":"String","BillingCity":"String","BillingState":"String","PreferredEmailAddress":"String","Memo":"String","OpportunityId":"String","ExpMonth":0,"ExpYear":0,"Cvv":"String","PostalCode":"String","Location":"String","NameOnCard":"String","CardType":"String","InvoiceList":[{"ClassName":"String","UniqueId":"String","CreatedDateTime":"0001-01-01T00:00:00.0000000","ClientId":0,"Invoice":0,"AmountPaid":"String"}]},"AchPaymentInfo":{"ClassName":"String","UniqueId":"String","CreatedDateTime":"0001-01-01T00:00:00.0000000","ClientId":0,"GroupId":"String","UserId":"String","BhUserId":0,"Amount":0,"CurrencyType":"String","Country":"String","RoutingNumber":"String","AccountNumber":"String","AchReference":"String","AccountType":"String","IsSavingsAccount":false,"PayerName":"String","CheckNumber":"String","PreferredEmailAddress":"String","Memo":"String","InvoiceList":[{"ClassName":"String","UniqueId":"String","CreatedDateTime":"0001-01-01T00:00:00.0000000","ClientId":0,"Invoice":0,"AmountPaid":"String"}],"AutoPay":false,"StoreAchInfo":false,"EncryptionTypeId":0},"Subscription":{"UniqueId":"String","FormTemplateID":0,"SubscriptionInvoiceID":0,"ClientSubscriberId":"String","SignupTypeID":0,"FrequencyID":0,"AutoRenew":false,"UserID":0,"ChapMemPayID":0,"Fields":[{"Name":"String","Value":"String"}],"CreatedBy":0,"UpdatedBy":0,"RenewedMemberSubscriptionInvID":0,"SubscriptionTypeId":"String"},"BillMeLaterInfo":{"IsBillMeLaterPayment":false,"IsBillMeLaterSubscription":false,"MemberSubscriptionInvId":0,"Campaigns":[{"CampaignId":0,"CampaignName":"String","Amount":0,"ChapPayID":"String"}]}}
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length
{"UniqueId":"String","CreatedDateTime":"0001-01-01T00:00:00.0000000","ClientId":0,"BillhighwayUserId":0,"ConfirmationNumber":"String","PaymentConfirmationNumber":0,"SubscriptionConfirmationNumber":0,"ErrorCode":0,"ErrorMessage":"String","IsError":false}