| POST | /payments/creditcard |
|---|
import java.math.*
import java.util.*
import net.servicestack.client.*
open class CreditCardPaymentCollection
{
var CreditCardPaymentList:ArrayList<CreditCardPayment> = ArrayList<CreditCardPayment>()
}
open class CreditCardPayment : CreditCardPayment()
{
var SubscriptionInfo:SubscriptionParameters? = null
}
open class SubscriptionParameters
{
var FormTemplateID:Int? = null
var SubscriptionInvoiceID:Int? = null
var ClientSubscriberId:String? = null
var SignupTypeID:Int? = null
var FrequencyID:Int? = null
var AutoRenew:Boolean? = null
var CompanyID:Long? = null
var UserID:Int? = null
var ChapMemPayID:Long? = null
var MemberSubscriptionInvID:Long? = null
var Fields:ArrayList<SubscriberFormField> = ArrayList<SubscriberFormField>()
var CreatedBy:Int? = null
var UpdatedBy:Int? = null
var AptifyUpdateType:Int? = null
var RenewedMemberSubscriptionInvID:Long? = null
var ChapId:Int? = null
}
open class SubscriberFormField
{
var Name:String? = null
var Value:String? = null
}
open class CreditCardPaymentReply
{
var ClassName:String? = null
var UniqueId:String? = null
var CreatedDateTime:Date? = null
var ClientId:Int? = null
var TransactionId:String? = null
var ErrorCode:Int? = null
var ErrorMessage:String? = null
}
Kotlin CreditCardPaymentCollection DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=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
}