@memberjunction/actions-bizapps-accounting
Version:
Accounting system integration actions for MemberJunction
83 lines • 2.31 kB
TypeScript
import { BusinessCentralBaseAction } from '../business-central-base.action';
import { ActionParam, ActionResultSimple, RunActionParams } from '@memberjunction/actions-base';
/**
* Interface for a Sales Invoice from Business Central
*/
export interface BCSalesInvoice {
id: string;
number: string;
invoiceDate: Date;
dueDate: Date;
customerNumber: string;
customerName: string;
customerId: string;
status: string;
totalAmountExcludingTax: number;
totalTaxAmount: number;
totalAmountIncludingTax: number;
remainingAmount: number;
currencyCode: string;
paymentTermsId?: string;
shipmentMethodId?: string;
billToName: string;
billToCustomerId: string;
shipToName?: string;
shipToContact?: string;
sellToAddressLine1?: string;
sellToAddressLine2?: string;
sellToCity?: string;
sellToState?: string;
sellToCountry?: string;
sellToPostCode?: string;
externalDocumentNumber?: string;
lastModifiedDateTime: Date;
lines?: BCSalesInvoiceLine[];
}
export interface BCSalesInvoiceLine {
id: string;
lineNumber: number;
lineType: string;
itemId?: string;
accountId?: string;
description: string;
quantity: number;
unitPrice: number;
discountAmount: number;
discountPercent: number;
netAmount: number;
taxCode?: string;
amountExcludingTax: number;
taxPercent: number;
totalTaxAmount: number;
amountIncludingTax: number;
}
/**
* Action to retrieve sales invoices from Microsoft Dynamics 365 Business Central
*/
export declare class GetBusinessCentralSalesInvoicesAction extends BusinessCentralBaseAction {
/**
* Description of the action
*/
get Description(): string;
/**
* Main execution method
*/
protected InternalRunAction(params: RunActionParams): Promise<ActionResultSimple>;
/**
* Map Business Central sales invoice to standard format
*/
private mapBCSalesInvoice;
/**
* Map invoice lines
*/
private mapInvoiceLines;
/**
* Calculate invoice summary statistics
*/
private calculateInvoiceSummary;
/**
* Define the parameters for this action
*/
get Params(): ActionParam[];
}
//# sourceMappingURL=get-sales-invoices.action.d.ts.map