GIDX: DirectCashier

API Integration: DirectCashier


Introduction & Document Overview

This is a documentation for the DirectCashier API, a service within the Payment Management Solution set of the GIDX Platform.

This set of documents serves as the integration guide for implementing services of the GIDX Platform API within the operator’s environment. The following pages outline the Customer Insight access points, security, methods, and parameters. As always, please contact us at devteam@tsevo.com any time if further explanation is needed.

API libraries

An official SDK for the GIDX Platform API is available at GitHub.com and via NuGet (GIDX.SDK) located at the URL below. This SDK can be installed directly into your C# project using the NuGet Package Manager.

SDK Location
https://github.com/TSEVOLLC/GIDX.SDK-csharp

GIDX Platform DirectCashier API Method Reference

Below are descriptions of the methods exposed by the GIDX Platform DirectCashier Service. For details about the parameters associated with these methods please see the Class Reference section below.

https://api.gidx-service.in/v3.0/api/DirectCashier
https://api.gidx-service.in/v3.0/api/DirectCashier
https://api.gidx-service.in/v3.0/api/DirectCashier

DirectCashier: Request & Response Parameter Constants

The following parameters are used in every DirectCashier Method Request and Responses. They are labeled within the methods below as Standardized Request Parameters and Standardized Response Parameters.

Making a Request
Each API method has a corresponding Request object used to transport the request parameters as shown below.

Using the Response
Each Response object returned from the method Request will contain properties you can use to determine the status of the methods service. Use the IsSuccess property along with the ResponseCode and ResponseMessage values to detect if the Request completed without a problem.

Standardized Request Parameters

ApiKey
String Required
Your assigned ApiKey, provided to you by the GIDX team.
4QhgWWJxRlqVctrc7SxHEQ
MerchantID
String Required
Your assigned Merchant ID, provided to you by the GIDX team.
VpGYLoXhSS+WgU9N415IJQ
ProductTypeID
String Required
Your assigned ID for merchant product type.
Fc+k5kRDSAOrh38e21vt0w
DeviceTypeID
String Required
Your assigned ID for this specific customer device type.
m+2XHlcIR0O1C+iBeNzfvA
ActivityTypeID
String Required
Your assigned ID for this specific customer activity type.
VV4XTc3tRi6g1EYLOazn0g
MerchantSessionID
String Required
A unique SessionID from your system assigned to this active session.
xHhSS+WglqVctrc7-t7SEQrc

Standardized Response Parameters

ApiKey
String Echo
Echo of your assigned ApiKey that you provided in the request.
4QhgWWJxRlqVctrc7SxHEQ
ApiVersion
String Echo
Echo of the API Version.
v3.0
MerchantID
String Echo
Echo of your assigned Merchant ID that you provided in the request.
VpGYLoXhSS+WgU9N415IJQ
MerchantSessionID
String Echo
Echo of your unique SessionID for this active session that you provided in the request.
xHhSS+WglqVctrc7-t7SEQrc
ResponseCode
Integer
Response code for the method call. This will be 0 if there are no issues, non-zero otherwise.
0
ResponseMessage
String
Readable text message corresponding to the response code.
No Errors
https://api.gidx-service.in/v3.0/api/DirectCashier
https://api.gidx-service.in/v3.0/api/DirectCashier

DirectCashier: CreateSession

This method should be called to create a new Direct Cashier Session within the GIDX system for payments.

Request Type:
HTTP POST: JSON Content Body
Parameters:
CreateSessionDirectCashierRequest (object)
Return Value:
CreateSessionDirectCashierResponse (object)
Endpoint URL:
https://api.gidx-service.in/v3.0/api/DirectCashier/CreateSession

CreateSessionDirectCashierRequest

