Billhighway Cloud API

<back to all web services

SalesForcePmi

The following routes are available for this service:
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

VB.NET SalesForcePmi DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml

HTTP + XML

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: application/xml
Content-Type: application/xml
Content-Length: length

<SalesForcePmi 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>
  <ClassName>String</ClassName>
  <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>
    <SalesForceInvoice>
      <BhUserId>0</BhUserId>
      <ClassName>String</ClassName>
      <ClientId>0</ClientId>
      <CreatedDateTime>0001-01-01T00:00:00</CreatedDateTime>
      <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>
        <SalesForceInvoiceItem>
          <AccountsReceivableAccount>String</AccountsReceivableAccount>
          <ActPatternTypeId>0</ActPatternTypeId>
          <AmountDue>String</AmountDue>
          <ClassName>String</ClassName>
          <ClientId>0</ClientId>
          <CostCenter>String</CostCenter>
          <CreatedDateTime>0001-01-01T00:00:00</CreatedDateTime>
          <CreditExpenseAccount>String</CreditExpenseAccount>
          <InvoiceClearingAccount>String</InvoiceClearingAccount>
          <LiabilityAccount>String</LiabilityAccount>
          <ProductName>String</ProductName>
          <ProductType>String</ProductType>
          <RecognitionPeriod>0</RecognitionPeriod>
          <Region>String</Region>
          <RevenueAccount>String</RevenueAccount>
          <TermEndDate>0001-01-01T00:00:00</TermEndDate>
          <TermStartDate>0001-01-01T00:00:00</TermStartDate>
          <UniqueId>String</UniqueId>
        </SalesForceInvoiceItem>
      </InvoiceItems>
      <InvoiceNo>0</InvoiceNo>
      <OpportunityId>String</OpportunityId>
      <UniqueId>String</UniqueId>
      <UserId>String</UserId>
    </SalesForceInvoice>
  </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>
  <UniqueId>String</UniqueId>
</SalesForcePmi>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<SalesForcePmiReply 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>
  <ClassName>String</ClassName>
  <ClientId>0</ClientId>
  <CreatedDateTime>0001-01-01T00:00:00</CreatedDateTime>
  <ErrorCode>0</ErrorCode>
  <ErrorMessage>String</ErrorMessage>
  <UniqueId>String</UniqueId>
</SalesForcePmiReply>