| POST | /payfast/webhook/{PublicAccessGuid} |
|---|
import java.math.*;
import java.util.*;
import java.io.InputStream;
import net.servicestack.client.*;
import com.google.gson.annotations.*;
import com.google.gson.reflect.*;
public class dtos
{
public static class PayFastWebHook
{
@DataMember(Name="m_payment_id")
@SerializedName("m_payment_id")
public String MPaymentId = null;
@DataMember(Name="pf_payment_id")
@SerializedName("pf_payment_id")
public String PfPaymentId = null;
@DataMember(Name="payment_status")
@SerializedName("payment_status")
public String PaymentStatus = null;
@DataMember(Name="item_name")
@SerializedName("item_name")
public String ItemName = null;
@DataMember(Name="item_description")
@SerializedName("item_description")
public String ItemDescription = null;
@DataMember(Name="amount_gross")
@SerializedName("amount_gross")
public Double AmountGross = null;
@DataMember(Name="amount_fee")
@SerializedName("amount_fee")
public Double AmountFee = null;
@DataMember(Name="amount_net")
@SerializedName("amount_net")
public Double AmountNet = null;
@DataMember(Name="custom_str1")
@SerializedName("custom_str1")
public String CustomStr1 = null;
@DataMember(Name="custom_str2")
@SerializedName("custom_str2")
public String CustomStr2 = null;
@DataMember(Name="custom_str3")
@SerializedName("custom_str3")
public String CustomStr3 = null;
@DataMember(Name="custom_str4")
@SerializedName("custom_str4")
public String CustomStr4 = null;
@DataMember(Name="custom_str5")
@SerializedName("custom_str5")
public String CustomStr5 = null;
@DataMember(Name="custom_int1")
@SerializedName("custom_int1")
public Integer CustomInt1 = null;
@DataMember(Name="custom_int2")
@SerializedName("custom_int2")
public Integer CustomInt2 = null;
@DataMember(Name="custom_int3")
@SerializedName("custom_int3")
public Integer CustomInt3 = null;
@DataMember(Name="custom_int4")
@SerializedName("custom_int4")
public Integer CustomInt4 = null;
@DataMember(Name="custom_int5")
@SerializedName("custom_int5")
public Integer CustomInt5 = null;
@DataMember(Name="name_first")
@SerializedName("name_first")
public String NameFirst = null;
@DataMember(Name="name_last")
@SerializedName("name_last")
public String NameLast = null;
@DataMember(Name="email_address")
@SerializedName("email_address")
public String EmailAddress = null;
@DataMember(Name="merchant_id")
@SerializedName("merchant_id")
public String MerchantId = null;
@DataMember(Name="signature")
@SerializedName("signature")
public String Signature = null;
@DataMember(Name="token")
@SerializedName("token")
public String Token = null;
@DataMember(Name="billing_date")
@SerializedName("billing_date")
public Date BillingDate = null;
public UUID PublicAccessGuid = null;
public Boolean Sandbox = null;
public String getMPaymentId() { return MPaymentId; }
public PayFastWebHook setMPaymentId(String value) { this.MPaymentId = value; return this; }
public String getPfPaymentId() { return PfPaymentId; }
public PayFastWebHook setPfPaymentId(String value) { this.PfPaymentId = value; return this; }
public String getPaymentStatus() { return PaymentStatus; }
public PayFastWebHook setPaymentStatus(String value) { this.PaymentStatus = value; return this; }
public String getItemName() { return ItemName; }
public PayFastWebHook setItemName(String value) { this.ItemName = value; return this; }
public String getItemDescription() { return ItemDescription; }
public PayFastWebHook setItemDescription(String value) { this.ItemDescription = value; return this; }
public Double getAmountGross() { return AmountGross; }
public PayFastWebHook setAmountGross(Double value) { this.AmountGross = value; return this; }
public Double getAmountFee() { return AmountFee; }
public PayFastWebHook setAmountFee(Double value) { this.AmountFee = value; return this; }
public Double getAmountNet() { return AmountNet; }
public PayFastWebHook setAmountNet(Double value) { this.AmountNet = value; return this; }
public String getCustomStr1() { return CustomStr1; }
public PayFastWebHook setCustomStr1(String value) { this.CustomStr1 = value; return this; }
public String getCustomStr2() { return CustomStr2; }
public PayFastWebHook setCustomStr2(String value) { this.CustomStr2 = value; return this; }
public String getCustomStr3() { return CustomStr3; }
public PayFastWebHook setCustomStr3(String value) { this.CustomStr3 = value; return this; }
public String getCustomStr4() { return CustomStr4; }
public PayFastWebHook setCustomStr4(String value) { this.CustomStr4 = value; return this; }
public String getCustomStr5() { return CustomStr5; }
public PayFastWebHook setCustomStr5(String value) { this.CustomStr5 = value; return this; }
public Integer getCustomInt1() { return CustomInt1; }
public PayFastWebHook setCustomInt1(Integer value) { this.CustomInt1 = value; return this; }
public Integer getCustomInt2() { return CustomInt2; }
public PayFastWebHook setCustomInt2(Integer value) { this.CustomInt2 = value; return this; }
public Integer getCustomInt3() { return CustomInt3; }
public PayFastWebHook setCustomInt3(Integer value) { this.CustomInt3 = value; return this; }
public Integer getCustomInt4() { return CustomInt4; }
public PayFastWebHook setCustomInt4(Integer value) { this.CustomInt4 = value; return this; }
public Integer getCustomInt5() { return CustomInt5; }
public PayFastWebHook setCustomInt5(Integer value) { this.CustomInt5 = value; return this; }
public String getNameFirst() { return NameFirst; }
public PayFastWebHook setNameFirst(String value) { this.NameFirst = value; return this; }
public String getNameLast() { return NameLast; }
public PayFastWebHook setNameLast(String value) { this.NameLast = value; return this; }
public String getEmailAddress() { return EmailAddress; }
public PayFastWebHook setEmailAddress(String value) { this.EmailAddress = value; return this; }
public String getMerchantId() { return MerchantId; }
public PayFastWebHook setMerchantId(String value) { this.MerchantId = value; return this; }
public String getSignature() { return Signature; }
public PayFastWebHook setSignature(String value) { this.Signature = value; return this; }
public String getToken() { return Token; }
public PayFastWebHook setToken(String value) { this.Token = value; return this; }
public Date getBillingDate() { return BillingDate; }
public PayFastWebHook setBillingDate(Date value) { this.BillingDate = value; return this; }
public UUID getPublicAccessGuid() { return PublicAccessGuid; }
public PayFastWebHook setPublicAccessGuid(UUID value) { this.PublicAccessGuid = value; return this; }
public Boolean isSandbox() { return Sandbox; }
public PayFastWebHook setSandbox(Boolean value) { this.Sandbox = value; return this; }
}
}
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 /payfast/webhook/{PublicAccessGuid} HTTP/1.1
Host: duengageapi.uat.scadsoftware.com
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
m_payment_id: String,
pf_payment_id: String,
payment_status: String,
item_name: String,
item_description: String,
amount_gross: 0,
amount_fee: 0,
amount_net: 0,
custom_str1: String,
custom_str2: String,
custom_str3: String,
custom_str4: String,
custom_str5: String,
custom_int1: 0,
custom_int2: 0,
custom_int3: 0,
custom_int4: 0,
custom_int5: 0,
name_first: String,
name_last: String,
email_address: String,
merchant_id: String,
signature: String,
token: String,
billing_date: 0001-01-01,
PublicAccessGuid: 00000000000000000000000000000000,
Sandbox: False
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
}