| POST | /integrations/api/v2/{tokenType}/charge/token |
|---|
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 AttributeItem() =
member val Name:String = null with get,set
member val Value:String = null with get,set
[<AllowNullLiteral>]
type CreditCardBillingAddressItem() =
member val Address1:String = null with get,set
member val Address2:String = null with get,set
member val City:String = null with get,set
member val PostalCode:String = null with get,set
member val Region:String = null with get,set
member val Country:String = null with get,set
member val Attributes:ResizeArray<AttributeItem> = new ResizeArray<AttributeItem>() with get,set
[<AllowNullLiteral>]
type CreditCardChargeDetailsV2() =
member val CardType:String = null with get,set
member val ExpMonth:Int32 = new Int32() with get,set
member val ExpYear:Int32 = new Int32() with get,set
member val Last4:String = null with get,set
member val Address:CreditCardBillingAddressItem = null with get,set
[<AllowNullLiteral>]
type AchChargeDetailsV2() =
member val AccountType:String = null with get,set
member val RoutingNumber:String = null with get,set
member val AccountNumberLast4:String = null with get,set
member val BankName:String = null with get,set
[<AllowNullLiteral>]
type ChargeTokenV2Rs() =
member val Token:String = null with get,set
member val Amount:Int32 = new Int32() with get,set
member val TokenType:String = null with get,set
member val Description:String = null with get,set
member val ExpiresOn:DateTime = new DateTime() with get,set
member val Currency:String = null with get,set
member val Usages:Int32 = new Int32() with get,set
member val CardDetails:CreditCardChargeDetailsV2 = null with get,set
member val AchDetails:AchChargeDetailsV2 = null with get,set
[<AllowNullLiteral>]
type ChargeTokenOptions() =
member val Usages:Int32 = new Int32() with get,set
member val Duration:Int32 = new Int32() with get,set
[<AllowNullLiteral>]
type CreditCardChargeItem() =
member val NameOnCard:String = null with get,set
member val ExpMonth:Int32 = new Int32() with get,set
member val ExpYear:Int32 = new Int32() with get,set
member val CardNumber:String = null with get,set
member val Cvv:String = null with get,set
member val Address:CreditCardBillingAddressItem = null with get,set
[<AllowNullLiteral>]
type AchChargeItem() =
member val AccountNumber:String = null with get,set
member val RoutingNumber:String = null with get,set
member val AccountType:String = null with get,set
member val AccountHolderName:String = null with get,set
[<AllowNullLiteral>]
type ReferenceIdTypedAssociationItem() =
member val Value:String = null with get,set
member val Type:String = null with get,set
[<AllowNullLiteral>]
type ChargeTokenRqBase() =
member val tokenType:String = null with get,set
member val Amount:Int32 = new Int32() with get,set
member val Description:String = null with get,set
member val Options:ChargeTokenOptions = null with get,set
member val CardInfo:CreditCardChargeItem = null with get,set
member val AchInfo:AchChargeItem = null with get,set
member val ReferenceIds:ResizeArray<ReferenceIdTypedAssociationItem> = new ResizeArray<ReferenceIdTypedAssociationItem>() with get,set
[<AllowNullLiteral>]
type ChargeTokenV2Rq() =
inherit ChargeTokenRqBase()
To override the Content-type in your clients, use the HTTP Accept Header, append the .csv suffix or ?format=csv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /integrations/api/v2/{tokenType}/charge/token HTTP/1.1
Host: devapi.billhighway.com
Accept: text/csv
Content-Type: text/csv
Content-Length: length
{"tokenType":"String","Amount":0,"Description":"String","Options":{"Usages":0,"Duration":0},"CardInfo":{"NameOnCard":"String","ExpMonth":0,"ExpYear":0,"CardNumber":"String","Cvv":"String","Address":{"Address1":"String","Address2":"String","City":"String","PostalCode":"String","Region":"String","Country":"String","Attributes":[{"Name":"String","Value":"String"}]}},"AchInfo":{"AccountNumber":"String","RoutingNumber":"String","AccountType":"String","AccountHolderName":"String"},"ReferenceIds":[{"Value":"String","Type":"String"}]}
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length
{"Token":"String","Amount":0,"TokenType":"String","Description":"String","ExpiresOn":"0001-01-01T00:00:00.0000000","Currency":"String","Usages":0,"CardDetails":{"CardType":"String","ExpMonth":0,"ExpYear":0,"Last4":"String","Address":{"Address1":"String","Address2":"String","City":"String","PostalCode":"String","Region":"String","Country":"String","Attributes":[{"Name":"String","Value":"String"}]}},"AchDetails":{"AccountType":"String","RoutingNumber":"String","AccountNumberLast4":"String","BankName":"String"}}