Billhighway Cloud API

<back to all web services

AchPaymentCollection

The following routes are available for this service:
POST/api/SalesForce/AchPaymentProcesses the ACH Payments.Validates the input values and processes the ACH Payments.
POST/payments/achProcesses the ACH Payments.Validates the input values and processes the ACH Payments.
namespace BH.CloudAPI.Common4.DTO.SalesForce

open System
open System.Collections
open System.Collections.Generic
open System.Runtime.Serialization
open ServiceStack
open ServiceStack.DataAnnotations

    [<AllowNullLiteral>]
    type AchPaymentReply() = 
        member val ClassName:String = null with get,set
        member val UniqueId:String = null with get,set
        member val CreatedDateTime:DateTime = new DateTime() with get,set
        member val ClientId:Int32 = new Int32() with get,set
        member val TransactionId:String = null with get,set
        member val ErrorCode:Int32 = new Int32() with get,set
        member val ErrorMessage:String = null with get,set
        [<ApiMember(ExcludeInSchema=true)>]
        member val IsError:Boolean = new Boolean() with get,set

    [<AllowNullLiteral>]
    type AchPaymentReplyCollection() = 
        member val AchReplyCollection:ResizeArray<AchPaymentReply> = new ResizeArray<AchPaymentReply>() with get,set

    [<AllowNullLiteral>]
    type SalesForceMemberPaymentInvoiceDetail() = 
        member val ClassName:String = null with get,set
        member val UniqueId:String = null with get,set
        member val CreatedDateTime:DateTime = new DateTime() with get,set
        member val ClientId:Int32 = new Int32() with get,set
        member val Invoice:Int32 = new Int32() with get,set
        member val AmountPaid:String = null with get,set

    [<AllowNullLiteral>]
    type AchPayment() = 
        member val ClassName:String = null with get,set
        member val UniqueId:String = null with get,set
        member val CreatedDateTime:DateTime = new DateTime() with get,set
        member val ClientId:Int32 = new Int32() with get,set
        member val GroupId:String = null with get,set
        member val UserId:String = null with get,set
        member val BhUserId:Int32 = new Int32() with get,set
        member val Amount:Decimal = new Decimal() with get,set
        member val CurrencyType:String = null with get,set
        member val Country:String = null with get,set
        member val RoutingNumber:String = null with get,set
        member val AccountNumber:String = null with get,set
        member val AchReference:String = null with get,set
        member val AccountType:String = null with get,set
        member val IsSavingsAccount:Boolean = new Boolean() with get,set
        member val PayerName:String = null with get,set
        member val CheckNumber:String = null with get,set
        member val PreferredEmailAddress:String = null with get,set
        member val Memo:String = null with get,set
        member val InvoiceList:ResizeArray<SalesForceMemberPaymentInvoiceDetail> = new ResizeArray<SalesForceMemberPaymentInvoiceDetail>() with get,set
        member val AutoPay:Boolean = new Boolean() with get,set
        member val StoreAchInfo:Boolean = new Boolean() with get,set
        member val EncryptionTypeId:Int32 = new Int32() with get,set

    [<AllowNullLiteral>]
    type AchPaymentCollection() = 
        member val AchPaymentList:ResizeArray<AchPayment> = new ResizeArray<AchPayment>() with get,set

F# AchPaymentCollection 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 /api/SalesForce/AchPayment HTTP/1.1 
Host: devapi.billhighway.com 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	AchPaymentList: 
	[
		{
			ClassName: String,
			UniqueId: String,
			CreatedDateTime: 0001-01-01,
			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-01,
					ClientId: 0,
					Invoice: 0,
					AmountPaid: String
				}
			],
			AutoPay: False,
			StoreAchInfo: False,
			EncryptionTypeId: 0
		}
	]
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	AchReplyCollection: 
	[
		{
			ClassName: String,
			UniqueId: String,
			CreatedDateTime: 0001-01-01,
			ClientId: 0,
			TransactionId: String,
			ErrorCode: 0,
			ErrorMessage: String,
			IsError: False
		}
	]
}