summaryrefslogtreecommitdiff
path: root/httemplate/docs/schema.html
blob: c90f476415ba3504600466c0b7a7cab7489eac30 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
<head>
  <title>Schema reference</title>
</head>
<body>
  <h1>Schema reference</h1>
  <ul>
    <li><a name="agent" href="man/FS/agent.html">agent</a> - Agents are resellers of your service.  Agents may be limited to a subset of your full offerings (via their agent type).
      <ul>
        <li>agentnum - primary key
        <li>agent - name of this agent
        <li>typenum - <a href="#agent_type">agent type</a>
        <li>prog - (unimplemented)
        <li>freq - (unimplemented)
      </ul>
    <li><a name="agent_type" href="man/FS/agent_type.html">agent_type</a> - Agent types define groups of packages that you can then assign to particular agents.
      <ul>
        <li>typenum - primary key
        <li>atype - name of this agent type
      </ul>
    <li><a name="cust_bill" href="man/FS/cust_bill.html">cust_bill</a> - Invoices.  Declarations that a customer owes you money.  The specific charges are itemized in <a href="#cust_bill_pkg">cust_bill_pkg</a>.
      <ul>
        <li>invnum - primary key
        <li>custnum - <a href="#cust_main">customer</a>
        <li>_date
        <li>charged - amount of this invoice
        <li>printed - how many times this invoice has been printed automatically
      </ul>
    <li><a name="cust_bill_pkg" href="man/FS/cust_bill_pkg.html">cust_bill_pkg</a> - Invoice line items
      <ul>
        <li>invnum - (multiple) key
        <li>pkgnum - <a href="#cust_pkg">package</a> or 0 for the special virtual sales tax package
        <li>setup - setup fee 
        <li>recur - recurring fee
        <li>sdate - starting date
        <li>edate - ending date
      </ul>
    <li><a name="cust_credit" href="man/FS/cust_credit.html">cust_credit</a> - Credits.  The equivalent of a negative <a href="#cust_bill">cust_bill</a> record.
      <ul>
        <li>crednum - primary key
        <li>custnum - <a href="#cust_main">customer</a>
        <li>amount - amount credited
        <li>_date
        <li>otaker - order taker
        <li>reason
      </ul>
    <li><a name="cust_main" href="man/FS/cust_main.html">cust_main</a> - Customers
      <ul>
        <li>custnum - primary key
        <li>agentnum - <a href="#agent">agent</a>
        <li>refnum - <a href="#part_referral">referral</a>
        <li>first - name
        <li>last - name
        <li>ss - social security number
        <li>company
        <li>address1
        <li>address2
        <li>city
        <li>county
        <li>state
        <li>zip
        <li>country
        <li>daytime - phone
        <li>night - phone
        <li>fax - phone
        <li><i>ship_first</i>
        <li><i>ship_last</i>
        <li><i>ship_company</i>
        <li><i>ship_address1</i>
        <li><i>ship_address2</i>
        <li><i>ship_city</i>
        <li><i>ship_county</i>
        <li><i>ship_state</i>
        <li><i>ship_zip</i>
        <li><i>ship_country</i>
        <li><i>ship_daytime</i>
        <li><i>ship_night</i>
        <li><i>ship_fax</i>
        <li>payby - CARD, BILL, or COMP
        <li>payinfo - card number, P.O.#, or comp issuer
        <li>paydate - expiration date
        <li>payname - billing name (name on card)
        <li>tax - tax exempt, Y or null
        <li>otaker - order taker
      </ul>
      (columns in <i>italics</i> are optional)
    <li><a name="cust_main_invoice" href="man/FS/cust_main_invoice.html">cust_main_invoice</a> - Invoice destinations for email invoices.  Note that a customer can have many email destinations for their invoice (either literal or via svcnum), but only one postal destination.
      <ul>
        <li>destnum - primary key
        <li>custnum - <a href="#cust_main">customer</a>
        <li>dest - Invoice destination.  Freeside supports three types of invoice delivery: send directly to a service defined in Freeside, send to an arbitrary email address, or print the invoice to a printer and have someone send it out via snail mail.  Freeside determines which method to use based on the contents of the dest field.  If the contents are numeric, a <a href="#svc_acct">svcnum</a> pointing to a valid service is expected in the field.  If the contents are a string, a literal email address is expected to be in the field.  If the special keyword `POST' is present, the snail mail method is used (which is the default if no cust_main_invoice records exist).  Snail mail invoices get their address information from <A name="#cust_main">cust_main</A> and are printed with the printer defined in the configuration files.
      </ul>
    <li><a name="cust_main_county" href="man/FS/cust_main_county.html">cust_main_county</a> - Tax rates
      <ul>
        <li>taxnum - primary key
        <li>state
        <li>county
        <li>country
        <li>tax - % rate
      </ul>
    <li><a name="cust_pay" href="man/FS/cust_pay.html">cust_pay</a> - Payments.  Money being transferred from a customer.
      <ul>
        <li>paynum - primary key
        <li>custnum - <a href="#cust_main">customer</a>
        <li>paid - amount
        <li>_date
        <li>payby - CARD, BILL, or COMP
        <li>payinfo - card number, P.O.#, or comp issuer
        <li>paybatch - text field for tracking card processor batches
      </ul>
    <li><a name="cust_bill_pay" href="man/FS/cust_bill_pay.html">cust_bill_pay</a> - Applicaton of a payment to a specific invoice.
      <ul>
        <li>billpaynum
        <li>invnum - <a href="#cust_bill">invoice</a>
        <li>paynum - <a href="#cust_pay">payment</a>
        <li>amount
        <li>_date
      </ul>
    <li><a name="cust_pay_batch" href="man/FS/cust_pay_batch.html">cust_pay_batch</a> - Pending batch
      <ul>
        <li>trancode - 77 for charges
        <li>cardnum
        <li>exp - card expiration
        <li>amount
        <li>invnum - <a href="#cust_bill">invoice</a>
        <li>custnum - <a href="#cust_main">customer</a>
        <li>payname - name on card
        <li>first - name
        <li>last - name
        <li>address1
        <li>address2
        <li>city
        <li>state
        <li>zip
        <li>country
      </ul>
    <li><a name="cust_pkg" href="man/FS/cust_pkg.html">cust_pkg</a> - Customer billing items
      <ul>
        <li>pkgnum - primary key
        <li>custnum - <a href="#cust_main">customer</a>
        <li>pkgpart - <a href="#part_pkg">Package definition</a>
        <li>setup - date
        <li>bill - next bill date
        <li>susp - (past) suspension date
        <li>expire - (future) cancellation date
        <li>cancel - (past) cancellation date
        <li>otaker - order taker
      </ul>
    <li><a name="cust_refund" href="man/FS/cust_refund.html">cust_refund</a> - Refunds.  The transfer of money to a customer; equivalent to a negative <a href="#cust_pay">cust_pay</a> record.
      <ul>
        <li>refundnum - primary key
        <li>custnum - <a href="#cust_main">customer</a>
        <li>refund - amount
        <li>_date
        <li>payby - CARD, BILL or COMP
        <li>payinfo - card number, P.O.#, or comp issuer
        <li>otaker - order taker
      </ul>
    <li><a name="cust_credit_refund" href="man/FS/cust_credit_refund.html">cust_credit_refund</a> - Applicaton of a refund to a specific credit.
      <ul>
        <li>creditrefundnum - primary key
        <li>crednum - <a href="#cust_credit">credit</a>
        <li>refundnum - <a href="#cust_refund">refund</a>
        <li>amount
        <li>_date
      </ul>
    <li><a name="cust_svc" href="man/FS/cust_svc.html">cust_svc</a> - Customer services
      <ul>
        <li>svcnum - primary key
        <li>pkgnum - <a href="#cust_pkg">package</a>
        <li>svcpart - <a href="#part_svc">Service definition</a>
      </ul>
    <li><a name="nas" href="man/FS/nas.html">nas</a> - Network Access Server (terminal server)
      <ul>
        <li>nasnum - primary key
        <li>nas - NAS name
        <li>nasip - NAS ip address
        <li>nasfqdn - NAS fully-qualified domain name
        <li>last - timestamp indicating the last instant the NAS was in a known state (used by the session monitoring).
      </ul>
    <li><a name="part_pkg" href="man/FS/part_pkg.html">part_pkg</a> - Package definitions
      <ul>
        <li>pkgpart - primary key
        <li>pkg - package name
        <li>comment - non-customer visable package comment
        <li>setup - setup fee
        <li>freq - recurring frequency (months)
        <li>recur - recurring fee
      </ul>
    <li><a name="part_referral" href="man/FS/part_referral.html">part_referral</a> - Referral listing
      <ul>
        <li>refnum - primary key
        <li>referral - referral
      </ul>
    <li><a name="part_svc" href="man/FS/part_svc.html">part_svc</a> - Service definitions
      <ul>
        <li>svcpart - primary key
        <li>svc - name of this service
        <li>svcdb - table used for this service: svc_acct, svc_acct_sm, svc_forward, svc_domain, svc_charge or svc_wo
        <li><i>table</i>__<i>field</i> - Default or fixed value for <i>field</i> in <i>table</i>
        <li><i>table</i>__<i>field</i>_flag - null, D or F
      </ul>
    <li><a name="pkg_svc" href="man/FS/pkg_svc.html">pkg_svc</a>
      <ul>
        <li>pkgpart - <a href="#part_pkg">Package definition</a>
        <li>svcpart - <a href="#part_svc">Service definition</a>
        <li>quantity - quantity of this service that this package includes
      </ul>
    <li><a name="port" href="man/FS/port.html">port</a> - individual port on a <a href="#nas">nas</a>
      <ul>
        <li>portnum - primary key
        <li>ip - IP address of this port
        <li>nasport - port number on the NAS
        <li>nasnum - <a href="#nas">NAS</a>
      </ul>
    <li><a name="prepay_credit" href="man/FS/prepay_credit.html">prepay_credit</a>
      <ul>
        <li>prepaynum - primary key
        <li>identifier - text or numeric string used to receive this credit
        <li>amount - amount of credit
      </ul>
    <li><a name="session" href="man/FS/session.html">session</a>
      <ul>
        <li>sessionnum - primary key
        <li>portnum - <a href="#port">Port</a>
        <li>svcnum - <a href="#svc_acct">Account</a>
        <li>login - timestamp indicating the beginning of this user session.
        <li>logout - timestamp indicating the end of this user session.  May be null, which indicates a currently open session.
      </ul>

    <li><a name="svc_acct" href="man/FS/svc_acct.html">svc_acct</a> - Accounts
      <ul>
        <li>svcnum - <a href="#cust_svc">primary key</a>
        <li>username
        <li>_password
        <li>popnum - <a href="#svc_acct_pop">Point of Presence</a>
        <li>uid
        <li>gid
        <li>finger - GECOS
        <li>dir
        <li>shell
        <li>quota - (unimplementd)
        <li>slipip - IP address
        <li>radius_<i>Radius_Attribute</i> - Radius-Attribute
      </ul>
    <li><a name="svc_acct_pop" href="man/FS/svc_acct_pop.html">svc_acct_pop</a> - Points of Presence
      <ul>
        <li>popnum - primary key
        <li>city
        <li>state
        <li>ac - area code
        <li>exch - exchange
        <li>loc - rest of number
      </ul>
    <li><a name="svc_acct_sm" href="man/FS/svc_acct_sm.html">svc_acct_sm</a> - <b>DEPRECIATED</b> Domain mail aliases
      <ul>
        <li>svcnum - <a href="#cust_svc">primary key</a>
        <li>domsvc - <a href="#svc_domain">Domain</a> (by svcnum)
        <li>domuid - <a href="#svc_acct">Account</a> (by uid)
        <li>domuser - domuser @ <a href="#svc_domain">Domain</a> forwards to <a href="#svc_acct">Account</a>
      </ul>
    <li><a name="svc_domain" href="man/FS/svc_domain.html">svc_domain</a> - Domains
      <ul>
        <li>svcnum - <a href="#cust_svc">primary key</a>
        <li>domain
      </ul>
    <li><a name="svc_forward" href="man/FS/svc_forward.html">svc_forward</a> - Mail forwarding aliases
      <ul>
        <li>svcnum - <a href="#cust_svc">primary key</a>
        <li>srcsvc - <a href="#svc_acct">svcnum of the source of this forward</a>
        <li>dstsvc - <a href="#svc_acct">svcnum of the destination of this forward</a>
        <li>dst - foreign destination (email address) - forward not local to freeside
      </ul>
    <li><a name="domain_record" href="man/FS/domain_record.html">domain_record</a> - Domain zone detail
      <ul>
        <li>recnum - primary key
        <li>svcnum - <a href="#svc_domain">Domain</a> (by svcnum)
        <li>reczone - zone for this line
        <li>recaf - address family, usually <b>IN</b>
        <li>rectype - type for this record (<b>A</b>, <b>MX</b>, etc.)
        <li>recdata - data for this record
      </ul>
    <li><a name="svc_www" href="man/FS/svc_www.html">svc_www</a>
      <ul>
       <li>svcnum - <a href="#cust-svc">primary key</a>
       <li>recnum - <a href="#domain_record">host</a>
       <li>usersvc - <a href="#svc_acct">account</a>
      </ul>
    <li><a name="type_pkgs" href="man/FS/type_pkgs.html">type_pkgs</a>
      <ul>
        <li>typenum - <a href="#agent_type">agent type</a>
        <li>pkgpart - <a href="#part_pkg">Package definition</a>
      </ul>
  </ul>
</body>