| Requires any of the roles: | Admin, TeamAdmin |
| POST | /recurringPayments |
|---|
import Foundation
import ServiceStack
public class RecurringPaymentCreateRequest : Codable
{
public var phoneVerificationNumber:String?
public var token:String?
public var panLastFour:String?
public var expYear:String?
public var expMonth:String?
public var deviceId:String?
public var monthlyPrice:Int?
public var subscriptionLength:Int?
public var chargeFirstMonth:Bool?
public var ownerId:Int?
public var ownerCardTypeId:Int?
public var paymentTokenId:String?
public var transactionFee:Double?
public var currency:String?
public var mode:String?
public var startDate:Date?
public var lastPayment:Date?
public var nextPayment:Date?
public var jsonResponse:String?
public var termsVersion:String?
public var termsAcceptedAt:Date?
required public init(){}
}
public class RecurringPaymentGetResult : Codable
{
public var item:RecurringPayment?
public var alreadyExisted:Bool?
public var statusCode:Int?
public var message:String?
required public init(){}
}
public class RecurringPayment : Codable
{
public var id:Int?
public var status:String?
public var phoneVerificationNumber:String?
public var deviceId:String?
public var panLastFour:String?
public var expYear:String?
public var expMonth:String?
public var token:String?
public var monthlyPrice:Int?
public var subscriptionLength:Int?
public var monthsPaid:Int?
public var chargeFirstMonth:Bool?
// @References(typeof(EventOwner))
public var ownerId:Int?
public var ownerCardTypeId:Int?
// @StringLength(Int32.max)
public var jsonResponse:String?
public var startDate:Date?
public var lastPayment:Date?
public var nextPayment:Date?
public var paymentTokenId:String?
public var declinedCounter:Int?
public var transactionFee:Double?
public var termsVersion:String?
public var termsAcceptedAt:Date?
public var currency:String?
public var mode:String?
public var lastDeclineReason:String?
public var lastDeclineDate:Date?
public var lastDunningStage:UInt8?
public var lastDunningNotifiedAt:Date?
required public init(){}
}
Swift RecurringPaymentCreateRequest 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 /recurringPayments HTTP/1.1
Host: stubbur-app.azurewebsites.net
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
phoneVerificationNumber: String,
token: String,
panLastFour: String,
expYear: String,
expMonth: String,
deviceId: String,
monthlyPrice: 0,
subscriptionLength: 0,
chargeFirstMonth: False,
ownerId: 0,
ownerCardTypeId: 0,
paymentTokenId: String,
transactionFee: 0,
currency: String,
mode: String,
startDate: 0001-01-01,
lastPayment: 0001-01-01,
nextPayment: 0001-01-01,
jsonResponse: String,
termsVersion: String,
termsAcceptedAt: 0001-01-01
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
item:
{
id: 0,
status: String,
phoneVerificationNumber: String,
deviceId: String,
panLastFour: String,
expYear: String,
expMonth: String,
token: String,
monthlyPrice: 0,
subscriptionLength: 0,
monthsPaid: 0,
chargeFirstMonth: False,
ownerId: 0,
ownerCardTypeId: 0,
jsonResponse: String,
startDate: 0001-01-01,
lastPayment: 0001-01-01,
nextPayment: 0001-01-01,
paymentTokenId: String,
declinedCounter: 0,
transactionFee: 0,
termsVersion: String,
termsAcceptedAt: 0001-01-01,
currency: String,
mode: String,
lastDeclineReason: String,
lastDeclineDate: 0001-01-01,
lastDunningStage: 0,
lastDunningNotifiedAt: 0001-01-01
},
alreadyExisted: False,
statusCode: 0,
message: String
}