This section answers some of the questions that are asked commonly. If you don't find the answer to your question, please get in touch with your implementation specialist and they will assist you.

FAQs on Token

Q1. How to automate the lifecycle of auth tokens?

  • For the first time, you will generate the access and refresh token from the admin dashboard. This process is detailed here. This access token is valid for 15 days and the refresh token is valid for 30 days.

  • Within this 15 day period, you can do Access Token generation from Refresh Token. It will give you a new valid token for the next 15 days. This process is detailed here.

  • To check how much time your token has before it dies, Use this guide here

  • If you miss refreshing your token within 15 days and it expires, you can still do Access Token generation from Refresh Token in the next 15 days.

The only time you need to do STEP 2 - Authorization Request + STEP 3 - Token Exchange again is when you failed to regenerate the access token and lose your refresh token.

We would suggest for this super rare situation, you can automate the process by creating a single-page app. Which takes care of STEP 2 - Authorization Request + STEP 3 - Token Exchange and stores the access token and refresh token somewhere, where it can be used for APIs. This is not required but recommended.

FAQs on Stock

Q. Do you store a prepaid digital stock of NON - API Vendors?

Yes, we do store a prepaid digital stock of NON - API Vendors, based on basic customer projections and our past experience. In case some of these are exhausted it takes 3/4 working days to refill. If it's a popular brand we store it from 50-100 prepaid stocks and if it's an average brand we store around 5-10 prepaid stocks.

Q. Do you have an API that enables us to check your real-time prepaid stock?

No, We don’t have such API.

Q. What happens if you run out of prepaid stock and how is this handled? and How long does it take to resupply?

Case 1 - When a request is sent and Xoxoday fulfills the request immediately, In this case, the response we give is "Success=1, Link + Code/pin for the request"

Case 2 - When a request is sent and if Xoxoday could not fulfill the request immediately, we put the order into Pending, In this case, the response we give is "Success=1, Link in the request" (there will be no Code/pin)

Case 3 - When a request is sent and if Xoxoday did not fulfill/not able to fulfill the order, In this case, the response we give is "Success = 0" (there will no Link or Code/pin in response)

We run a code for every half an hour to check the supply, at a max level it can take up to 7 days.

Q. Does your new API have a unique error message for out-of-stock orders?

Yes - PLE10024: "Vouchers are out of stock".

FAQs on Orders

Q. Are there any webhooks which provide the update on change in order status in case of delayed order ?

Currently, there are no Webhook. However, it is in our pipeline and will be released By Q1 2022.

Q. Can we use the same PO Number again?

For the canceled order, you can send the same PO Number again. But once an order is successful, the same poNumber will generate an error.

Q. What are the different values expected in orderStatus and type?

If you receive a response, orderStatus will always be "completed" while the deliveryStatus could be either "Canceled", "Pending" or "Delivered".

Q. How do we handle the use case of a missed response?

You can always send the poNumber through the GetOrderDetails API which should get you the same order's response in the exact same format as the PlaceOrder API.

Q. What are the types of responses one can expect while placing orders via API?

The Xoxoday catalog has 4 types of products:

  • Gift card with code

  • Gift card with code + Pin

  • Gift card with URL

  • Gift cards with URL + Pins

In all the mentioned three cases redemption process will be the same. the end-user has to avail of the gift card at the relevant merchant website. The “How & where to use” field which you see in the GET LISTING API will provide you these details. case 1 - The recipient has to use the CODE alone to avail the gift card on the merchant website case 2 - The recipient has to use the CODE & PIN to avail the gift card on the merchant website case 3 - The recipient has to use the URL to add the amount into the recipient’s merchant wallet or from the URL recipient will get the code to avail the gift card in the merchant website (it depends on gift card products

How response will look like

  • For code: only voucherCode field will have value in the response.

  • For codePin: voucherCode and pin both will have value.

  • For URL: voucherCode field will have a valid URL in response.

  • For URL+pin: voucherCode field will have both a valid URL and pin in response.

Q. What happens if duplicate payloads are sent?

Xoxoday does not handle duplicate payloads presently. Any order which is sent into Xoxoday will be processed immediately.

Q. What time zone is the time stamp in order details?

The default time zone is in IST format. If you want to store this information on your end in the time zone you want, you can convert it and store it.

FAQs on Staging / Production

Q. How do the Staging Sandbox environments mirror the Production environment?

Currently, the staging environments mirror the production Environment workflow, but differences occur with regard to the following:

  • Client ID and Secret ID will differ

  • The number of products and denominations available in staging is limited. In Production, you will have access to the full catalog

Q. What is the Xoxoday Deployment Schedule?

Xoxoday has a zero-downtime deployment. Should you run into any issues, please reach out to your implementation manager with the environment, API request, error response, and time.

Q. Does Xoxoday throttle API requests in any manner?

Xoxoday platform will throttle application clients sending more than 5,000 requests/second. If you have a use case that requires a higher limit, please reach out to your implementation manager.

Q. How is the redirect_uri handled in staging and production?

In staging, the redirect_uri is relaxed which means you can use any uri in the URL as well as the API as long as they are the same (url encoded in the url). In production, there can be multiple ur specific uri that will work for the redirection part since the redirect_url there will not be relaxed.

Misc FAQs

Q. Will there be any notification if any gift cards are removed or are unavailable?

You can use GetVouchers API to check the latest status of a voucher. We don't send any notifications.

Q. Will the API support multi-admin?

API support multi admin feature is currently unavailable and in the works. We expect to go live with it soon.

Q. How are you applying exchange rates to the gift cards? I noticed there's an exchange rate rule in the API. Is this applied at the point of sending the gift card, or when it is claimed? Or is that something we can control on our side?

Yes, there is an exchange rate applicable for every purchase, Xoxoday has its own exchange rate, which we used to update once in a quarter, this exchange rate is used at the time of order placing. In the order response, we send back the applied exchange rate for that order.

Q. What happens if the gift card is temporarily not available or becomes canceled? Is there some type of notification to us?

Currently, we don't have a notification system, but we are in process of building a notification engine that will proactively notify about such outages. This feature will go live by June end. In the meantime, we recommend syncing with our catalog every 24-48 hrs (through GET VOUCHER API), which will give you the right available products.

Q. Is the product image resizing possible in the listing API?

Yes, since we are hosting images in Cloudinary, we support the ability to resize the images.

One can add width and height parameters in the image URL to make it into the required size. Please refer to the below URL as an example. https://res.cloudinary.com/dyyjph6kx/image/upload/w_300,h_300/gift_vouchers/php5B2iD8_xigpa9.jpg

Q. Will Xoxoday notify us in case a product is Enabled/Disabled/Denomination changes?

Xoxoday Plum will be sending notification emails to all super admins of Plum pro clients detailing Product and denomination updates. This notification will be triggered once in 24hrs, in the notification, we will be giving the list of products & changes that happened to it. This will keep them informed of any changes in the catalogue which was previously tedious to track.

Q. How does Xoxoday handle History Tracking?

Xoxoday does not publish History via the API – this information is, however, recorded within the platform and can be requested if required.