General

RetailVista has extensive giftcard support. There is support for an 'internal' RetailVista giftcard, but also giftcards of external providers like TCS, Intersolve and so on. The different providers can be added to RetailVista as 'Giftcard types'. Also the internal RetailVista giftcards are addressed as a 'provider' by adding it as a giftcard type.

In the future, it's most likely that giftcard types will be renamed to provider.

Giftcard functionality like withdrawal, activate etcetera of RetailVista giftcards can be executed by using the Retail3000 API. For external giftcards like TCS and Intersolve, an integration with their API is required, Retail3000 does not have functionality implemented. It would only act as a hub which would be error-prone and difficult to support. For the RetailVista giftcard, simulate (check) methods are available to test if a certain activation or withdrawal would be succesfull once executed. It's advised to use the 'check' methods to test if an operation can be executed. For example, in a payment process the method 'GiftCardWithdrawCheck' can be called to verify if a certain withdrawal would be succesfull. If not, the payment can be aborted and customer should choose an alternate payment method.

All giftcard methods can be found in the webservice PosComponents.asmx. This webservice hosts the next important methods:

GiftCardActivateCheck

Check if activation of a giftcard with a given amount would be succesfull. The maximum amount on a giftcard is EUR 150. This limit is by law.

As part of the activation, a VerificationCode can be given. This can be an additional safety code given by the customer which can be used on withdrawal. At that moment an extra security question can be asked to secure the withdrawal process. This has not been fully implemented at this moment, so we advice not to use this feature now or contact us to discuss the full implementation.

GiftCardActivate Activate a giftcard with a given amount. Existing cards cannot be loaded with extra value. This is not supported, only 'New' giftcards can be activated.
GiftCardWithdrawCheck Check if withdrawal of a giftcard with a given amount would be succesfull. When for example a giftcard is blocked, the withdrawal cannot happen and in the response object, error information will be included.
GiftCardWithdraw Withdraw a giftcard with a given amount.
GenerateReturnGiftCard Generate a new giftcard for return of goods. This can result in a giftcard with other definitions like for example the expiry date of the giftcard. This date can be shorter as when buying a regular giftcard.
GiftCardInfo Get information about a certain giftcard like expiry date, remaining balance etc.

It important to take care for the transactional character of giftcard transactions. For example if a giftcard is withdrawn, the belonging transaction should be finalized. Cancellation of certain transactions is not available at this moment. Also when for example a giftcard is bought in a webshop, the activation absolutelly needs to be succesfull when the webshop basket is paid. By using 'check' methods at first, activation and withdrawal can be checked before closing/finalizing a transaction.

Every method mentioned above uses a request/response model. In the request object, all necessary parameters can be submitted, while in the response object all required information is returned.