@dime-technology/dime-js-sdk 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,438 @@
1
+ declare const DEFAULT_BASE_URL = "https://app.dimepayments.com";
2
+ declare const VERSION = "1.0.0";
3
+ interface ConfigOptions {
4
+ /** Sanctum personal access token (sent as Bearer). */
5
+ token: string;
6
+ /** Base URL; defaults to https://app.dimepayments.com. */
7
+ baseUrl?: string;
8
+ /** Per-request timeout in seconds. Default 30. */
9
+ timeout?: number;
10
+ /** How many times to retry 429/5xx/network errors. Default 2. */
11
+ maxRetries?: number;
12
+ /** Base seconds for exponential backoff. Default 0.5. */
13
+ retryBaseDelay?: number;
14
+ /** Custom fetch implementation — inject a mock in tests. */
15
+ fetch?: typeof globalThis.fetch;
16
+ /** Custom sleep implementation — inject a no-op in tests to skip delays. */
17
+ sleep?: (ms: number) => Promise<void>;
18
+ }
19
+ declare class Config {
20
+ readonly token: string;
21
+ readonly baseUrl: string;
22
+ readonly timeout: number;
23
+ readonly maxRetries: number;
24
+ readonly retryBaseDelay: number;
25
+ readonly fetch?: typeof globalThis.fetch;
26
+ readonly sleep?: (ms: number) => Promise<void>;
27
+ constructor(options: ConfigOptions | string, baseUrl?: string);
28
+ baseUri(): string;
29
+ }
30
+
31
+ type Raw$m = Record<string, unknown>;
32
+ declare class Address {
33
+ readonly id?: number | undefined;
34
+ readonly recipient?: string | undefined;
35
+ readonly lineOne?: string | undefined;
36
+ readonly lineTwo?: string | undefined;
37
+ readonly lineThree?: string | undefined;
38
+ readonly city?: string | undefined;
39
+ readonly state?: string | undefined;
40
+ readonly zip?: string | undefined;
41
+ constructor(id?: number | undefined, recipient?: string | undefined, lineOne?: string | undefined, lineTwo?: string | undefined, lineThree?: string | undefined, city?: string | undefined, state?: string | undefined, zip?: string | undefined);
42
+ static fromRaw(data: Raw$m): Address;
43
+ }
44
+
45
+ type Raw$l = Record<string, unknown>;
46
+ declare class MessageResult {
47
+ readonly message?: string | undefined;
48
+ constructor(message?: string | undefined);
49
+ static fromRaw(data: Raw$l): MessageResult;
50
+ }
51
+
52
+ type PageFetcher<T> = (cursor: string) => Promise<CursorPage<T>>;
53
+ declare class CursorPage<T> {
54
+ readonly data: T[];
55
+ readonly nextCursor?: string | undefined;
56
+ readonly prevCursor?: string | undefined;
57
+ readonly perPage?: number | undefined;
58
+ readonly path?: string | undefined;
59
+ private readonly fetcher?;
60
+ constructor(data: T[], nextCursor?: string | undefined, prevCursor?: string | undefined, perPage?: number | undefined, path?: string | undefined, fetcher?: PageFetcher<T> | undefined);
61
+ hasMore(): boolean;
62
+ next(): Promise<CursorPage<T> | null>;
63
+ /** Lazily iterate every item across all remaining pages. */
64
+ autoPaging(): AsyncGenerator<T>;
65
+ [Symbol.iterator](): Iterator<T>;
66
+ get length(): number;
67
+ }
68
+
69
+ type Raw$k = Record<string, unknown>;
70
+ declare class Transport {
71
+ private readonly config;
72
+ private readonly fetchFn;
73
+ private readonly sleepFn;
74
+ constructor(config: Config);
75
+ /**
76
+ * Execute a request and return the decoded JSON body.
77
+ *
78
+ * The Dime API expects request parameters in the JSON body even for GET
79
+ * requests; this transport always sends the payload as a JSON body regardless
80
+ * of HTTP method, matching the server's expectation.
81
+ */
82
+ request(method: string, path: string, body?: Raw$k, query?: Record<string, string>): Promise<Raw$k>;
83
+ private attempt;
84
+ private sleep;
85
+ }
86
+
87
+ type Raw$j = Record<string, unknown>;
88
+ declare abstract class AbstractResource {
89
+ protected readonly transport: Transport;
90
+ constructor(transport: Transport);
91
+ /**
92
+ * Build the standard Dime request envelope, dropping null/undefined values.
93
+ */
94
+ protected envelope(data?: Raw$j, filters?: Raw$j): Raw$j;
95
+ protected paginate<T>(method: string, path: string, body: Raw$j, map: (item: Raw$j) => T, query?: Record<string, string>): Promise<CursorPage<T>>;
96
+ }
97
+
98
+ type Raw$i = Record<string, unknown>;
99
+ declare class Addresses extends AbstractResource {
100
+ list(sid: string, uuid: string): Promise<CursorPage<Address>>;
101
+ show(sid: string, uuid: string, addressId: number | string): Promise<Address>;
102
+ create(sid: string, uuid: string, attributes: Raw$i): Promise<Address>;
103
+ update(sid: string, uuid: string, addressId: number | string, attributes: Raw$i): Promise<Address>;
104
+ delete(sid: string, uuid: string, addressId: number | string): Promise<MessageResult>;
105
+ }
106
+
107
+ type Raw$h = Record<string, unknown>;
108
+ declare class Customer {
109
+ readonly uuid?: string | undefined;
110
+ readonly firstName?: string | undefined;
111
+ readonly lastName?: string | undefined;
112
+ readonly phone?: string | undefined;
113
+ readonly email?: string | undefined;
114
+ readonly addr1?: string | undefined;
115
+ readonly addr2?: string | undefined;
116
+ readonly addr3?: string | undefined;
117
+ readonly city?: string | undefined;
118
+ readonly state?: string | undefined;
119
+ readonly zip?: string | undefined;
120
+ readonly country?: string | undefined;
121
+ constructor(uuid?: string | undefined, firstName?: string | undefined, lastName?: string | undefined, phone?: string | undefined, email?: string | undefined, addr1?: string | undefined, addr2?: string | undefined, addr3?: string | undefined, city?: string | undefined, state?: string | undefined, zip?: string | undefined, country?: string | undefined);
122
+ static fromRaw(data: Raw$h): Customer;
123
+ }
124
+
125
+ type Raw$g = Record<string, unknown>;
126
+ declare class Customers extends AbstractResource {
127
+ list(sid: string, filters?: Raw$g): Promise<CursorPage<Customer>>;
128
+ show(sid: string, filters: Raw$g): Promise<Customer>;
129
+ create(sid: string, attributes: Raw$g): Promise<Customer>;
130
+ update(sid: string, filters: Raw$g, attributes: Raw$g): Promise<Customer>;
131
+ delete(sid: string, filters: Raw$g): Promise<MessageResult>;
132
+ }
133
+
134
+ type Raw$f = Record<string, unknown>;
135
+ declare class Deposit {
136
+ readonly transactionDate?: string | undefined;
137
+ readonly fundDate?: string | undefined;
138
+ readonly transactionInfoId?: string | undefined;
139
+ readonly transactionId?: string | undefined;
140
+ readonly transactionDetailAccount?: string | undefined;
141
+ readonly authorizationAmount?: string | undefined;
142
+ readonly netAmount?: string | undefined;
143
+ readonly sweepId?: string | undefined;
144
+ readonly type?: string | undefined;
145
+ constructor(transactionDate?: string | undefined, fundDate?: string | undefined, transactionInfoId?: string | undefined, transactionId?: string | undefined, transactionDetailAccount?: string | undefined, authorizationAmount?: string | undefined, netAmount?: string | undefined, sweepId?: string | undefined, type?: string | undefined);
146
+ static fromRaw(data: Raw$f): Deposit;
147
+ }
148
+
149
+ type Raw$e = Record<string, unknown>;
150
+ declare class TransactionAddress {
151
+ readonly firstName?: string | undefined;
152
+ readonly lastName?: string | undefined;
153
+ readonly addr1?: string | undefined;
154
+ readonly addr2?: string | undefined;
155
+ readonly city?: string | undefined;
156
+ readonly state?: string | undefined;
157
+ readonly zip?: string | undefined;
158
+ constructor(firstName?: string | undefined, lastName?: string | undefined, addr1?: string | undefined, addr2?: string | undefined, city?: string | undefined, state?: string | undefined, zip?: string | undefined);
159
+ static fromRaw(data: Raw$e): TransactionAddress;
160
+ }
161
+
162
+ type Raw$d = Record<string, unknown>;
163
+ declare class Transaction {
164
+ readonly transactionType?: string | undefined;
165
+ readonly transactionStatus?: string | undefined;
166
+ readonly transactionStatusDescription?: string | undefined;
167
+ readonly transactionNumber?: string | undefined;
168
+ readonly transactionDate?: string | undefined;
169
+ readonly fundDate?: string | undefined;
170
+ readonly settleDate?: string | undefined;
171
+ readonly amount?: string | undefined;
172
+ readonly description?: string | undefined;
173
+ readonly statusCode?: string | undefined;
174
+ readonly statusText?: string | undefined;
175
+ readonly email?: string | undefined;
176
+ readonly phone?: string | undefined;
177
+ readonly customerUuid?: string | undefined;
178
+ readonly multiUseToken?: string | undefined;
179
+ readonly pending: boolean;
180
+ readonly transactionInfoId?: string | undefined;
181
+ readonly parentTransactionInfoId?: string | undefined;
182
+ readonly billingAddress: TransactionAddress;
183
+ readonly shippingAddress: TransactionAddress;
184
+ constructor(transactionType?: string | undefined, transactionStatus?: string | undefined, transactionStatusDescription?: string | undefined, transactionNumber?: string | undefined, transactionDate?: string | undefined, fundDate?: string | undefined, settleDate?: string | undefined, amount?: string | undefined, description?: string | undefined, statusCode?: string | undefined, statusText?: string | undefined, email?: string | undefined, phone?: string | undefined, customerUuid?: string | undefined, multiUseToken?: string | undefined, pending?: boolean, transactionInfoId?: string | undefined, parentTransactionInfoId?: string | undefined, billingAddress?: TransactionAddress, shippingAddress?: TransactionAddress);
185
+ static fromRaw(data: Raw$d): Transaction;
186
+ }
187
+
188
+ type Raw$c = Record<string, unknown>;
189
+ declare class DepositWithTransactions {
190
+ readonly sid?: string | undefined;
191
+ readonly transactionInfoId?: string | undefined;
192
+ readonly transactionId?: string | undefined;
193
+ readonly transactionDate?: string | undefined;
194
+ readonly fundDate?: string | undefined;
195
+ readonly type?: string | undefined;
196
+ readonly countOfTransactions?: number | undefined;
197
+ readonly transTotal?: string | undefined;
198
+ readonly transactions: Transaction[];
199
+ constructor(sid?: string | undefined, transactionInfoId?: string | undefined, transactionId?: string | undefined, transactionDate?: string | undefined, fundDate?: string | undefined, type?: string | undefined, countOfTransactions?: number | undefined, transTotal?: string | undefined, transactions?: Transaction[]);
200
+ static fromRaw(data: Raw$c): DepositWithTransactions;
201
+ }
202
+
203
+ type Raw$b = Record<string, unknown>;
204
+ declare class DepositGroup {
205
+ readonly sid?: string | undefined;
206
+ readonly count?: number | undefined;
207
+ readonly deposits: DepositWithTransactions[];
208
+ constructor(sid?: string | undefined, count?: number | undefined, deposits?: DepositWithTransactions[]);
209
+ static fromRaw(data: Raw$b): DepositGroup;
210
+ }
211
+
212
+ type Raw$a = Record<string, unknown>;
213
+ declare class Deposits extends AbstractResource {
214
+ list(sid: string, filters?: Raw$a): Promise<CursorPage<Deposit>>;
215
+ listWithTransactions(sid: string, filters: Raw$a): Promise<DepositGroup>;
216
+ show(sid: string, identifier: Raw$a): Promise<DepositWithTransactions>;
217
+ }
218
+
219
+ type Raw$9 = Record<string, unknown>;
220
+ declare class FormLink {
221
+ readonly link?: string | undefined;
222
+ constructor(link?: string | undefined);
223
+ static fromRaw(data: Raw$9): FormLink;
224
+ }
225
+
226
+ type Raw$8 = Record<string, unknown>;
227
+ declare class Merchant {
228
+ readonly name?: string | undefined;
229
+ readonly sid?: string | undefined;
230
+ readonly mcc?: string | undefined;
231
+ readonly slug?: string | undefined;
232
+ readonly pubApiKey?: string | undefined;
233
+ readonly processorMid?: string | undefined;
234
+ readonly active: boolean;
235
+ readonly activeAt?: string | undefined;
236
+ readonly gPay: boolean;
237
+ readonly aPay: boolean;
238
+ readonly pciCompliance: boolean;
239
+ readonly website?: string | undefined;
240
+ readonly addr1?: string | undefined;
241
+ readonly addr2?: string | undefined;
242
+ readonly city?: string | undefined;
243
+ readonly state?: string | undefined;
244
+ readonly zip?: string | undefined;
245
+ readonly phone?: string | undefined;
246
+ readonly primaryPhone?: string | undefined;
247
+ readonly primaryEmail?: string | undefined;
248
+ readonly primaryName?: string | undefined;
249
+ constructor(name?: string | undefined, sid?: string | undefined, mcc?: string | undefined, slug?: string | undefined, pubApiKey?: string | undefined, processorMid?: string | undefined, active?: boolean, activeAt?: string | undefined, gPay?: boolean, aPay?: boolean, pciCompliance?: boolean, website?: string | undefined, addr1?: string | undefined, addr2?: string | undefined, city?: string | undefined, state?: string | undefined, zip?: string | undefined, phone?: string | undefined, primaryPhone?: string | undefined, primaryEmail?: string | undefined, primaryName?: string | undefined);
250
+ static fromRaw(data: Raw$8): Merchant;
251
+ }
252
+
253
+ type Raw$7 = Record<string, unknown>;
254
+ declare class Merchants extends AbstractResource {
255
+ list(filters?: Raw$7): Promise<CursorPage<Merchant>>;
256
+ show(sid: string): Promise<Merchant>;
257
+ create(attributes: Raw$7): Promise<Merchant>;
258
+ update(sid: string, attributes: Raw$7): Promise<Merchant>;
259
+ getFormLink(sid: string): Promise<FormLink>;
260
+ }
261
+
262
+ type Raw$6 = Record<string, unknown>;
263
+ declare class PaymentMethod {
264
+ readonly id?: number | undefined;
265
+ readonly type?: string | undefined;
266
+ readonly token?: string | undefined;
267
+ readonly firstName?: string | undefined;
268
+ readonly lastName?: string | undefined;
269
+ readonly ccNameOnCard?: string | undefined;
270
+ readonly ccLastFour?: string | undefined;
271
+ readonly ccExpirationDate?: string | undefined;
272
+ readonly ccBrand?: string | undefined;
273
+ readonly achBankAccountName?: string | undefined;
274
+ readonly achRoutingNumber?: string | undefined;
275
+ readonly achAccountNumber?: string | undefined;
276
+ readonly achOwnershipType?: string | undefined;
277
+ readonly achAccountType?: string | undefined;
278
+ readonly achBankName?: string | undefined;
279
+ readonly status?: string | undefined;
280
+ readonly statusDate?: string | undefined;
281
+ readonly enabled: boolean;
282
+ readonly isDefault: boolean;
283
+ readonly addr1?: string | undefined;
284
+ readonly addr2?: string | undefined;
285
+ readonly addr3?: string | undefined;
286
+ readonly city?: string | undefined;
287
+ readonly state?: string | undefined;
288
+ readonly zip?: string | undefined;
289
+ constructor(id?: number | undefined, type?: string | undefined, token?: string | undefined, firstName?: string | undefined, lastName?: string | undefined, ccNameOnCard?: string | undefined, ccLastFour?: string | undefined, ccExpirationDate?: string | undefined, ccBrand?: string | undefined, achBankAccountName?: string | undefined, achRoutingNumber?: string | undefined, achAccountNumber?: string | undefined, achOwnershipType?: string | undefined, achAccountType?: string | undefined, achBankName?: string | undefined, status?: string | undefined, statusDate?: string | undefined, enabled?: boolean, isDefault?: boolean, addr1?: string | undefined, addr2?: string | undefined, addr3?: string | undefined, city?: string | undefined, state?: string | undefined, zip?: string | undefined);
290
+ static fromRaw(data: Raw$6): PaymentMethod;
291
+ }
292
+
293
+ type Raw$5 = Record<string, unknown>;
294
+ declare class PaymentMethods extends AbstractResource {
295
+ list(sid: string, filters: Raw$5): Promise<CursorPage<PaymentMethod>>;
296
+ show(sid: string, paymentMethodId: number | string, filters: Raw$5): Promise<PaymentMethod>;
297
+ create(sid: string, attributes: Raw$5): Promise<PaymentMethod>;
298
+ update(sid: string, attributes: Raw$5): Promise<PaymentMethod>;
299
+ delete(sid: string, paymentMethodId: number | string, uuid: string): Promise<MessageResult>;
300
+ }
301
+
302
+ type Raw$4 = Record<string, unknown>;
303
+ declare class RecurringPaymentMethod {
304
+ readonly id?: number | undefined;
305
+ readonly type?: string | undefined;
306
+ readonly lastFour?: string | undefined;
307
+ readonly expiration?: string | undefined;
308
+ readonly zip?: string | undefined;
309
+ readonly nameOnCard?: string | undefined;
310
+ readonly bankAccountName?: string | undefined;
311
+ readonly routingNumber?: string | undefined;
312
+ readonly accountNumber?: string | undefined;
313
+ readonly ownershipType?: string | undefined;
314
+ readonly accountType?: string | undefined;
315
+ readonly bankName?: string | undefined;
316
+ constructor(id?: number | undefined, type?: string | undefined, lastFour?: string | undefined, expiration?: string | undefined, zip?: string | undefined, nameOnCard?: string | undefined, bankAccountName?: string | undefined, routingNumber?: string | undefined, accountNumber?: string | undefined, ownershipType?: string | undefined, accountType?: string | undefined, bankName?: string | undefined);
317
+ static fromRaw(data: Raw$4): RecurringPaymentMethod;
318
+ }
319
+
320
+ type Raw$3 = Record<string, unknown>;
321
+ declare class RecurringPayment {
322
+ readonly id?: number | undefined;
323
+ readonly name?: string | undefined;
324
+ readonly amount?: string | undefined;
325
+ readonly startDate?: string | undefined;
326
+ readonly endDate?: string | undefined;
327
+ readonly recurrenceSchedule?: string | undefined;
328
+ readonly lastRunDate?: string | undefined;
329
+ readonly lastRunStatus?: string | undefined;
330
+ readonly lastRunFailedCount?: number | undefined;
331
+ readonly nextRunDate?: string | undefined;
332
+ readonly status?: string | undefined;
333
+ readonly pausedUntilDate?: string | undefined;
334
+ readonly customerUuid?: string | undefined;
335
+ readonly cancelledAt?: string | undefined;
336
+ readonly error?: string | undefined;
337
+ readonly paymentMethod: RecurringPaymentMethod;
338
+ readonly shippingAddress: TransactionAddress;
339
+ constructor(id?: number | undefined, name?: string | undefined, amount?: string | undefined, startDate?: string | undefined, endDate?: string | undefined, recurrenceSchedule?: string | undefined, lastRunDate?: string | undefined, lastRunStatus?: string | undefined, lastRunFailedCount?: number | undefined, nextRunDate?: string | undefined, status?: string | undefined, pausedUntilDate?: string | undefined, customerUuid?: string | undefined, cancelledAt?: string | undefined, error?: string | undefined, paymentMethod?: RecurringPaymentMethod, shippingAddress?: TransactionAddress);
340
+ static fromRaw(data: Raw$3): RecurringPayment;
341
+ }
342
+
343
+ type Raw$2 = Record<string, unknown>;
344
+ declare class RecurringPayments extends AbstractResource {
345
+ list(sid: string, filters?: Raw$2): Promise<CursorPage<RecurringPayment>>;
346
+ show(sid: string, recurringPaymentId: number | string): Promise<RecurringPayment>;
347
+ create(sid: string, attributes: Raw$2): Promise<RecurringPayment>;
348
+ edit(sid: string, recurringPaymentId: number | string, attributes: Raw$2): Promise<RecurringPayment>;
349
+ pause(sid: string, recurringPaymentId: number | string, pauseUntilDate?: string): Promise<RecurringPayment>;
350
+ cancel(sid: string, recurringPaymentId: number | string): Promise<RecurringPayment>;
351
+ activate(sid: string, recurringPaymentId: number | string): Promise<RecurringPayment>;
352
+ delete(sid: string, recurringPaymentId: number | string): Promise<MessageResult>;
353
+ }
354
+
355
+ type Raw$1 = Record<string, unknown>;
356
+ declare class TokenizeResult {
357
+ readonly token?: string | undefined;
358
+ constructor(token?: string | undefined);
359
+ static fromRaw(data: Raw$1): TokenizeResult;
360
+ }
361
+
362
+ type Raw = Record<string, unknown>;
363
+ declare class Transactions extends AbstractResource {
364
+ list(sid: string, filters?: Raw): Promise<CursorPage<Transaction>>;
365
+ show(sid: string, identifier: Raw): Promise<Transaction>;
366
+ chargeCard(sid: string, attributes: Raw): Promise<Transaction>;
367
+ /** @deprecated The API marks this deprecated; prefer chargeCard() with a token. */
368
+ chargeCardToken(sid: string, attributes: Raw): Promise<Transaction>;
369
+ chargeAch(sid: string, attributes: Raw): Promise<Transaction>;
370
+ tokenizeCard(sid: string, attributes: Raw): Promise<TokenizeResult>;
371
+ refund(sid: string, attributes: Raw): Promise<MessageResult>;
372
+ void(sid: string, transactionType: string, transactionId: number | string): Promise<MessageResult>;
373
+ }
374
+
375
+ /**
376
+ * Entry point for the Dime Payments API.
377
+ *
378
+ * ```ts
379
+ * const dime = new Client('your-api-token')
380
+ * const txn = await dime.transactions.chargeCard('000010', {
381
+ * amount: '49.99',
382
+ * token: 'tok_abc123',
383
+ * })
384
+ * ```
385
+ */
386
+ declare class Client {
387
+ readonly transactions: Transactions;
388
+ readonly customers: Customers;
389
+ readonly paymentMethods: PaymentMethods;
390
+ readonly merchants: Merchants;
391
+ readonly addresses: Addresses;
392
+ readonly deposits: Deposits;
393
+ readonly recurringPayments: RecurringPayments;
394
+ private readonly _config;
395
+ constructor(token: string | Config, baseUrl?: string);
396
+ config(): Config;
397
+ }
398
+
399
+ declare class DimeException extends Error {
400
+ readonly statusCode?: number | undefined;
401
+ readonly responseBody: Record<string, unknown>;
402
+ constructor(message: string, statusCode?: number | undefined, responseBody?: Record<string, unknown>, cause?: unknown);
403
+ getStatusCode(): number | undefined;
404
+ getResponseBody(): Record<string, unknown>;
405
+ }
406
+
407
+ declare class ValidationException extends DimeException {
408
+ readonly errors: Record<string, string[]>;
409
+ constructor(message: string, errors?: Record<string, string[]>, statusCode?: number, responseBody?: Record<string, unknown>, cause?: unknown);
410
+ getErrors(): Record<string, string[]>;
411
+ firstError(): string | undefined;
412
+ }
413
+
414
+ declare class RateLimitException extends DimeException {
415
+ readonly retryAfter?: number | undefined;
416
+ constructor(message: string, retryAfter?: number | undefined, statusCode?: number, responseBody?: Record<string, unknown>, cause?: unknown);
417
+ getRetryAfter(): number | undefined;
418
+ }
419
+
420
+ declare class ApiException extends DimeException {
421
+ }
422
+
423
+ declare class AuthenticationException extends DimeException {
424
+ }
425
+
426
+ declare class PermissionDeniedException extends DimeException {
427
+ }
428
+
429
+ declare class NotFoundException extends DimeException {
430
+ }
431
+
432
+ declare class ServerException extends DimeException {
433
+ }
434
+
435
+ declare class ConnectionException extends DimeException {
436
+ }
437
+
438
+ export { Address, ApiException, AuthenticationException, Client, Config, ConnectionException, CursorPage, Customer, DEFAULT_BASE_URL, Deposit, DepositGroup, DepositWithTransactions, DimeException, FormLink, Merchant, MessageResult, NotFoundException, PaymentMethod, PermissionDeniedException, RateLimitException, RecurringPayment, RecurringPaymentMethod, ServerException, TokenizeResult, Transaction, TransactionAddress, VERSION, ValidationException };