export class ResponseBase
{
public Status: boolean;
public Message: string;
public Errors: { [index:string]: string[]; };
public constructor(init?: Partial<ResponseBase>) { (Object as any).assign(this, init); }
}
export class InitialisePaymentResponse extends ResponseBase
{
public TransactionId: string;
public Signature: string;
public Url: string;
public constructor(init?: Partial<InitialisePaymentResponse>) { super(init); (Object as any).assign(this, init); }
}
export enum PaymentTypeEnum
{
OneTime = 1,
Recurring = 2,
}
export enum FrequencyEnum
{
Daily = 1,
Weekly = 2,
Monthly = 3,
Quarterly = 4,
Biannually = 5,
Annually = 6,
}
export class InitialisePaymentRequest
{
public PaymentType: PaymentTypeEnum;
public Uuid: string;
public ReferenceNumber: string;
public Amount: number;
public Currency: string;
public ItemName: string;
public ItemDescription: string;
public BillingDate: string;
public Frequency: FrequencyEnum;
public Cycles: number;
public constructor(init?: Partial<InitialisePaymentRequest>) { (Object as any).assign(this, init); }
}
TypeScript InitialisePaymentRequest 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 /jsv/reply/InitialisePaymentRequest HTTP/1.1
Host: duengageapi.uat.scadsoftware.com
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
PaymentType: OneTime,
Uuid: 00000000000000000000000000000000,
ReferenceNumber: String,
Amount: 0,
Currency: String,
ItemName: String,
ItemDescription: String,
BillingDate: 0001-01-01,
Frequency: Daily,
Cycles: 0
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
TransactionId: String,
Signature: String,
Url: String,
Status: False,
Message: String,
Errors:
{
String:
[
String
]
}
}