Billhighway Cloud API

<back to all web services

CreditCardPaymentCollection

The following routes are available for this service:
POST/payments/creditcard
namespace BH.CloudAPI.Common4.DTO

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

    [<AllowNullLiteral>]
    type CreditCardPaymentReply() = 
        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

    [<AllowNullLiteral>]
    type SubscriberFormField() = 
        member val Name:String = null with get,set
        member val Value:String = null with get,set

    [<AllowNullLiteral>]
    type SubscriptionParameters() = 
        member val FormTemplateID:Int32 = new Int32() with get,set
        member val SubscriptionInvoiceID:Int32 = new Int32() with get,set
        member val ClientSubscriberId:String = null with get,set
        member val SignupTypeID:Int32 = new Int32() with get,set
        member val FrequencyID:Int32 = new Int32() with get,set
        member val AutoRenew:Boolean = new Boolean() with get,set
        member val CompanyID:Int64 = new Int64() with get,set
        member val UserID:Int32 = new Int32() with get,set
        member val ChapMemPayID:Int64 = new Int64() with get,set
        member val MemberSubscriptionInvID:Int64 = new Int64() with get,set
        member val Fields:ResizeArray<SubscriberFormField> = new ResizeArray<SubscriberFormField>() with get,set
        member val CreatedBy:Int32 = new Int32() with get,set
        member val UpdatedBy:Int32 = new Int32() with get,set
        member val AptifyUpdateType:Int32 = new Int32() with get,set
        member val RenewedMemberSubscriptionInvID:Int64 = new Int64() with get,set
        member val ChapId:Int32 = new Int32() with get,set

    [<AllowNullLiteral>]
    type CreditCardPayment() = 
        inherit CreditCardPayment()
        member val SubscriptionInfo:SubscriptionParameters = null with get,set

    [<AllowNullLiteral>]
    type CreditCardPaymentCollection() = 
        member val CreditCardPaymentList:ResizeArray<CreditCardPayment> = new ResizeArray<CreditCardPayment>() with get,set

F# CreditCardPaymentCollection 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 /payments/creditcard HTTP/1.1 
Host: devapi.billhighway.com 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

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

{
	ClassName: String,
	UniqueId: String,
	CreatedDateTime: 0001-01-01,
	ClientId: 0,
	TransactionId: String,
	ErrorCode: 0,
	ErrorMessage: String
}