| Requires any of the roles: | Agent, Administrator, Agent, Administrator, Agent, Administrator |
| GET | /v1/CustomerPayments/{OrderID} | ||
|---|---|---|---|
| POST,PUT,OPTIONS | /v1/CustomerPayments |
import Foundation
import ServiceStack
public class CustomerPaymentsRequest : Codable
{
public var customer:Customer
public var orderID:String
public var paymentInfo:PaymentInfo
required public init(){}
}
public class Customer : Codable
{
public var id:Int
public var customerCode:String
public var businessName:String
public var firstName:String
public var lastName:String
public var email:String
public var uid:String
public var agentId:Int
required public init(){}
}
public class PaymentInfo : Codable
{
public var paymentType:String
public var cardNumber:String
public var expDate:String
public var ccv:String
public var stripeToken:String
public var agentId:Int
required public init(){}
}
public class CustomerPaymentsResponse : Codable
{
public var responseStatus:ResponseStatus
public var paymentIntentSuccess:Bool
public var paymentSuccess:Bool
public var subscriptionSuccess:Bool
public var message:String
public var receiptUrl:String
public var agentNumber:String
public var clientSecret:String
public var customerPayment:CustomerPayment
public var publicOrderID:String
required public init(){}
}
public class CustomerPayment : Codable
{
public var id:Int
public var customerID:Int
public var orderHeaderID:Int
public var amount:String
public var approved:Bool
public var authCode:String
public var cardNumber:String
public var message:String
public var responseCode:Int
public var transactionId:String
public var transactionDate:Date
public var fullResponse:String
public var paymentStatus:Int
public var paymentType:Int
required public init(){}
}
Swift CustomerPaymentsRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .json suffix or ?format=json
To embed the response in a jsonp callback, append ?callback=myCallback
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /v1/CustomerPayments HTTP/1.1
Host: api.dev.dynamics.trendsic.com
Accept: application/json
Content-Type: application/json
Content-Length: length
{"Customer":{"ID":0,"CustomerCode":"String","BusinessName":"String","FirstName":"String","LastName":"String","Email":"String","UID":"00000000000000000000000000000000","AgentId":0},"OrderID":"00000000000000000000000000000000","PaymentInfo":{"PaymentType":"String","CardNumber":"String","ExpDate":"String","CCV":"String","StripeToken":"String","AgentId":0}}
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: length
{"ResponseStatus":{"ErrorCode":"String","Message":"String","StackTrace":"String","Errors":[{"ErrorCode":"String","FieldName":"String","Message":"String","Meta":{"String":"String"}}],"Meta":{"String":"String"}},"PaymentIntentSuccess":false,"PaymentSuccess":false,"SubscriptionSuccess":false,"Message":"String","ReceiptUrl":"String","AgentNumber":"String","ClientSecret":"String","CustomerPayment":{"ID":0,"CustomerID":0,"OrderHeaderID":0,"Amount":"String","Approved":false,"AuthCode":"String","CardNumber":"String","Message":"String","ResponseCode":0,"TransactionId":"String","TransactionDate":"0001-01-01T00:00:00.0000000","FullResponse":"String","PaymentStatus":0,"PaymentType":0},"PublicOrderID":"String"}