To start using the "E-goods" add-on in an X-Cart 5 store, install it as described in Installing Add-ons from X-Cart App Store.
When installed and enabled, proceed to the add-on settings page to configure it.
You'll see a page like this. First, configure the provided settings as described below.
Download link TTL (days): Specify the number of days a buyer will have to access the downloadable product they have purchased using the provided link. To allow unlimited access, set this value to zero.
Important: The "Download link TTL (days)" setting does not apply to files stored on Amazon S3 Signed URLs. The Amazon Signed URL will be available for seven days; X-Cart has no control of that. However, in this case, the link availability can be restricted using the setting "Downloads limit (per 1 ordered item)" described below.
Downloads limit (per 1 ordered item): Specify the number of downloads available to the buyer who has purchased a downloadable product (i.e., how many times the buyer of a downloadable product should download the product using the download link provided to them). To allow unlimited access, set this value to zero.
Important: Since X-Cart cannot track the files downloaded from Amazon Signed URLs, the setting "Downloads limit (per 1 ordered item)" will only affect the number of times that a URL can be opened by the buyer (regardless of whether the file has been downloaded).
Keep a history of downloads: Specify whether your X-Cart store should record downloads for downloadable files. Because X-Cart cannot track downloads from the Amazon S3 storage, the history of downloads will be formed based on the buyer's attempts to open the respective Amazon S3 Signed URLs for files of the kind.
Show only ESD-related fulfillment statuses: Enable this option if you sell only downloadable products and want to eliminate any fulfillment statuses used for tangible goods but not for e-goods. It will disable all standard X-Cart order fulfillment statuses except the following three: New, Delivered, and Will Not Deliver. If you wish, you can rename the statuses as you require using the "Custom order statuses" add-on.
Approve before providing access to download: Disable this option if you want the buyer of a downloadable product to automatically get a download link for the purchased product as soon as they have paid for the order. On the other hand, enable this option if you want all e-goods orders to be submitted to you for manual review first. This way, you can approve or forbid access to the downloadable file for the buyer.
All e-goods orders have the "Waiting for approve" initial fulfillment status in the manual review mode. For buyers to get a download link, you will need to reset the order fulfillment status from "Waiting for approve" to any other status, except for "Will not deliver."
To facilitate the download of large file attachments (100+ Mb) by customers, use X-Sendfile. To do so, contact your hosting provider to make sure X-Sendfile is installed on the server and configure your X-Cart installation to support large file downloads. For details, see Large File Download Performance.
Alternatively, use Amazon S3 Signed URLs. See Configuring Amazon S3 Signed URLs for more info.
Due to the specifics of how digital products are delivered to buyers, you should also give some thought to what payment methods you will make available on your store website. For example, you may consider disabling any online payment methods with automatic order processing and enable only those payment methods that require manual processing, or you may enable payment methods that allow using the "auth only" mode.
The "auth only" mode means that the order total is not withdrawn from the buyer's payment card at the time of order placement. Still, authorization is requested to ensure that the required sum is available. The store administrator needs to take steps to capture the authorized amount or void the authorization manually. The download link does not become available to the buyer until the order amount is charged and the order gets processed.
Processing orders that contain downloadable products using payment methods with "auth only" mode or other ways that require manual order processing allows you to filter suspicious and potentially fraudulent orders and approve only trustworthy purchases.