Upgrade 3CX to v18 and get it hosted free!

ModifiedPrePaidApplicationDatabaseConfiguration

Author image
Database Configuration / Layout

 

table description
call Stores the information about all calls (starttime/endtime/device/…)
cid Caller identification numbers get stored here for use with card
cardtype for the different card types
card Information about calling cards which are in use at the moment
country Full countryname for a countrycode
countryprefix Prefix for all countries + subcodes (FIX/MOB)
provider The provider which can be used for outgoing calls (+which technology)
providerdestination Tells the system which provider can route calls to which destination
providerrate The provider / destinations rates
reseller Registered calling card resellers
order Stores information about new card orders
sale Stores information about a calling card sale to a customer
tariff You can have more than one defined tariff for your customers
tariffrate The rates for each tariff per destination

Database Layout
Database Layout Dia File

Table cardtype

fieldname fieldtype references description
cardtypeid integer primary key Cardtype ID
value integer Start Credit
description text Card description
active boolean Indicates if this Cardtype is sellable
tariffid integer tariff:tariffid References the tariff for this Cardtype
lifetime integer The lifetime of this card in days
frequency integer how often to pulse in seconds (for billing)
startpulse integer how much to bill for the incoming call in seconds

Table cid
The first entry in this table is a dummy entry with the cidid 1, resselerid 1 and without a cid – this is necassary so that the foreign key at the table card can reference to this entry if the card is not associated with a real cid.

fieldname fieldtype references description
cidid integer Caller Identification ID
cid integer Caller Identification
resellerid integer reseller:resellerid References the reseller who has entered this cid
createtime datetime When was it created

Table card

fieldname fieldtype references description
cardid text primary key (random(16) digits – unique
cidid integer cid:cidid References the cid
payed boolean indicates if the card is already payed by the reseller
cardtypeid integer cardtype:cardtypeid references the cardtype
resellerid integer reseller:resellerid references the reseller which has bought the card
credit integer the actual available credit in cent
activated boolean if the card is activated by the reseller
deactivated datetime when was the card deactivated
expires datetime when will the card expire (NULL = never)

Table reseller
The first entry (resellerid=1) is your own company – is necassary for the foreign key constraint at the table card.

fieldname fieldtype references description
resellerid integer primary key
username text(20) username for the reseller platform
userpass text(20) password for the reseller platform

Table sale

fieldname fieldtype references description
saleid integer primary key
cardid text card:cardid Reference to the sold card
saletime datetime When was the card sold

Table order

fieldname fieldtype references description
orderid integer primary key
cardid text card:cardid References the card which was ordered
ordertime datetime When was the order placed

Table country

fieldname fieldtype references description
countrycode text International countrycode(primary key)
countryname text International countryname

Table countryprefix

fieldname fieldtype references description
countryprefixid integer primary key
prefix text The Prefix (e.g. 43 for Austria)
countrycode text country:countrycode The international countrycode
subcode text Subcode (FIX = Fixed Line, MOB = Mobile)

Table tariff

fieldname fieldtype references description
tariffid integer primary key
tariffname text Tariff name

Table tariffrate

fieldname fieldtype references description
tariffrateid integer primary key
tariffid integer tariff:tariffid To which tariff belongs this special tariff
countryprefixid integer countryprefix:countryprefixid References the Prefix
rate real The costs in cent per minute

Table provider

fieldname fieldtype references description
providerid integer primary key
carriercode text The carrier code
providertech text Which technology should be used to connect to the provider
providerip text The ip if it is a voip connection
providername text The provider name

Table providerdestination

fieldname fieldtype references description
providerdestinationid integer primary key
countryprefixid integer countryprefix:countryprefixid References the prefix
providerid integer provider:providerid Reference to the provider

Table providerrate

fieldname fieldtype references description
providerrateid integer primary key
providerid integer provider:providerid References the provider
countryprefixid integer countryprefix:countryprefixid References the prefix
rate real The costs in cent per minute

Table call

fieldname fieldtype references description
callid integer primary key
countryprefixid integer countryprefix:countryprefixid References the prefix
providerid integer provider:providerid References the provider
cardid integer card:cardid References the card which was used for the call
tariffid integer tariff:tariffid References the tariff used for billing
channel text the channel name
uniqueid text a unique call id
starttime datetime the call start time
stoptime datetime the call stop time
sessiontime integer the complete session time in seconds
pulsetime integer the pulsed time in seconds according to the timing
callednumber text the destination number
startdelay integer time between the call start and the real call start in seconds
stopdelay integer time between the call end and the real call end in seconds
terminatecause text how was the call terminated
sessionbill integer the costs for this call in cents

Related Posts:

Get 3CX - Absolutely Free!
Link up your team and customers Phone System Live Chat Video Conferencing

Hosted or Self-managed. Up to 10 users free forever. No credit card. Try risk free.

3CX
A 3CX Account with that email already exists. You will be redirected to the Customer Portal to sign in or reset your password if you've forgotten it.