UNPKG

paypal-integrations-intacct

Version:

Integration between paypal and intacct using hapi.

59 lines (58 loc) 1.87 kB
import * as hapi from "hapi"; import { IBillingInfo, IInvoice, IInvoiceItem, InvoiceModel, IWebhookEvent, PayPalRestApi } from "paypal-rest-api"; import { HapiIntacctInvoicing } from "./intacct"; export * from "./intacct"; export interface IInvoicingOptions { cron: { create?: { auto: boolean; latertext: string; }; refund?: { auto: boolean; latertext: string; }; }; paymentaccounts?: { default: string; currencies?: { [key: string]: string; }; }; merchant: IBillingInfo; reminderDays?: number; startDate: string; } export declare const intacctInvoiceExtend: { PAYPALERROR: string; PAYPALINVOICEID: string; PAYPALINVOICESTATUS: string; PAYPALINVOICEURL: string; PAYPALINVOICING: string; }; export declare class HapiPayPalIntacctInvoicing { static intacctKeys: string[]; private _intacct; private _paypal; private _server; private _options; constructor(); intacct: HapiIntacctInvoicing; paypal: PayPalRestApi; server: hapi.Server; options: IInvoicingOptions; register: hapi.PluginFunction<any>; webhookHandler(webhook: IWebhookEvent): Promise<void>; createPayment(invoice: IInvoice): Promise<void>; validateAccounts(): Promise<void>; validateKeys(): Promise<void>; refundInvoicesSync(): Promise<void>; refundInvoiceSync(invoice: any): Promise<void>; createInvoiceSync(): Promise<void>; syncIntacctToPayPal(invoice: any): Promise<any>; syncPayPalToIntacct(invoice: InvoiceModel): Promise<void>; toPaypalInvoice(intacctInvoice: any): any; toPayPalLineItems(arrInvoiceItems: any): IInvoiceItem[]; init(): Promise<void>; updateInacctInvoiceWithPayPalModel(intacctInvoice: any, paypalInvoice: InvoiceModel): any; }