| POST | /ivr/payment/cc |
|---|
import Foundation
import ServiceStack
public class IvrCcPaymentRequest : IvrCcPaymentRequest
{
public var paymentChoice:String?
required public init(){ super.init() }
private enum CodingKeys : String, CodingKey {
case paymentChoice
}
required public init(from decoder: Decoder) throws {
try super.init(from: decoder)
let container = try decoder.container(keyedBy: CodingKeys.self)
paymentChoice = try container.decodeIfPresent(String.self, forKey: .paymentChoice)
}
public override func encode(to encoder: Encoder) throws {
try super.encode(to: encoder)
var container = encoder.container(keyedBy: CodingKeys.self)
if paymentChoice != nil { try container.encode(paymentChoice, forKey: .paymentChoice) }
}
}
public class IvrCcPaymentResponse : IvrCcPaymentResponse
{
required public init(){ super.init() }
required public init(from decoder: Decoder) throws {
try super.init(from: decoder)
}
public override func encode(to encoder: Encoder) throws {
try super.encode(to: encoder)
}
}
Swift IvrCcPaymentRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /ivr/payment/cc HTTP/1.1
Host: devapi.billhighway.com
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<IvrCcPaymentRequest xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/BH.CloudAPI.Common4.DTO.IVR">
<CardNumber xmlns="http://schemas.datacontract.org/2004/07/BH.CloudAPI.Common.DTO.IVR">String</CardNumber>
<CardType xmlns="http://schemas.datacontract.org/2004/07/BH.CloudAPI.Common.DTO.IVR">String</CardType>
<CvcNumber xmlns="http://schemas.datacontract.org/2004/07/BH.CloudAPI.Common.DTO.IVR">String</CvcNumber>
<ExpirationMonthYear xmlns="http://schemas.datacontract.org/2004/07/BH.CloudAPI.Common.DTO.IVR">String</ExpirationMonthYear>
<OtherAmount xmlns="http://schemas.datacontract.org/2004/07/BH.CloudAPI.Common.DTO.IVR">0</OtherAmount>
<PaymentChoice xmlns="http://schemas.datacontract.org/2004/07/BH.CloudAPI.Common.DTO.IVR">String</PaymentChoice>
<UserID xmlns="http://schemas.datacontract.org/2004/07/BH.CloudAPI.Common.DTO.IVR">0</UserID>
</IvrCcPaymentRequest>
HTTP/1.1 200 OK Content-Type: application/xml Content-Length: length <IvrCcPaymentResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/BH.CloudAPI.Common4.DTO.IVR"> <ErrorCode xmlns="http://schemas.datacontract.org/2004/07/BH.CloudAPI.Common.DTO">String</ErrorCode> <ErrorMessage xmlns="http://schemas.datacontract.org/2004/07/BH.CloudAPI.Common.DTO">String</ErrorMessage> <GatewayConfirmationNumber xmlns="http://schemas.datacontract.org/2004/07/BH.CloudAPI.Common.DTO">String</GatewayConfirmationNumber> <TransactionId xmlns="http://schemas.datacontract.org/2004/07/BH.CloudAPI.Common.DTO">String</TransactionId> </IvrCcPaymentResponse>