digitaluapi

<back to all web services

InitialisePaymentRequest

using System;
using System.IO;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using ServiceStack;
using ServiceStack.DataAnnotations;
using digitaluapi.ServiceModel;

namespace digitaluapi.ServiceModel
{
    public enum FrequencyEnum
    {
        Daily = 1,
        Weekly = 2,
        Monthly = 3,
        Quarterly = 4,
        Biannually = 5,
        Annually = 6,
    }

    public partial class InitialisePaymentRequest
    {
        public virtual PaymentTypeEnum PaymentType { get; set; }
        public virtual Guid Uuid { get; set; }
        public virtual string ReferenceNumber { get; set; }
        public virtual decimal Amount { get; set; }
        public virtual string Currency { get; set; }
        public virtual string ItemName { get; set; }
        public virtual string ItemDescription { get; set; }
        public virtual DateTime BillingDate { get; set; }
        public virtual FrequencyEnum Frequency { get; set; }
        public virtual int Cycles { get; set; }
    }

    public partial class InitialisePaymentResponse
        : ResponseBase
    {
        public virtual string TransactionId { get; set; }
        public virtual string Signature { get; set; }
        public virtual string Url { get; set; }
    }

    public enum PaymentTypeEnum
    {
        OneTime = 1,
        Recurring = 2,
    }

    public partial class ResponseBase
    {
        public virtual bool Status { get; set; }
        public virtual string Message { get; set; }
        public virtual Dictionary<string, List<String>> Errors { get; set; }
    }

}

C# InitialisePaymentRequest DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv

HTTP + 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
		]
	}
}