@memberjunction/actions-bizapps-accounting
Version:
Accounting system integration actions for MemberJunction
78 lines • 1.96 kB
TypeScript
import { QuickBooksBaseAction } from '../quickbooks-base.action';
import { ActionResultSimple, RunActionParams } from '@memberjunction/actions-base';
/**
* Standard transaction interface
*/
export interface Transaction {
id: string;
transactionType: string;
transactionNumber?: string;
transactionDate: Date;
amount: number;
currency: string;
status?: string;
referenceNumber?: string;
memo?: string;
entityName?: string;
entityId?: string;
lines: TransactionLine[];
metadata: Record<string, any>;
}
export interface TransactionLine {
id: string;
lineNumber: number;
description?: string;
amount: number;
accountId?: string;
accountName?: string;
itemId?: string;
itemName?: string;
quantity?: number;
rate?: number;
}
/**
* Action to retrieve transactions from QuickBooks Online
*/
export declare class GetQuickBooksTransactionsAction extends QuickBooksBaseAction {
/**
* Description of the action
*/
get Description(): string;
/**
* Main execution method
*/
protected InternalRunAction(params: RunActionParams): Promise<ActionResultSimple>;
/**
* Get transactions of a specific type
*/
private getTransactionsByType;
/**
* Map QuickBooks transaction to standard format
*/
private mapQuickBooksTransaction;
/**
* Get transaction status based on type
*/
private getTransactionStatus;
/**
* Get entity name based on transaction type
*/
private getEntityName;
/**
* Get entity ID based on transaction type
*/
private getEntityId;
/**
* Map transaction lines
*/
private mapTransactionLines;
/**
* Get account ID from line detail
*/
private getLineAccountId;
/**
* Get account name from line detail
*/
private getLineAccountName;
}
//# sourceMappingURL=get-transactions.action.d.ts.map