Since Oracle XE was initially released in January 2006 I believed there was no usage restriction whatsoever with regards to the type of application you could build with Oracle XE and especially in combination with Oracle Application Express (Oracle APEX).
Just recently a customer of mine was told by an Oracle sales rep
in Germany that certain usage scenarios are not covered by the
Oracle XE license and he therefore would have to purchase a
regular Oracle (at least Standard One) license for that purpose.
This sales rep argued that once you build an application as a
hosted solution storing customer data in this database, this is no
longer covered by the XE license.
I was stunned and couldn't believe that. Then I had a close look
at the official license agreement:
There I noticed that this usage scenario wasn't covered explicitly
and I wasn't 100% sure any more. I have checked the forum again
and there I saw, that these questions do come up once in a while,
here are just a few examples:
Thus I decided to get some official statement from Oracle.
Oracle authorities from Database Product Management and Oracle
Pricing responded to my request and confirmed that any
application-specific usage of Oracle XE is covered by the license
agreement and there is no usage related restriction imposed on
I have explicitly asked for the following use cases:
1) A web application for the internal staff only: A calendaring
application where one could record his times of absence. The
application is reachable via the internet but protected by a
login. Only the employees of the company running Oracle XE are
allowed to access the application.
2) A web application used by everybody, no customer content stored
in the database: This could be a company website which is built on
Oracle XE / APEX. This application is reachable over the internet
by everybody. Content is only provided by the company running
3) A web application used by customers on their own data (no
manipulation through website): This could be an application
similar to the UPS or DHL tracking of parcels. Information is
processed in other backend systems and published to Oracle XE to
allow a customer to query for his/her own data.
4) Supporting a business process via a web application among
several of my customers: This could be a portal allowing a
customer to invite other parties to bid on a public project (like
building a railroad track). This portal (built using Oracle APEX
and Oracle XE) supports the communication between all parties and
allows the upload / download of files with regard to specific
parts of the bid.
5) A web application used by customers to provide services to
others: This could be multi-tenant shop system where different
customers open their own shop and upload their product catalogs in
order to resell them to their own customers.
Aside from that you would still have to comply to all other
elements of the license agreement:
i.e. you have to comply to the export restriction, your end
customers would have to agree to the XE license agreement and so
Cheers and enjoy Oracle XE and Oracle APEX!