ClubReady Api

<back to all web services

PaymentProfileBalanceInquiryEndpoint

The following routes are available for this service:
GET/sales/paymentProfile/balanceInquiryLook up Factor 4 gift card balance This endpoint has two inquiry styles. If only the AcctToken is provided, it can look up balance of a factor4 gift card that has already been imported into ClubReady. If both PaymentProfile and AcctToken are provided, this endpoint will add the profile to the user before looking up the balance. If you provide both parameters, a separate call to 'sales/paymentProfile/import' is unnecessary. The AcctToken and ProfileToken are created by the ClubReadyGateway API.
import java.math.*;
import java.util.*;
import net.servicestack.client.*;

public class dtos
{

    @ApiResponse(Description="Looks up the balance of a payment profile created by the Vault API", ResponseType=PaymentProfileBalanceInquiryResponse.class, StatusCode=200)
    public static class PaymentProfileBalanceInquiryEndpoint extends PaymentProfileBalanceInquiryRequest implements IApiKeyEndpoint
    {
        /**
        * Api Authentication Key
        */
        @ApiMember(Description="Api Authentication Key", IsRequired=true, ParameterType="query")
        public String ApiKey = null;

        /**
        * Store Id
        */
        @ApiMember(Description="Store Id", IsRequired=true, ParameterType="query")
        public Integer StoreId = null;

        /**
        * Encoded data uniquely identifying the payment profile.  Long term storage of AcctToken is not recommended, as the token may change over time (for example, by processes like Account Updater).  The length is usually 80 characters.
        */
        @ApiMember(Description="\r\nEncoded data uniquely identifying the payment profile.  \r\nLong term storage of AcctToken is not recommended, as the token may change over time (for example, by processes like Account Updater).  \r\nThe length is usually 80 characters.", IsRequired=true)
        public String AcctToken = null;

        /**
        * Encoded data containing non-PCI information about the Payment Profile.  ProfileTokens contain a timestamp. If the ClubReady API does not process the token within 5 minutes,it cannot be accepted and a new profile will have to be created with a new AcctToken. The timevalidation is to prevent old tokens from be re-played at a later time.  The length is variable, but generally around 1,000 characters.
        */
        @ApiMember(Description="\r\nEncoded data containing non-PCI information about the Payment Profile.  \r\n\r\nProfileTokens contain a timestamp. If the ClubReady API does not process the token within 5 minutes,\r\nit cannot be accepted and a new profile will have to be created with a new AcctToken. The time\r\nvalidation is to prevent old tokens from be re-played at a later time.  \r\n\r\nThe length is variable, but generally around 1,000 characters.")
        public String ProfileToken = null;
        
        public String getApiKey() { return ApiKey; }
        public PaymentProfileBalanceInquiryEndpoint setApiKey(String value) { this.ApiKey = value; return this; }
        public Integer getStoreId() { return StoreId; }
        public PaymentProfileBalanceInquiryEndpoint setStoreId(Integer value) { this.StoreId = value; return this; }
        public String getAcctToken() { return AcctToken; }
        public PaymentProfileBalanceInquiryEndpoint setAcctToken(String value) { this.AcctToken = value; return this; }
        public String getProfileToken() { return ProfileToken; }
        public PaymentProfileBalanceInquiryEndpoint setProfileToken(String value) { this.ProfileToken = value; return this; }
    }

    public static class PaymentProfileBalanceInquiryRequest
    {
        public String TerminalIpAddress = null;
        public String AcctToken = null;
        public String ProfileToken = null;
        public Integer StoreId = null;
        
        public String getTerminalIpAddress() { return TerminalIpAddress; }
        public PaymentProfileBalanceInquiryRequest setTerminalIpAddress(String value) { this.TerminalIpAddress = value; return this; }
        public String getAcctToken() { return AcctToken; }
        public PaymentProfileBalanceInquiryRequest setAcctToken(String value) { this.AcctToken = value; return this; }
        public String getProfileToken() { return ProfileToken; }
        public PaymentProfileBalanceInquiryRequest setProfileToken(String value) { this.ProfileToken = value; return this; }
        public Integer getStoreId() { return StoreId; }
        public PaymentProfileBalanceInquiryRequest setStoreId(Integer value) { this.StoreId = value; return this; }
    }

    public static class PamentProfileBalanceInquiryEndpointResponse
    {
        public Boolean Success = null;
        public String Last4 = null;
        public BigDecimal AccountBalance = null;
        public String ResponseCode = null;
        public String Message = null;
        
        public Boolean isSuccess() { return Success; }
        public PamentProfileBalanceInquiryEndpointResponse setSuccess(Boolean value) { this.Success = value; return this; }
        public String getLast4() { return Last4; }
        public PamentProfileBalanceInquiryEndpointResponse setLast4(String value) { this.Last4 = value; return this; }
        public BigDecimal getAccountBalance() { return AccountBalance; }
        public PamentProfileBalanceInquiryEndpointResponse setAccountBalance(BigDecimal value) { this.AccountBalance = value; return this; }
        public String getResponseCode() { return ResponseCode; }
        public PamentProfileBalanceInquiryEndpointResponse setResponseCode(String value) { this.ResponseCode = value; return this; }
        public String getMessage() { return Message; }
        public PamentProfileBalanceInquiryEndpointResponse setMessage(String value) { this.Message = value; return this; }
    }

}

Java PaymentProfileBalanceInquiryEndpoint DTOs

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

HTTP + CSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

GET /sales/paymentProfile/balanceInquiry HTTP/1.1 
Host: www.clubready.com 
Accept: text/csv
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length

{"Success":false,"Last4":"String","AccountBalance":0,"ResponseCode":"String","Message":"String"}