POST | /Initiate |
---|
import java.math.*;
import java.util.*;
import net.servicestack.client.*;
public class dtos
{
@DataContract
public static class InitiateRequest
{
@DataMember
public RequestorCredentials Credentials = null;
@DataMember
public Card CardNumberInfo = null;
@DataMember
public String ExpirationDate = null;
@DataMember
public Integer Amount = null;
@DataMember
public String CurrencyCode = null;
@DataMember
public EBTIntiateTransStatus TransType = null;
public RequestorCredentials getCredentials() { return Credentials; }
public InitiateRequest setCredentials(RequestorCredentials value) { this.Credentials = value; return this; }
public Card getCardNumberInfo() { return CardNumberInfo; }
public InitiateRequest setCardNumberInfo(Card value) { this.CardNumberInfo = value; return this; }
public String getExpirationDate() { return ExpirationDate; }
public InitiateRequest setExpirationDate(String value) { this.ExpirationDate = value; return this; }
public Integer getAmount() { return Amount; }
public InitiateRequest setAmount(Integer value) { this.Amount = value; return this; }
public String getCurrencyCode() { return CurrencyCode; }
public InitiateRequest setCurrencyCode(String value) { this.CurrencyCode = value; return this; }
public EBTIntiateTransStatus getTransType() { return TransType; }
public InitiateRequest setTransType(EBTIntiateTransStatus value) { this.TransType = value; return this; }
}
public static class RequestorCredentials
{
@Required()
public String MerchantId = null;
@Required()
public String UserName = null;
@Required()
public String Password = null;
@Required()
public String Version = null;
public String getMerchantId() { return MerchantId; }
public RequestorCredentials setMerchantId(String value) { this.MerchantId = value; return this; }
public String getUserName() { return UserName; }
public RequestorCredentials setUserName(String value) { this.UserName = value; return this; }
public String getPassword() { return Password; }
public RequestorCredentials setPassword(String value) { this.Password = value; return this; }
public String getVersion() { return Version; }
public RequestorCredentials setVersion(String value) { this.Version = value; return this; }
}
public static class Card
{
public CardInfoType CardDataType = null;
public String CardNumberData = null;
public String KeyID = null;
public CardInfoType getCardDataType() { return CardDataType; }
public Card setCardDataType(CardInfoType value) { this.CardDataType = value; return this; }
public String getCardNumberData() { return CardNumberData; }
public Card setCardNumberData(String value) { this.CardNumberData = value; return this; }
public String getKeyID() { return KeyID; }
public Card setKeyID(String value) { this.KeyID = value; return this; }
}
public static enum CardInfoType
{
CardNumber,
Token,
Track,
Emv,
Encrypted,
Dpan,
ApplePay,
GooglePay,
SamsungPay,
CpToken,
EncryptedEnhanced,
EncryptedJWE;
}
public static enum EBTIntiateTransStatus
{
ECommerce,
Ebt,
MoneyTransfer,
Wic;
}
@DataContract
public static class Initiate extends PaysecureResponseInternal
{
@DataMember
public String TranId = null;
@DataMember
public String ErrorMessage = null;
@DataMember
public String ErrorCode = null;
@DataMember
public String AccuId = null;
public String getTranId() { return TranId; }
public Initiate setTranId(String value) { this.TranId = value; return this; }
public String getErrorMessage() { return ErrorMessage; }
public Initiate setErrorMessage(String value) { this.ErrorMessage = value; return this; }
public String getErrorCode() { return ErrorCode; }
public Initiate setErrorCode(String value) { this.ErrorCode = value; return this; }
public String getAccuId() { return AccuId; }
public Initiate setAccuId(String value) { this.AccuId = value; return this; }
}
@DataContract
public static class PaysecureResponseInternal
{
@DataMember(EmitDefaultValue=false)
public RequestTimestamps Timestamps = null;
public RequestTimestamps getTimestamps() { return Timestamps; }
public PaysecureResponseInternal setTimestamps(RequestTimestamps value) { this.Timestamps = value; return this; }
}
@DataContract
public static class RequestTimestamps
{
@DataMember(EmitDefaultValue=false)
public InOutTimes AppLayer = null;
@DataMember(EmitDefaultValue=false)
public InOutTimes ParentLookup = null;
@DataMember(EmitDefaultValue=false)
public InOutTimes RetryLookup = null;
@DataMember(EmitDefaultValue=false)
public InOutTimes GetCardData = null;
@DataMember(EmitDefaultValue=false)
public InOutTimes CardTokenize = null;
@DataMember(EmitDefaultValue=false)
public InOutTimes CardEncrypt = null;
@DataMember(EmitDefaultValue=false)
public InOutTimes DBInsert = null;
@DataMember(EmitDefaultValue=false)
public InOutTimes BackendProcess = null;
@DataMember(EmitDefaultValue=false)
public InOutTimes DBUpdate = null;
@DataMember(EmitDefaultValue=false)
public InOutTimes ParentUpdate = null;
@DataMember(EmitDefaultValue=false)
public InOutTimes Network = null;
public InOutTimes getAppLayer() { return AppLayer; }
public RequestTimestamps setAppLayer(InOutTimes value) { this.AppLayer = value; return this; }
public InOutTimes getParentLookup() { return ParentLookup; }
public RequestTimestamps setParentLookup(InOutTimes value) { this.ParentLookup = value; return this; }
public InOutTimes getRetryLookup() { return RetryLookup; }
public RequestTimestamps setRetryLookup(InOutTimes value) { this.RetryLookup = value; return this; }
public InOutTimes getGetCardData() { return GetCardData; }
public RequestTimestamps setGetCardData(InOutTimes value) { this.GetCardData = value; return this; }
public InOutTimes getCardTokenize() { return CardTokenize; }
public RequestTimestamps setCardTokenize(InOutTimes value) { this.CardTokenize = value; return this; }
public InOutTimes getCardEncrypt() { return CardEncrypt; }
public RequestTimestamps setCardEncrypt(InOutTimes value) { this.CardEncrypt = value; return this; }
public InOutTimes getDbInsert() { return DBInsert; }
public RequestTimestamps setDbInsert(InOutTimes value) { this.DBInsert = value; return this; }
public InOutTimes getBackendProcess() { return BackendProcess; }
public RequestTimestamps setBackendProcess(InOutTimes value) { this.BackendProcess = value; return this; }
public InOutTimes getDbUpdate() { return DBUpdate; }
public RequestTimestamps setDbUpdate(InOutTimes value) { this.DBUpdate = value; return this; }
public InOutTimes getParentUpdate() { return ParentUpdate; }
public RequestTimestamps setParentUpdate(InOutTimes value) { this.ParentUpdate = value; return this; }
public InOutTimes getNetwork() { return Network; }
public RequestTimestamps setNetwork(InOutTimes value) { this.Network = value; return this; }
}
@DataContract
public static class InOutTimes
{
}
}
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 /Initiate HTTP/1.1
Host: api.paysecure.acculynk.net
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<InitiateRequest xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.servicestack.net/types">
<Amount>0</Amount>
<CardNumberInfo>
<CardDataType>CardNumber</CardDataType>
<CardNumberData>String</CardNumberData>
<KeyID>String</KeyID>
</CardNumberInfo>
<Credentials>
<MerchantId>String</MerchantId>
<Password>String</Password>
<UserName>String</UserName>
<Version>String</Version>
</Credentials>
<CurrencyCode>String</CurrencyCode>
<ExpirationDate>String</ExpirationDate>
<TransType>eCommerce</TransType>
</InitiateRequest>
HTTP/1.1 200 OK Content-Type: application/xml Content-Length: length <Initiate xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.servicestack.net/types"> <Timestamps> <AppLayer> <InTime>0001-01-01T00:00:00</InTime> <OutTime>0001-01-01T00:00:00</OutTime> </AppLayer> <BackendProcess> <InTime>0001-01-01T00:00:00</InTime> <OutTime>0001-01-01T00:00:00</OutTime> </BackendProcess> <CardEncrypt> <InTime>0001-01-01T00:00:00</InTime> <OutTime>0001-01-01T00:00:00</OutTime> </CardEncrypt> <CardTokenize> <InTime>0001-01-01T00:00:00</InTime> <OutTime>0001-01-01T00:00:00</OutTime> </CardTokenize> <DBInsert> <InTime>0001-01-01T00:00:00</InTime> <OutTime>0001-01-01T00:00:00</OutTime> </DBInsert> <DBUpdate> <InTime>0001-01-01T00:00:00</InTime> <OutTime>0001-01-01T00:00:00</OutTime> </DBUpdate> <GetCardData> <InTime>0001-01-01T00:00:00</InTime> <OutTime>0001-01-01T00:00:00</OutTime> </GetCardData> <Network> <InTime>0001-01-01T00:00:00</InTime> <OutTime>0001-01-01T00:00:00</OutTime> </Network> <ParentLookup> <InTime>0001-01-01T00:00:00</InTime> <OutTime>0001-01-01T00:00:00</OutTime> </ParentLookup> <ParentUpdate> <InTime>0001-01-01T00:00:00</InTime> <OutTime>0001-01-01T00:00:00</OutTime> </ParentUpdate> <RetryLookup> <InTime>0001-01-01T00:00:00</InTime> <OutTime>0001-01-01T00:00:00</OutTime> </RetryLookup> </Timestamps> <AccuId>String</AccuId> <ErrorCode>String</ErrorCode> <ErrorMessage>String</ErrorMessage> <TranId>String</TranId> </Initiate>