Standardized Parameters
Standard Request
See the Standardized Paramaters above.
MerchantCustomerID
String Required
Your unique ID for this customer.
ABC-123
CustomerIpAddress
String Required
IP address for the current device (The Customers' Device – NOT your servers IP address) for this active session.
66.249.76.138
DeviceGPS
Object Required
See DeviceGPS object for more information.
MerchantOrderID
String Required
The merchants internal ID for this order. This is an ID that can group multiple transactions together.
1113201405343
MerchantTransactionID
String Required
The merchants internal ID for this transaction. This must be a unique ID, any duplicated ID submittal will result in an error code.
1113201405343_1
PayActionCode
Library: PayActionCode
Request code indicating the type of transaction that will be processed within this cashier session.
Default value is PAY
NOTE: If the PayActionCode is set to PAYOUT then the PaymentAmount property located in the CashierPaymentAmount object cannot be NULL. This must contain a valid amount that has been authorized by the merchant. The customer is NOT able to change this amount within the cashier window service.
Recurring
Bool Optional
Enable a recurring transaction.
True
RecurringInterval
Library: RecurringInterval
The interval a recurring transaction should be processed
MONTHLY
FirstRecurringDate
DateTime Optional
The date that the first transaction should be processed.
2021-09-07
CustomerRegistration
Object CustomerIdentity: CustomerRegistrationRequest
Optional - See CustomerRegistrationRequest
CustomerRegistrationRequest Object
ContestCodes
Array Optional
An array of strings representing the contest information.
["NFL-HOU", "NFL-ATL"]
RedirectURL
String Optional
https://yourserver.com/GidxRedirect
The page to redirect the user back to if they are navigated away from your application via an Action. See Actum Authentecheck section of Payment Method Workflows.
CallbackURL
String Required
https://yourserver.com/GidxCallback
Once the cashier service is complete, times out, or the customer is blocked from completing the process due to invalid information, the GIDX system will call the CallbackURL that you provide here to notify your system of the status of the session.

CreateSessionDirectCashierResponse

Standardized Parameters
Standard Response
See the Standardized Paramaters above.
ReasonCodes
Object
See ReasonCodes for more information.
['DFP-HR','ID-EX']
SessionID
String
Unique ID in the GIDX system for the cashier session.
xHhSS+WglqVctrc7-t7SEQrc
CashierLimits
Object
See CashierLimits object for more information.
PaymentAmounts
Array
See PaymentAmount object for more information.
A list of the payment amounts and bonuses according to your settings.
PaymentMethods
Array
See PaymentMethod object for more information.
A list of the saved payment methods for the customer.
PaymentMethodSettings
Array
See PaymentMethodSettings object for more information.
A list of the payment method types that are available to your merchant account.
CustomerRegistration
Object CustomerIdentity: CustomerRegistrationResponse
See CustomerRegistrationResponse object for more information.
If customer is not verified and CustomerRegistration is passed in the request, the resulting CustomerRegistrationResponse will be returned.
//Example "CreateSession / DirectCashier" Request { "ApiKey": "4QhgWWJxRlqVctrc7SxHEQ", "MerchantID": "VpGYLoXhSS+WgU9N415IJQ", "ProductTypeID": "Fc+k5kRDSAOrh38e21vt0w", "DeviceTypeID": "m+2XHlcIR0O1C+iBeNzfvA", "ActivityTypeID": "VV4XTc3tRi6g1EYLOazn0g", "MerchantSessionID": "123_ID_GOES_HERE", "MerchantCustomerID": "J39JU43s1U9996A1B2aTg", "CustomerIpAddress": "66.249.76.138", "DeviceGPS": { "Latitude": 29.7144918, "Longitude": 95.3834864 }, "MerchantOrderID": "1113201405343", "MerchantTransactionID": "1113201405343_1", "PayActionCode": "PAY", "CustomerRegistration": { "CustomerIpAddress": "66.249.76.138", "MerchantCustomerID": "J39JU43s1U9996A1B2aTg", "FirstName": "John", "LastName": "Smith", "DateOfBirth": "1988-05-02", "EmailAddress": "johnsmith@domain.net", "CitizenshipCountryCode": "US", "AddressLine1": "1234 Main St", "City": "Anytown", "StateCode": "TX", "PostalCode": "77002", "CountryCode": "US" }, "CallbackURL": "http://callbacks.merchantdomain.com/CallbackStatus" }
//Example "CreateSession / DirectCashier" Response { "ApiKey": "4QhgWWJxRlqVctrc7SxHEQ", "ApiVersion": 3.0, "MerchantID": "VpGYLoXhSS+WgU9N415IJQ", "MerchantSessionID": "123_ID_GOES_HERE", "ResponseCode": 0, "ResponseMessage": "No error.", "SessionID": "X9XeW5FvCEKimOKw59GNPA", "ReasonCodes": ["ID-VERIFIED", "LL-GEO-US-TX"], "CashierLimits": { "MinAmount": 10, "MaxAmount": 5000 }, "PaymentAmounts": [ { "PaymentAmount": 10, "BonusAmount": 0 }, { "PaymentAmount": 20, "BonusAmount": 0 }, { "PaymentAmount": 50, "BonusAmount": 0 }, { "PaymentAmount": 100, "BonusAmount": 0 } ], "PaymentMethods": [ { "Type": "CC", "Token": "6CADB8D0-6FAE-40DE-937E-03BA3EC9A7A5", "DisplayName": "Visa (...1111)", "NameOnAccount": "John Smith", "CardNumber": "xxxxxxxxxxxx1111", "ExpirationDate": "11/2024", "Network": "Visa", "AVSResult": "ExactMatch", "CVVResult": "Match", "BillingAddress": { "AddressLine1": "1234 Main St", "City": "Anytown", "StateCode": "TX", "PostalCode": "77002", "CountryCode": "US" } }, { "Type": "ACH", "Token": "E6CFED9D-BA30-43A1-A20D-D249487A2521", "DisplayName": "Bank of America (...9999)", "NameOnAccount": "John Smith", "AccountNumber": "xxxxx9999", "RoutingNumber": "1111111", "BillingAddress": { "AddressLine1": "1234 Main St", "City": "Anytown", "StateCode": "TX", "PostalCode": "77002", "CountryCode": "US" } } ], "PaymentMethodSettings": [ { "Type": "CC" }, { "Type": "ACH" }, { "Type": "Paypal", "ClientID": "AWipigSApGaGTWxWxT9THkVKql7K2NfGr5fkOrRwuHiSqpQsSylhU9fD4u1bOIQL4Hj142-6DrqeaWJ2" }, { "Type": "ApplePay" }, { "Type": "GooglePay", "Environment": "TEST", "Gateway": "acceptblue", "GatewayMerchantID": "gp_05b140932dd7a938dd4e47654d419cf3", "MerchantID": "1234" } ] }
https://api.gidx-service.in/v3.0/api/DirectCashier
https://api.gidx-service.in/v3.0/api/DirectCashier

DirectCashier: CompleteSession

This method should be called to finalize and execute a payment that was started with CreateSession.

Request Type:
HTTP POST: JSON Content Body
Parameters:
CompleteSessionDirectCashierRequest (object)
Return Value:
CompleteSessionDirectCashierResponse (object)
Endpoint URL:
https://api.gidx-service.in/v3.0/api/DirectCashier/CompleteSession

CompleteSessionDirectCashierRequest

Standardized Parameters
Standard Request
See the Standardized Paramaters above.
MerchantTransactionID
String Required
The merchants internal ID for this transaction. This must be a unique ID, any duplicated ID submittal will result in an error code.
1113201405343_1
PaymentAmount
Object
Optional - See object reference CashierPaymentAmount
CashierPaymentAmount Object
PaymentMethod
Object
See PaymentMethod object for more information.
SavePaymentMethod
Bool Optional
Include the payment method in the list of saved payment methods returned for this user.
True

CompleteSessionDirectCashierResponse

Standardized Parameters
Standard Response
See the Standardized Paramaters above.
ReasonCodes
Object
See ReasonCodes for more information.
['DFP-HR','ID-EX']
SessionID
String
Unique ID in the GIDX system for the cashier session.
xHhSS+WglqVctrc7-t7SEQrc
SessionStatusCode
Library: StatusCode
The Status Code of the overall Session, not the transaction.
SessionStatusMessage
Library: StatusCode
The Status Code of the overall Session, not the transaction.
MerchantTransactionID
String Echo
The merchants internal ID for the requested transaction.
1113201405343_1
AllowRetry
Bool
If the payment was unsuccessful, is another CompleteSession call allowed to retry.
True
Action
Object
See Action object for more information.
An action that needs to be taken to complete the transaction.
PaymentDetails
Object
See Object Reference.
Array of PaymentDetails Objects
For recurring transactions, the first item in the list will be the parent transaction that represents the ongoing recurring transaction. The remaining transactions will be the history of all the recurring transactions, in the order they happened.

If an attempt fails, we will retry daily for 10 days and every attempt will be shown in this list. After 10 days, we will update the parent transaction to PaymentStatusCode 6 (Canceled).
FinancialConfidenceScore
String
Validation Score based on the Financial Confidence in the payment.
92.3
//Example "CompleteSession / DirectCashier" Request { "ApiKey": "4QhgWWJxRlqVctrc7SxHEQ", "MerchantID": "VpGYLoXhSS+WgU9N415IJQ", "ProductTypeID": "Fc+k5kRDSAOrh38e21vt0w", "DeviceTypeID": "m+2XHlcIR0O1C+iBeNzfvA", "ActivityTypeID": "VV4XTc3tRi6g1EYLOazn0g", "MerchantSessionID": "123_ID_GOES_HERE", "MerchantTransactionID": "1113201405343_1", "SavePaymentMethod": True, "PaymentAmount": { "PaymentAmount": 50, "BonusAmount": 0 }, "PaymentMethod": { //If you are posting an existing payment method just use the Token and Type. "Token": "6CADB8D0-6FAE-40DE-937E-03BA3EC9A7A5", "Type": "CC", "CVV": "123", //If there were no saved payment methods, then post a new one as shown below. "Type": "CC", "NameOnAccount": "John Smith", "CardNumber": "4012888888881881", "ExpirationDate": "11/2024", "CVV": "123", "BillingAddress": { "AddressLine1": "1234 Main St", "City": "Anytown", "StateCode": "TX", "PostalCode": "77002", "CountryCode": "US" } } }
//Example "CompleteSession / DirectCashier" Response { "ApiKey": "4QhgWWJxRlqVctrc7SxHEQ", "ApiVersion": 3.0, "MerchantID": "VpGYLoXhSS+WgU9N415IJQ", "MerchantSessionID": "123_ID_GOES_HERE", "MerchantTransactionID": "1113201405343_1", "ResponseCode": 0, "ResponseMessage": "No error.", "SessionID": "X9XeW5FvCEKimOKw59GNPA", "ReasonCodes": ["ID-VERIFIED", "LL-GEO-US-TX"], "SessionStatusCode": 0, "SessionStatusMessage": "Payment Session is Complete.", "AllowRetry": false, "PaymentDetails": [ { "PaymentAmountCode": "Sale", "PaymentAmountType": "Credit", "PaymentAmount": 50, "PaymentMethodType": "CC", "PaymentMethodAccount": "Visa", "PaymentApprovalDateTime": "2014-11-13T20:13:38.905832", "PaymentStatusDateTime": "2014-11-13T20:13:39.97", "PaymentProcessDateTime": "2014-11-13T20:13:39.97", "CurrencyCode": "USD", "PaymentStatusCode": "1", "PaymentStatusMessage": "Complete", "FinancialConfidenceScore": 50 } ], //For Actum Authentecheck and Paypal, an Action will be returned. Look at Payment Method Workflows for more details. "Action": { "Type": "Open", "URL": "https://join.iad.actumprocessing.com/Signup/signupLoad.cgi;jsessionid=17E3594FE483C833536AD344A6C1C43A" } }
https://api.gidx-service.in/v3.0/api/DirectCashier
https://api.gidx-service.in/v3.0/api/DirectCashier

DirectCashier: CreateSession / Callback

Receiving callbacks from GIDX
When a session expires or a transaction status changes, a callback will be made to the CallbackURL you provided in CreateSession. The callback will be an HTTP POST with a JSON request body. An example of the callback JSON is on the right side of this page.
Responding to callbacks
You must respond to the callback correctly, or we will retry the callback up to 5 times over the next 2 hours. An example of the response JSON is on the right side of this page.

DirectCashierCallback

Standardized Parameters
Standard Response
See the Standardized Paramaters above.
StatusCode
Integer
Status code for the method call. This will be 0 if there are no issues, non-zero otherwise.
0
StatusMessage
String
Readable text message corresponding to the status code.
No Errors
MerchantSessionID
String Echo
Echo of your unique SessionID for this active session that you provided in the request.
xHhSS+WglqVctrc7-t7SEQrc
ReasonCodes
Object
See ReasonCodes for more information.
['DFP-HR','ID-EX']
SessionID
String
Unique ID in the GIDX system for the registration session.
xHhSS+WglqVctrc7-t7SEQrc
SessionScore
Decimal
Validation Score based on the Session Data Confidence.
98.5
ServiceType
Library: ServiceType
StatusType of the Session
Payment
MerchantTransactionID
String Echo
Echo of your unique TransactionID that was provided in the CreateSession request.
1113201405343_1
TransactionStatusCode
Library: PaymentStatusCode
The Status of the transaction
0
TransactionStatusMessage
Library: PaymentStatusCode
Message describing the transaction status
Pending
//Example Callback - DirectCashier { "StatusCode": 0, "StatusMessage": "Payment Session is Complete.", "SessionID": "X9XeW5FvCEKimOKw59GNPA", "MerchantSessionID": "123_ID_GOES_HERE", "SessionScore": 96.2, "ReasonCodes": ["ID-VERIFIED","LL-GEO-US-TX","DFP-VPRP-CORP"], "MerchantTransactionID": "1113201405343_1", "TransactionStatusCode": 1, "TransactionStatusMessage": "Complete", "ServiceType": "Payment" } //When receiving this callback the response from your service should be formatted as follows... //Example Callback Response - DirectCashier { "MerchantTransactionID": "1113201405343_1" }
https://api.gidx-service.in/v3.0/api/DirectCashier
https://api.gidx-service.in/v3.0/api/DirectCashier

DirectCashier: PaymentDetail

Once the DirectCashier has been successfully completed the merchant may call this method to retrieve the full transaction details for the payment.

Request Type:
HTTP GET: QueryString
Parameters:
PaymentDetailRequest (object)
Return Value:
PaymentDetailResponse (object)
Endpoint URL:
https://api.gidx-service.in/v3.0/api/DirectCashier/PaymentDetail

PaymentDetailRequest

Standardized Parameters
Standard Request
See the Standardized Paramaters above.

NOTE: The MerchantSessionID supplied in this call must be the same as the one supplied in the initial DirectCashier CreateSession API call.
MerchantTransactionID
String Required
The merchants internal ID for a previously completed transaction.
1113201405343_1

PaymentDetailResponse

Standardized Parameters
Standard Response
See the Standardized Paramaters above.
MerchantTransactionID
String Echo
The merchants internal ID for the requested transaction.
1113201405343_1
PaymentDetails
Object
See Object Reference.
Array of PaymentDetails Objects
For recurring transactions, the first item in the list will be the parent transaction that represents the ongoing recurring transaction. The remaining transactions will be the history of all the recurring transactions, in the order they happened.

If an attempt fails, we will retry daily for 10 days and every attempt will be shown in this list. After 10 days, we will update the parent transaction to PaymentStatusCode 6 (Canceled).
FinancialConfidenceScore
String
Validation Score based on the Financial Confidence in the payment.
92.3
ReasonCodes
Object
Array of string
[“LL-GEO-US-NV”,“ID-VERIFIED”,“ID-EX”]
SessionStatusCode
Library: StatusCode
The Status Code of the overall Session, not the transaction.
SessionStatusMessage
Library: StatusCode
The Status Code of the overall Session, not the transaction.
//Example Request { "ApiKey": "p7UrlYv9ikOZdzS4toY3FA", "MerchantID": "fUHSaCnsmUKRto3PTPZC5w", "MerchantSessionID": "4qm2go9a6q6lk43voe1p44hbb7", "MerchantTransactionID": "1113201405343_1" }
//Example Response { "MerchantID": "fUHSaCnsmUKRto3PTPZC5w", "MerchantSessionID": "4qm2go9a6q6lk43voe1p44hbb7", "ResponseCode": 0, "ResponseMessage": "No error.", "MerchantTransactionID": "1286", "FinancialConfidenceScore": 50.0, "PaymentDetails": [ { "PaymentAmountCode": "Bonus", "PaymentAmountType": "Credit", "PaymentAmount": 28, "PaymentMethodAccount": "eCheck (ACH)", "PaymentMethodType": "ACH", "PaymentApprovalDateTime": "2014-11-13T20:13:38.905832", "PaymentStatusDateTime": "2014-11-13T20:13:40.453", "PaymentProcessDateTime": "2014-11-13T20:13:40.453", "CurrencyCode": "USD", "PaymentStatusCode": "0", "PaymentStatusMessage": "Pending", "FinancialConfidenceScore": 50 }, { "PaymentAmountCode": "Sale", "PaymentAmountType": "Credit", "PaymentAmount": 50, "PaymentMethodType": "ACH", "PaymentMethodAccount": "eCheck (ACH)", "PaymentApprovalDateTime": "2014-11-13T20:13:38.905832", "PaymentStatusDateTime": "2014-11-13T20:13:39.97", "PaymentProcessDateTime": "2014-11-13T20:13:39.97", "CurrencyCode": "USD", "PaymentStatusCode": "0", "PaymentStatusMessage": "Pending", "FinancialConfidenceScore": 50 } ], "ApiKey": "p7UrlYv9ikOZdzS4toY3FA", "ApiVersion": 3.0 }

DirectCashier: PaymentUpdate

Update the status of a payment. Currently only available to cancel recurring payments.

Request Type:
HTTP POST: JSON Content Body
Parameters:
PaymentUpdateRequest (object)
Return Value:
PaymentUpdateResponse (object)
Endpoint URL:
https://api.gidx-service.in/v3.0/api/DirectCashier/PaymentUpdate

PaymentUpdateRequest

Standardized Parameters
Standard Request
See the Standardized Paramaters above.

NOTE: The MerchantSessionID supplied in this call must be the same as the one supplied in the initial DirectCashier CreateSession API call.
MerchantTransactionID
String Required
The merchants internal ID for a previously completed transaction.
1113201405343_1
PaymentStatusCode
The new status code for the payment
1
For payout approval, pass 1 (Complete) or 2 (Ineligible). For canceling a recurring payment, pass 6 (Canceled)

PaymentUpdateResponse

Standardized Parameters
Standard Response
See the Standardized Paramaters above.
MerchantTransactionID
String Echo
The merchants internal ID for the requested transaction.
1113201405343_1
PaymentDetails
Object
See Object Reference.
Array of PaymentDetails Objects
//Example Request { "ApiKey": "p7UrlYv9ikOZdzS4toY3FA", "MerchantID": "fUHSaCnsmUKRto3PTPZC5w", "MerchantSessionID": "4qm2go9a6q6lk43voe1p44hbb7", "MerchantTransactionID": "1113201405343_1", "PaymentStatusCode": "6" }
//Example Response { "MerchantID": "fUHSaCnsmUKRto3PTPZC5w", "MerchantSessionID": "4qm2go9a6q6lk43voe1p44hbb7", "ResponseCode": 0, "ResponseMessage": "No error.", "MerchantTransactionID": "1113201405343_1", "PaymentDetails": [ { "PaymentAmountCode": "Bonus", "PaymentAmountType": "Credit", "PaymentAmount": 28, "PaymentMethodAccount": "eCheck (ACH)", "PaymentMethodType": "ACH", "PaymentApprovalDateTime": "2014-11-13T20:13:38.905832", "PaymentStatusDateTime": "2014-11-13T20:13:40.453", "PaymentProcessDateTime": "2014-11-13T20:13:40.453", "CurrencyCode": "USD", "PaymentStatusCode": "0", "PaymentStatusMessage": "Pending", "FinancialConfidenceScore": 50 }, { "PaymentAmountCode": "Sale", "PaymentAmountType": "Credit", "PaymentAmount": 50, "PaymentMethodType": "ACH", "PaymentMethodAccount": "eCheck (ACH)", "PaymentApprovalDateTime": "2014-11-13T20:13:38.905832", "PaymentStatusDateTime": "2014-11-13T20:13:39.97", "PaymentProcessDateTime": "2014-11-13T20:13:39.97", "CurrencyCode": "USD", "PaymentStatusCode": "0", "PaymentStatusMessage": "Pending", "FinancialConfidenceScore": 50 } ], "ApiKey": "p7UrlYv9ikOZdzS4toY3FA", "ApiVersion": 3.0 }

DirectCashier: Save PaymentMethod

Add or update a payment method. You can call this method from the user's device without supplying your API Key as long as you pass the same MerchantSessionID of a currently active DirectCashier session.

Request Type:
HTTP POST: JSON Content Body
Parameters:
SavePaymentMethodRequest (object)
Return Value:
SavePaymentMethodResponse (object)
Endpoint URL:
https://api.gidx-service.in/v3.0/api/DirectCashier/PaymentMethod

SavePaymentMethodRequest

Standardized Parameters
Standard Request
See the Standardized Paramaters above.

NOTE: If calling from the user's device without an API Key, the MerchantSessionID supplied in this call must be the same as the one supplied in the initial DirectCashier CreateSession API call.
PaymentMethod
Object
See PaymentMethod object for more information.
SavePaymentMethod
Bool Optional
Include the payment method in the list of saved payment methods returned for this user.
True

SavePaymentMethodResponse

Standardized Parameters
Standard Response
See the Standardized Paramaters above.
PaymentMethod
Object
See PaymentMethod object for more information.
//Example Request from user's device { "MerchantID": "fUHSaCnsmUKRto3PTPZC5w", "MerchantSessionID": "4qm2go9a6q6lk43voe1p44hbb7", "SavePaymentMethod": true, "PaymentMethod": { "Type": "CC", "NameOnAccount": "John Smith", "CardNumber": "4012888888881881", "ExpirationDate": "11/2024", "CVV": "123", "BillingAddress": { "AddressLine1": "1234 Main St", "City": "Anytown", "StateCode": "TX", "PostalCode": "77002", "CountryCode": "US" } } }
//Example Response { "MerchantID": "fUHSaCnsmUKRto3PTPZC5w", "MerchantSessionID": "4qm2go9a6q6lk43voe1p44hbb7", "ResponseCode": 0, "ResponseMessage": "No error.", "PaymentMethod": { "Type": "CC", "Token": "6CADB8D0-6FAE-40DE-937E-03BA3EC9A7A5", "DisplayName": "Visa (...1111)", "NameOnAccount": "John Smith", "CardNumber": "xxxxxxxxxxxx1111", "ExpirationDate": "11/2024", "Network": "Visa", "AVSResult": "ExactMatch", "CVVResult": "Match", "BillingAddress": { "AddressLine1": "1234 Main St", "City": "Anytown", "StateCode": "TX", "PostalCode": "77002", "CountryCode": "US" } }, "ApiVersion": 3.0 }

CustomerIdentity API Methods

Other Identity & Location Methods are located in the CustomerIdentity API located at the endpoint below.

Endpoint URL:
https://api.gidx-service.in/v3.0/api/CustomerIdentity

You can view the details of these additional Customer Identity related methods by clicking on the links below.

  • CustomerProfile
    This method may be called to get the profile information associated with a verified MerchantCustomerID within the GIDX system.

  • CustomerMonitor
    This method may be called to get the current compliance status of the customer profile associated with a verified MerchantCustomerID within the GIDX system.

  • Location
    Location look-up is based on the IP address / Device GPS and the Merchant Settings. Although a MerchantCustomerID is not required it is suggested that any method calls for location associated with a registered customer should have a MerchantCustomerID provided for tracking and compliance audit purposes. The response contains the location details based on the Merchants settings.

Response Object Reference

The Object documented below are returned within the Response of Method Request within the GIDX Platform DirectCashier Services. When applicable an Object may be shared by among other Method Responses as indicated in the listings below.

Objects are always returned in JSON format.

Cashier Object: Action

This object provides information on actions that need to be taken within the merchant application to complete the transaction.

Usage:
CompleteSessionDirectCashierResponse (Action)
Property Name
Description / Data Type
Example
Type
String
The type of the payment method.
Open
The type will decide what other fields should be present.
Type: Open
URL
String
A URL that the user needs to visit to complete the transaction.
https://join.iad.actumprocessing.com/Signup/signupLoad.cgi;jsessionid=17E3594FE483C833536AD344A6C1C43A
Type: Paypal
ClientID
String
The Paypal Client ID that you should provide to the Paypal SDK.
AWipigSApGaGTWxWxT9THkVKql7K2NfGr5fkOrRwuHiSqpQsSylhU9fD4u1bOIQL4Hj142-6DrqeaWJ2
OrderID
String
The Paypal Order ID that you should provide to the Paypal SDK.
1KG986478G427540U

Cashier Object: PaymentDetails

PaymentDetails object is currently a work in progress. Subject to change.

This object contains the detailed data of a transaction that has taken place within the DirectCashier CreateSession Request.

Returned in Response:
CompleteSession
PaymentDetail
Usage:
The results contained in this object provide your the transaction amount(s), payment method, and other important transaction data parameters and statuses of a DirectCashier Service.
Property Name
Description / Data Type
Example
PaymentStatusCode
The status Code of the payment.
0
PaymentStatusMessage
The status Message of the payment.
Complete
PaymentAmountType
The TYPE of the payment amount for this transaction.
Credit
PaymentAmount
Amount within this transaction
Decimal
101.08
CurrencyCode
3 digit Currency Code from ISO 4217 standard.
USD
Recurring
Is it a recurring transaction?
Bool
true
RecurringInterval
The interval the transaction recurs at.
MONTHLY
NextRecurringDate
The next date the recurring transaction will be processed.
DateTime
MM/DD/YYYY hh:mm:ss (UTC)
PaymentMethodType
The TYPE of Payment Method for the transaction.
CC
PaymentMethodAccount
The processing agent of the PaymentMethodType.
VISA
PaymentAmountCode
The CODE for the for the transaction.
Sale
PaymentApprovalDateTime
The date/time UTC that the transaction was approved within the GIDX service.
DateTime
MM/DD/YYYY hh:mm:ss (UTC)
PaymentStatusDateTime
The most recent date/time UTC that there was a status update.
DateTime
MM/DD/YYYY hh:mm:ss (UTC)
PaymentProcessDateTime
The date/time UTC that the transaction was presented for processing.
DateTime
MM/DD/YYYY hh:mm:ss (UTC)
FinancialConfidenceScore
Validation Score based on the Financial Confidence in the payment.
String
96.2
ProcessorName
The name of the processor used for this transaction.
String
Approvely
ProcessorTransactionID
The ID generated by the processor for this transaction.
String
61452378
ProcessorResponseCode
The code returned by the processor for this transaction.
String
200
ProcessorResponseMessage
The message returned by the processor for this transaction.
String
DECLINED
Action
Object
See Action object for more information.
An action that needs to be taken to complete the transaction.

Cashier Object: CashierPaymentAmount

This object contains the payment amount information. For deposits, the user will be charged PaymentAmount + FeeAmount + TaxAmount.

For FeeAmount and TaxAmount, if you don't provide them yourself, we will calculate them based on your settings.

Usage:
CreateSessionDirectCashierRequest (PaymentAmounts)
CompleteSessionDirectCashierResponse (PaymentAmount)
Property Name
Description / Data Type
Example
PaymentAmount
Decimal Optional
Pay/Payout Amount of this transaction.
200.00
BonusAmount
Decimal Optional
Bonus Amount of this transaction.
50.00
BonusDetails
String Optional
Text displayed to the customer when the BonusAmonutOverride is true.
New Customer Bonus!
This has a maxlength of 1500 characters.
FeeAmount
Decimal Optional
Fee Amount to charge the user in addition to Payment Amount. Deposits only.
2.00
TaxAmount
Decimal Optional
Tax Amount to charge the user in addition to Payment Amount. Deposits only
3.10
OverrideLimit
Bool Optional
Ignore the GIDX limits system for this payment.
True
CurrencyCode
String
3 digit Currency Code from ISO 4217 standard.
USD

Cashier Object: PaymentMethod

This object is used to both submit and retrieve payment method information.

Usage:
CreateSessionDirectCashierResponse (PaymentMethods)
CompleteSessionDirectCashierRequest (PaymentMethod)
Property Name
Description / Data Type
Example
Token
String
Unique ID for a saved payment method
6CADB8D0-6FAE-40DE-937E-03BA3EC9A7A5
DisplayName
String
A friendly display name.
Visa (...1111)
Type
String
The type of the payment method.
CC
The type will decide what other fields should be present.
Type: CC, ACH, Paypal, ApplePay, GooglePay
NameOnAccount
String
The name on the account.
John Smith
BillingAddress
Object
See BillingAddress object for more information.
PhoneNumber
String
A phone number for the customer.
7131234567
Type: CC
CardNumber
String
The credit card number.
4111111111111111
CVV
String
The credit card security code.
123
ExpirationDate
String
The credit card expiration date. MM/YYYY
11/2024
ThreeDS.CAVV
String
The 3DS cardholder authentication value.
XYi1pplo2XITHfJdT21SweFz1us=
ThreeDS.ECI
String
The 3DS ECI value.
05
ThreeDS.DSTransactionID
String
The 3DS DS Transaction ID.
d65e93c3-35ab-41ba-b307-767bfc19eae3
Network
String
The credit card network.
Visa
AVSResult
String
The billing address verification result
ExactMatch
CVVResult
String
The CVV verification result
Match
Type: ACH
AccountNumber
String
The bank account number.
123456789
RoutingNumber
String
The bank routing number.
999999999
Type: ApplePay
Payment
String
The full Payment JSON string from Apple. If this is passed, you don't need to pass WalletToken.
WalletToken
String
The paymentData JSON string from Apple's PKPaymentData or ApplePayPaymentData object.
Type: GooglePay
PaymentData
String
The full paymentData JSON string from Google. If this is passed, you don't need to pass WalletToken.
WalletToken
String
The paymentData.paymentMethodData.tokenizationData.token JSON string from Google.

Cashier Object: PaymentMethodSettings

A list of these objects is returned by CreateSession to show you what PaymentMethodTypes you have available.

Only Paypal and GooglePay have additional settings (as shown below), but CreateSession will return an object for every PaymentMethodType you have available. For types other than Paypal and GooglePay, the object will just have a single Type property.

Usage:
CreateSessionDirectCashierResponse (PaymentMethodSettings)
Property Name
Description / Data Type
Example
Type
String
The PaymentMethodType this setting refers to.
CC
Type: Paypal
ClientID
String
The Paypal ClientID.
AWipigSApGaGTWxWxT9THkVKql7K2NfGr5fkOrRwuH...
Type: GooglePay
Environment
String
The Google Pay environment to use.
TEST or PRODUCTION
Gateway
String
The Gateway to provide to Google Pay.
acceptblue
GatewayMerchantID
String
The GatewayMerchantID to provide to Google Pay.
gp_05b140932dd7a938dd4e47654d419cf3
MerchantID
String
The MerchantID to provide to Google Pay.
12345

Cashier Object: BillingAddress

Property Name
Description / Data Type
Example
AddressLine1
String
Customer Address Line 1
5940 Main St.
AddressLine2
String
Customer Address Line 2
Suite A
City
String
Customer City
Las Vegas
StateCode
String
See Appendix: StateCode.
NV
PostalCode
String
Customer postal code.
77587
CountryCode
String
See Appendix: ISO 2 Digit Country Code.
US

Location Object: DeviceGPS

This object should contain the location data derived from the Devices GPS information.

For more information on collecting this data from the Device please click here   to see the table below for both iOS and Android.

Apple / iOS

Device GPS Property Class Property Declaration
Latitude & LongitudeCLLocationcoordinateCLLocationCoordinate2D
latitudeCLLLocationDegrees
longitudeCLLLocationDegrees
RadiusCLLocationhorizontalAccuracyCLLocationAccuracy
AltitudeCLLocationaltitudeCLLocationDistance
SpeedCLLocationspeedCLLocationSpeed
DateTimeCLLocationtimestampNSDate

Android

Device GPS Property Class Property
LatitudeLocationgetLatitude()
LongitudeLocationgetLongitude()
RadiusLocationgetAccuracy()
AltitudeLocationgetAltitude()
SpeedLocationgetSpeed()
DateTimeLocationgetTime()
  The DateTime in Android is a "ticks" and needs to be converted to the dateTime format MM/DD/YYYY HH:MM:SS.000

Property Name
Description / Data Type
Example
Latitude
Customer latitude.
double
36.169727
Longitude
Customer longitude.
double
-115.141801
Radius
Customer approximate distance.
double
600.999
Altitude
The altitude of the determined location.
double
22.9871
Speed
Speed in which the customer is traveling in km / hour.
double
45.999
DateTime
Date time of customer’s location service.
DateTime
10/01/2013 12:42:15 GMT

Appendix Library: Code / Status Index

The information documented below provides clarification of the codes used within the GIDX Platform DirectCashier Services.

Appendix Library: ResponseCodes & ResponseMessage

Code
Message / Description
0
Good - Successful Response
500
General Error - Unknown Response Error
501
Invalid Request - Incorrect Request Format or Access Status
502
Unauthorized Request - Security Block of Request

Appendix Library: Session StatusCode

Code
Message / Description
0
Complete
The process is complete and has met all eligibility requirements.
1
Ineligible
The customer did not supply information that could be successfully validated.
2
Incomplete
Customer stopped during the process and marked as Incomplete.
3
Timeout
The customer exceeded their maximum allowed time to complete for the process.
4
In Progress (plus step number)
This returns the latest 'step' in the process that the customer has completed.

Appendix Library: Session ServiceType

Code (String)
Message / Description
Customer Registration
The service type for this callback applies to the Customer Identity/Registration service.
Payment
The service type for this callback applies to the Payment service.

Appendix Library: PaymentStatusCode (TransactionStatusCode)

Code
Message / Description
-1
Payment not found.
No payment / transaction was found for the corresponding identifier supplied.
0
Pending
The payment/transaction is pending approval or validation.
1
Complete
The payment/transaction has been Completed.
2
Ineligible
The payment/transaction was ineligible for processing.
3
Failed
The payment/transaction was rejected by the processing provider.
4
Processing
The payment/transaction has been sent to the processor and is awaiting a status update.
5
Reversed
The payment/transaction has been reversed by an authorized party.
6
Canceled
The payment/transaction has been canceled.

Payment/TransactionStatusCode Usage

The PaymentStatusCode will be provided when a GIDX service is updating you about a transaction DirectCashier Callback and/or the PaymentDetails method is being called because details/status of the transaction is needed.

In most instances, the PaymentStatus of Pending, Complete, or Failed will be provided, for example...

Pending:
The transaction is in a holding state within the GIDX service for a pre-defined reason such as: the customer needs to complete the ID verification process before the transaction is sent to the bank/processors for processing.
Complete:
The transaction has been completed by the customer and the bank/processor.
Failed:
The processing of the transaction failed at the bank/processor. The details of why the transaction failed are not always provided from the bank/processor in real-time but are updated and viewable in the dashboard as soon as it is provided.

The following PaymentStatus are less common and have specific caveats to their inclusion, for example...

Ineligible:
The transaction was not processed due to reasons associated with the bank/processor. This status is applicable to non-gaming related transactions only.
Reversed:
The transaction was processed but due to reasons associated with the bank/processor it was subsequently reversed - similar to Ineligible but associated with transactions flagged post processing. This status is applicable to non-gaming related transactions only.
Canceled:
The transaction was canceled. Currently applies to the cancellation of recurring transactions.
Processing:
The transaction has been sent for processing at the bank/processor but the response has not been provided. This is a very "edge case" scenario that may occur if the PaymentDetails method is called AFTER the GIDX service begins the processing of a transaction at a bank/processor and BEFORE that bank/processor completes the "processing" of the transaction and provides a response of that process. If this PaymentStatus is returned then the common practice should be to wait 10 to 20 seconds and make the PaymentDetails call again (or wait for the Callback).
Payment Not Found:
The status of "Payment Not Found" would be provided back if the Transaction ID provided in the PaymentDetails method call could not be found.

Appendix Library: PaymentAmountType

Code
Message / Description
CREDIT
For Deposits FROM the customer
This is a transaction where the amount goes FROM the customer's Payment Method TO that same customer's account with Merchant.
DEBIT
For Payouts TO the customer
This is a transaction where the amount goes FROM the Merchant's Account TO a customer's external financial account.
OPEN
Non-Credited / Non-Debited Funds
This is a transaction for an OPEN amount where the service performed is associated with with free play or other non-transferable related credit/debit.

Appendix Library: PaymentMethodType

Code
Message / Description
ACH
Bank ACH Transaction
CC
Credit Card
Check
Check (Interchecks)
Paypal
Paypal

Appendix Library: PaymentAmountCode

Code
Message / Description
Sale
The item representing the PaymentAmount.
Bonus
The item representing the BonusAmount.
Fee
The item representing the FeeAmount.
Tax
The item representing the TaxAmount.

Appendix Library: PayActionCode

Code
Message / Description
PAY
This is a full payment / deposit transaction from the customer to the merchant automatically sent for processing.
PAYOUT
This is a full payout / credit transaction from the merchant to the customers chosen payout method. As default, all PAYOUTS require approval/confirmation by the Merchant.
LOG
Only log the transaction and do not process it automatically.

The PayActionCode has the following rules for usage...
When the PayActionCode value equals PAYOUT the following CashierPaymentAmount variables are ignored: BonusAmount, BonusDetails, BonusExpirationDateTime.

Appendix Library: RecurringInterval

Code
Message / Description
YEARLY
Yearly payment
MONTHLY
Monthly payment

Appendix Library: AVSResult

Code
Message / Description
Unavailable
No address provided or credit card does not support AVS.
NoMatch
None of the address matched.
PartialMatch
Either street address or postal code matched.
ExactMatch
Both street address and postal code matched.

Appendix Library: CVVResult

Code
Message / Description
Unavailable
No CVV provided or credit card does not support CVV.
NoMatch
The CVV did not match.
Match
The CVV matched.

Appendix Library: Data & System Reference

ISO 2 Digit Country Code

ISO 3166-1 is part of the ISO 3166 standard published by the International Organization for Standardization (ISO), and defines codes for the names of countries, dependent territories, and special areas of geographical interest.
http://en.wikipedia.org/wiki/ISO_3166-1

ISO 2 Digit U.S. State Codes

ISO 3166-2:US is the entry for the United States in ISO 3166-2, part of the ISO 3166 standard published by the International Organization for Standardization (ISO), which defines codes for the names of the principal subdivisions (e.g., provinces or states) of all countries coded in ISO 3166-1.
http://en.wikipedia.org/wiki/ISO_3166-2:US

ISO 3 Digit Currency Codes

The ISO 4217 code list is used in banking and business globally. In many countries the ISO codes for the more common currencies are so well known publicly that exchange rates published in newspapers or posted in banks use only these to delineate the different currencies, instead of translated currency names or ambiguous currency symbols.
https://en.wikipedia.org/wiki/ISO_4217

ReasonCodes

For the latest list of Reason Codes and their description please go to the following URL.
View Reason Codes

Payment Method Workflows

Below are descriptions of how each Payment Method is handled by CompleteSession.

ACH

ACH payments are not immediate and will be left in a Pending state at first. In the live environment, you will get a callback when the status is changed. In sandbox, you can manually set the status to Complete in the dashboard and you will receive a callback.

Expected Actions: None

//New Payment Method { "Type": "ACH", "NameOnAccount": "John Smith", "AccountNumber": "1234567", "RoutingNumber": "999999999", "BillingAddress": { "AddressLine1": "1234 Main St", "City": "Anytown", "StateCode": "TX", "PostalCode": "77002", "CountryCode": "US" } }
//Saved Payment Method { "Type": "ACH", "Token": "6CADB8D0-6FAE-40DE-937E-03BA3EC9A7A5" }
https://api.gidx-service.in/v3.0/api/DirectCashier
https://api.gidx-service.in/v3.0/api/DirectCashier

ACH with Actum Authentecheck

Actum Authentecheck allows the user to login to their bank and select their bank account instead of typing the account and routing numbers themselves.

Sending a blank ACH payment method (no AccountNumber and RoutingNumber) will return an Open Action with a URL that you need to open in a new window or tab on the user's device in order to complete the payment.

The selected bank account will be saved for re-use. They will not need to login to their bank on future transactions.

Expected Actions: Open

RedirectURL

Pass a RedirectURL in your CreateSession request if you want the user to be redirected to your site at the end of the Authentecheck process.

The following values will be appended as query string values to the RedirectURL: MerchantSessionID, MerchantTransactionID

In your RedirectURL, you can make an API call to PaymentDetail to get the status.

Test Bank Login

You can use the test bank login below. This specific test bank requires you to confirm the Routing and Account Numbers, but that's not how most major banks will behave.

Bank
Houndstooth Bank
Username
user_good
Password
pass_good
Account
Plaid Saving (****1111)
Routing #
021000021
Account #
1111222233331111
//Payment Method { "Type": "ACH" }
//Action { "Type": "Open", "URL": "https://join.iad.actumprocessing.com/Signup/signupLoad.cgi;jsessionid=17E3594FE483C833536AD344A6C1C43A" }
https://api.gidx-service.in/v3.0/api/DirectCashier
https://api.gidx-service.in/v3.0/api/DirectCashier

Credit Card

When using a saved credit card, you must ask the user to re-enter their CVV and pass it in the request as shown in the sample.

Expected Actions: None

//New Payment Method { "Type": "CC", "NameOnAccount": "John Smith", "CardNumber": "4111111111111111", "ExpirationDate": "11/2024", "CVV": "123", "BillingAddress": { "AddressLine1": "1234 Main St", "City": "Anytown", "StateCode": "TX", "PostalCode": "77002", "CountryCode": "US" } }
//Saved Payment Method { "Type": "CC", "Token": "6CADB8D0-6FAE-40DE-937E-03BA3EC9A7A5", "CVV": "123" }
https://api.gidx-service.in/v3.0/api/DirectCashier
https://api.gidx-service.in/v3.0/api/DirectCashier

Credit Cards with 3DS

To use 3DS for credit card deposits, you should populate the ThreeDS object in the PaymentMethod. ThreeDS is only used in the CompleteSession API. It is ignored when sent to any other API endpoint.

You can get these 3DS values by integrating into a Javascript SDK that provides them:

Expected Actions: None

//CompleteSession PaymentMethod object { "Type": "CC", "Token": "6CADB8D0-6FAE-40DE-937E-03BA3EC9A7A5", "CVV": "123", "ThreeDS": { "CAVV": "XYi1pplo2XITHfJdT21SweFz1us=", "ECI": "05", "DSTransactionID": "d65e93c3-35ab-41ba-b307-767bfc19eae3" } }
https://api.gidx-service.in/v3.0/api/DirectCashier
https://api.gidx-service.in/v3.0/api/DirectCashier

Paypal

Paypal deposits will require you to use Paypal's SDK (JS, iOS, or Android) after you call CompleteSession, using the OrderID returned in the Action.

When any of the SDKs ask for a Client ID, make sure you are using the one associated with the GIDX app within your Paypal developer account.

Expected Actions (Deposits): Paypal
Expected Actions (Payouts): None


JS

First, add a Paypal button to your page.

The JS for the button should look like this:

                    
paypal.Buttons({
    createOrder: (data, actions) => {
        //Call CompleteSession and return the OrderID that is inside the Paypal Action
        return getCompleteSessionResponse()
            .then(function (response) {
                return response.Action.OrderID;
            });
    },
                        
    onApprove: (data, actions) => {
        //There is no need to manually capture the order here as shown in Paypal's own sample.
        //GIDX will be notified when the order is approved and automatically capture it.
                                
        //Here, you can call PaymentDetail to get the latest transaction status and inform the user.
    }
}).render('#paypal-button-container');
                        
                    

iOS

First, add the Native Checkout SDK to your iOS app.

Add a Paypal button, or programmatically start the SDK.

Follow the instructions in their Server-Side Integration section to set CreateOrder and OnApprove callbacks like this:

                    
Checkout.setCreateOrderCallback { createOrderAction in
    //Call CompleteSession and use the OrderID that is inside the Paypal Action
    createOrderActions.set(orderID)
}

Checkout.setOnApproveCallback { approval in
    //There is no need to manually capture the order here as shown in Paypal's own sample.
    //GIDX will be notified when the order is approved and automatically capture it.

    //Here, you can call PaymentDetail to get the latest transaction status and inform the user.
}
                        
                    

Android

First, add the Native Checkout SDK to your Android app.

Add a Paypal button, or programmatically start the SDK.

Follow the instructions in their Server-Side Integration section to set CreateOrder and OnApprove actions like this:

                    
paymentButton.setup(
    new CreateOrder() {
        @Override
        public void create(@NotNull CreateOrderActions createOrderActions) {
            //Call CompleteSession and use the OrderID that is inside the Paypal Action
            String orderID;
            createOrderActions.set(orderID);
        }
    }
);

paymentButton.setup(
    new OnApprove() {
        @Override
        public void onApprove(@NotNull Approval approval) {
            //There is no need to manually capture the order here as shown in Paypal's own sample.
            //GIDX will be notified when the order is approved and automatically capture it.

            //Here, you can call PaymentDetail to get the latest transaction status and inform the user.
        }
    }
);
                        
                    
//Payment Method - Deposit { "Type": "Paypal" }
//Payment Method - Payout { "Type": "Paypal", "EmailAddress": "email@gmail.com" }
//Action - Deposit Only { "Type": "Paypal", "ClientID", "AWipigSApGaGTWxWxT9THkVKql7K2NfGr5fkOrRwuHiSqpQsSylhU9fD4u1bOIQL4Hj142-6DrqeaWJ2", "OrderID": "1KG986478G427540U" }
https://api.gidx-service.in/v3.0/api/DirectCashier
https://api.gidx-service.in/v3.0/api/DirectCashier

Apple Pay

Apple Pay deposits will require you to use Apple's SDK (JS, or iOS) after you call CreateSession. You will then serialize the Payment object returned by Apple to a JSON string, and pass it to CompleteSession.

Sample code available here

Apple Pay JS API Docs

Apple Pay iOS API Docs

Interactive Apple Pay JS Demo

Expected Actions: None

//CompleteSession PaymentMethod object //Sample Payment JSON available here. { "Type": "ApplePay", "Payment": "{"billingContact":{ ... },"token":{"paymentData":{ ... },"paymentMethod":{ ... }}}" }
https://api.gidx-service.in/v3.0/api/DirectCashier
https://api.gidx-service.in/v3.0/api/DirectCashier

Google Pay

Google Pay deposits will require you to use Google's SDK (JS, or Android) after you call CreateSession. You will then serialize the PaymentData object returned by Google to a JSON string, and pass it to CompleteSession.

Sample code available here

Google Pay API Docs

Expected Actions: None

//CompleteSession PaymentMethod object //Sample PaymentData JSON available here. { "Type": "GooglePay", "PaymentData": "{"apiVersionMinor":0,"apiVersion":2,"paymentMethodData":{"description":"Credit •••• 1111", ... }" }
https://api.gidx-service.in/v3.0/api/DirectCashier
https://api.gidx-service.in/v3.0/api/DirectCashier