| POST | /api/SalesForce/PMI |
|---|
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
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
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 SalesForceCreateApplyCredit
Public Sub New()
InvoiceDetails = New List(Of SalesForceCreditInvoiceDetails)
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 CreditId As Integer
Public Overridable Property CurrencyType As String
Public Overridable Property CreditType As String
Public Overridable Property Notes As String
Public Overridable Property InvoiceDetails As List(Of SalesForceCreditInvoiceDetails)
End Class
Public Partial Class SalesForceCreditCardPayment
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 String
Public Overridable Property AutoPay As Boolean
Public Overridable Property CurrencyType As String
Public Overridable Property Country As String
Public Overridable Property CardReferenceOrCardNumber As String
Public Overridable Property StoreCardInfo As Boolean
Public Overridable Property Address1 As String
Public Overridable Property Address2 As String
Public Overridable Property BillingCity As String
Public Overridable Property BillingState As String
Public Overridable Property PreferredEmailAddress As String
Public Overridable Property Memo As String
Public Overridable Property OpportunityId As String
Public Overridable Property ExpMonth As Integer
Public Overridable Property ExpYear As Integer
Public Overridable Property Cvv As String
Public Overridable Property PostalCode As String
Public Overridable Property Location As String
Public Overridable Property NameOnCard As String
Public Overridable Property CardType As String
Public Overridable Property InvoiceList As List(Of SalesForceMemberPaymentInvoiceDetail)
End Class
Public Partial Class SalesForceCreditInvoiceDetails
Public Overridable Property Invoice As Long
Public Overridable Property AmountPaid As Decimal
Public Overridable Property Region As String
Public Overridable Property CostCenter As String
End Class
Public Partial Class SalesForceInvoice
Public Sub New()
InvoiceItems = New List(Of SalesForceInvoiceItem)
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 OpportunityId As String
Public Overridable Property InvoiceDueDate As Date
Public Overridable Property Installments As Integer
Public Overridable Property Frequency As Integer
Public Overridable Property BhUserId As Integer
Public Overridable Property Description As String
Public Overridable Property Deliver As Boolean
Public Overridable Property CurrencyType As String
Public Overridable Property InvoiceItems As List(Of SalesForceInvoiceItem)
Public Overridable Property InvoiceNo As Integer
Public Overridable Property InvoiceAmt As Decimal
Public Overridable Property ExternalInvBatchNo As String
Public Overridable Property ExemptFromLateFee As Boolean
End Class
Public Partial Class SalesForceInvoiceItem
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 ProductName As String
Public Overridable Property AmountDue As String
Public Overridable Property ProductType As String
Public Overridable Property ActPatternTypeId As Integer
Public Overridable Property TermStartDate As Date
Public Overridable Property TermEndDate As Date
Public Overridable Property RecognitionPeriod As Integer
Public Overridable Property RevenueAccount As String
Public Overridable Property AccountsReceivableAccount As String
Public Overridable Property LiabilityAccount As String
Public Overridable Property CreditExpenseAccount As String
Public Overridable Property InvoiceClearingAccount As String
Public Overridable Property CostCenter As String
Public Overridable Property Region As String
End Class
Public Partial Class SalesForceMember
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 SalesForcePmi
Public Sub New()
InvoiceCollection = New List(Of SalesForceInvoice)
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 Integer
Public Overridable Property MemberInfo As SalesForceMember
Public Overridable Property InvoiceCollection As List(Of SalesForceInvoice)
Public Overridable Property CcPaymentInfo As SalesForceCreditCardPayment
Public Overridable Property CreditInfo As SalesForceCreateApplyCredit
Public Overridable Property AchPaymentInfo As AchPayment
Public Overridable Property LockboxId As Long
End Class
Public Partial Class SalesForcePmiReply
Implements IHaveErrorField
Public Sub New()
BhInvoiceBatchId = New List(Of Integer)
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 BillhighwayPaymentConfirmationNumber As String
Public Overridable Property BillhighwayUserId As Integer
Public Overridable Property BhInvoiceBatchId As List(Of Integer)
Public Overridable Property ChapMemPayid 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
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 /api/SalesForce/PMI HTTP/1.1
Host: devapi.billhighway.com
Accept: text/csv
Content-Type: text/csv
Content-Length: length
{"ClassName":"String","UniqueId":"String","CreatedDateTime":"0001-01-01T00:00:00.0000000","ClientId":0,"GroupId":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"}]},"InvoiceCollection":[{"ClassName":"String","UniqueId":"String","CreatedDateTime":"0001-01-01T00:00:00.0000000","ClientId":0,"GroupId":"String","UserId":"String","OpportunityId":"String","InvoiceDueDate":"0001-01-01T00:00:00.0000000","Installments":0,"Frequency":0,"BhUserId":0,"Description":"String","Deliver":false,"CurrencyType":"String","InvoiceItems":[{"ClassName":"String","UniqueId":"String","CreatedDateTime":"0001-01-01T00:00:00.0000000","ClientId":0,"ProductName":"String","AmountDue":"String","ProductType":"String","ActPatternTypeId":0,"TermStartDate":"0001-01-01T00:00:00.0000000","TermEndDate":"0001-01-01T00:00:00.0000000","RecognitionPeriod":0,"RevenueAccount":"String","AccountsReceivableAccount":"String","LiabilityAccount":"String","CreditExpenseAccount":"String","InvoiceClearingAccount":"String","CostCenter":"String","Region":"String"}],"InvoiceNo":0,"InvoiceAmt":0,"ExternalInvBatchNo":"String","ExemptFromLateFee":false}],"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"}]},"CreditInfo":{"ClassName":"String","UniqueId":"String","CreatedDateTime":"0001-01-01T00:00:00.0000000","ClientId":0,"GroupId":"String","UserId":"String","BhUserId":0,"CreditId":0,"CurrencyType":"String","CreditType":"String","Notes":"String","InvoiceDetails":[{"Invoice":0,"AmountPaid":0,"Region":"String","CostCenter":"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},"LockboxId":0}
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length
{"ClassName":"String","UniqueId":"String","CreatedDateTime":"0001-01-01T00:00:00.0000000","ClientId":0,"BillhighwayPaymentConfirmationNumber":"String","BillhighwayUserId":0,"BhInvoiceBatchId":[0],"ChapMemPayid":0,"ErrorCode":0,"ErrorMessage":"String","IsError":true}