Billhighway Cloud API

<back to all web services

AchDonation

The following routes are available for this service:
POST/v1.2/payments/ach
Imports System
Imports System.Collections
Imports System.Collections.Generic
Imports System.Runtime.Serialization
Imports ServiceStack
Imports ServiceStack.DataAnnotations
Imports BH.CloudAPI.Common4.DTO
Imports BH.CloudAPI.Common

Namespace Global

    Namespace BH.CloudAPI.Common

        <DataContract(Namespace:="www.billhighway.com/api")>
        Public Partial Class LegacyApiResponse
            Implements IHaveErrorField
            <DataMember>
            Public Overridable Property amount As Nullable(Of Decimal)

            <DataMember>
            Public Overridable Property confirmationNumber As String

            <DataMember>
            Public Overridable Property responseCode As String

            <DataMember>
            Public Overridable Property responseDescription As String

            <DataMember>
            Public Overridable Property resultCode As ResultCode
        End Class

        Public Enum ResultCode
            Success = 0
            Duplicate = -7
            NotAvailable = -6
            NotFound = -5
            GeneralError = -4
            UnexpectedError = -3
            CreditCardDeclined = -2
            DataValidationFailure = -1
        End Enum
    End Namespace

    Namespace BH.CloudAPI.Common4.DTO

        Public Partial Class AchDonation
            Inherits AchDonation
            Implements ICanBeRecurring
            Implements IReturnLegacyException
        End Class
    End Namespace
End Namespace

VB.NET AchDonation DTOs

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

HTTP + JSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /v1.2/payments/ach HTTP/1.1 
Host: devapi.billhighway.com 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	ClientId: 0,
	GroupId: 0,
	Amount: 0,
	RoutingNumber: String,
	AccountNumber: String,
	PayerName: String,
	CheckNumber: String,
	EmailAddress: String,
	Memo: String,
	Occurs: String,
	NumberOfOccurences: String
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	amount: 0,
	confirmationNumber: String,
	responseCode: String,
	responseDescription: String,
	resultCode: 0
}