- Print
- DarkLight
- PDF
Integration with own RetailVista gift card.
This document describes how an integration can be made with the sold gift cards in RetailVista. This description consists of two main parts, retrieving gift card balances and recording or depreciating balances of gift cards. For the latter, a webshop producer must complete a certification with NedFox. The reason for this is that it involves processing of monetary flows, where correct procedural operation is of great importance.
For both parts, communication with the Retail3000 front office environment is important.
Communication with Retail3000 Front Office
In order to retrieve gift cards and potentially make changes, a connection must be made with the front office web services of Retail3000. These web services are generally publicly accessible, standard without IP restrictions, and via a secure (https) connection. The exact URL differs per customer installation and can be requested from NedFox.
Gift Card Functions
The gift card functions are located in the PosComponents.asmx web service. Each gift card function works with a Request and a Response object.
The following functions are available:
ProductResponse ProductActivate(ProductActivationRequest request)
This function can be used to activate a product with a specified balance. This function can only be used after certification.
ProductResponse ProductActivateCheck(ProductActivationRequest request)
This function can be used to check if activation is possible with a specified desired balance. This function does not activate the product, but is only intended to verify if the final activation would proceed correctly. This can be used to perform the corresponding payment after a successful check, after which the product is permanently activated.
ProductResponse ProductWithdrawCheck(ProductWithdrawalRequest request)
This function can be used to check if a withdrawal of the product with a specified balance would proceed correctly. This function can be used in a payment cycle to first check if a product has sufficient balance.
ProductResponse ProductInfo(ProductRequest request)
This function returns all available product information, such as balance, expiration date, number of transactions already performed, etc.
ProductResponse GenerateReturnProduct(ProductActivationRequest request)
This function can be used to generate a return product as a result of returned items. A return product may differ from a normal product because special return definitions are set in RetailVista, such as validity period, etc.
ProductResponse ProductWithdraw(ProductWithdrawalRequest request)
This function can be used to withdraw a specified balance from a product.
The following Request objects are available:
GiftCardActivationRequest:GiftCardRequest
This is an object that can be used to activate a new gift card.
Balance | Decimal | Top-up amount on new gift card |
GiftCardWithdrawalRequest:GiftCardRequest
This is an object that can be used to withdraw balance from a gift card.
Withdrawal | Decimal | Amount to be withdrawn |
GiftCardRequest
This is an object that can be used to retrieve information about a gift card.
RequestId | Int32 | Unique value, response object returns this value to indicate which response corresponds to which request |
CardNumber | Int64 | Gift card number |
VerificationCode | String | If a verification code is provided for the gift card as an additional security measure, this code must be provided to access that gift card |
Reference | Reference | Reference to mention in case of transactions |
Credentials | GiftCardCredentials | Authorization object |
GiftCardCredentials
MerchantUsername | String | Retail3000 username |
MerchantPassword | String | Retail3000 password |
CompanyNumber | Int32 | Retail3000 company number |
StoreNumber | Int16 | Retail3000 store number |
PosTerminalNumber | Int16 | POS terminal number where mutation takes place |
The following Response objects are available:
GiftCardResponse
All gift card functions use the same return response object as an answer to a gift card function.
RequestId | Int32 | This response is in response to a request with this RequestId value |
Result | GiftCardResult | Result of the request |
CardInfo | GiftCardServiceObjectInfo | Gift card information |
Reference | GiftCardReference | Retail3000 reference on balance mutation |
GiftCardResult
Status | <enum>GiftCardResultStatus | Result status |
ExceptionCode | <enum>GiftCardResultExceptionCode | Error code, NotSpecified if no error |
Message | String | Explanation text on result |
Enum GiftCardResultStatus
NotSpecified,
Success,
CreditException,
CardException,
ServerException
Enum GiftCardResultExceptionCode
NotSpecified,
InsufficientBalance,
MaxTransactionsReached,
CardNotFound,
CardExpired,
CardBlocked,
CardNotActivated,
CardAlreadyActivated,
InvalidVerificationCode,
InvalidCredentials,
InvalidBalance,
InvalidCardStatus
GiftCardServiceObjectInfo
GiftCardTypeId | Int32 | Primary key of GiftCardTypes table |
CustomerId | Int32 | Primary key of Customers table |
CardNumber | Int64 | Gift card number |
VerificationCode | String | Verification code of gift card |
Status | <enum>GiftCardServiceObjectStatus | Status of the gift card |
InitialBalance | Decimal | Initial gift card value |
Balance | Decimal | Current gift card value |
TransactionsRemaining | Int32 | Number of remaining transactions |
ExpiryDate | DateTime | Expiration date of the gift card |
Enum GiftCardServiceObjectStatus
NotSpecified = 0,
Active = 1,
Blocked = 2,
NotActivated = 3,
GiftCardReference
TransactionId | Int32 | Transaction ID assigned by Retail3000 |