conductor-node 8.0.3 → 8.2.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.
- package/README.md +1 -1
- package/dist/package.json +1 -1
- package/dist/src/Client.d.ts +27 -18
- package/dist/src/Client.js +32 -29
- package/dist/src/graphql/graphqlOperationWrapper.d.ts +1 -1
- package/dist/src/graphql/graphqlOperationWrapper.js +4 -4
- package/dist/src/integrations/BaseIntegration.d.ts +5 -2
- package/dist/src/integrations/BaseIntegration.js +9 -3
- package/dist/src/integrations/qbd/QbdIntegration.d.ts +280 -0
- package/dist/src/integrations/qbd/QbdIntegration.js +281 -1
- package/dist/src/integrations/qbd/qbdTypes.d.ts +2905 -698
- package/dist/src/utils.d.ts +2 -0
- package/dist/src/{utils/checkForUpdates.js → utils.js} +10 -6
- package/package.json +1 -1
- package/dist/src/utils/checkForUpdates.d.ts +0 -1
- package/dist/src/utils/environment.d.ts +0 -9
- package/dist/src/utils/environment.js +0 -19
|
@@ -287,6 +287,40 @@ class QbdIntegration extends BaseIntegration_1.default {
|
|
|
287
287
|
*/
|
|
288
288
|
query: async (integrationConnectionId, params) => this.sendRequestBase(integrationConnectionId, { BillPaymentCheckQueryRq: params }, "BillPaymentCheckQueryRs", "BillPaymentCheckRet"),
|
|
289
289
|
};
|
|
290
|
+
charge = {
|
|
291
|
+
/**
|
|
292
|
+
* Adds a customer charge. A `Charge` contains information about a statement
|
|
293
|
+
* charge. (A `CreditCardCharge` object, on the other hand, refers to a
|
|
294
|
+
* credit card charge incurred by the QuickBooks user.)
|
|
295
|
+
*
|
|
296
|
+
* https://developer.intuit.com/app/developer/qbdesktop/docs/api-reference/qbdesktop/ChargeAdd
|
|
297
|
+
*/
|
|
298
|
+
add: async (integrationConnectionId, params) => this.sendRequestBase(integrationConnectionId, { ChargeAddRq: { ChargeAdd: params } }, "ChargeAddRs", "ChargeRet"),
|
|
299
|
+
/**
|
|
300
|
+
* Modifies the specified charge.
|
|
301
|
+
*
|
|
302
|
+
* Some fields in a `ChargeMod` request cannot be cleared. If any of the
|
|
303
|
+
* following fields is included in a charge modify request, it must contain
|
|
304
|
+
* a value:
|
|
305
|
+
* - `CustomerRef`
|
|
306
|
+
* - `TxnDate`
|
|
307
|
+
* - `ItemRef`
|
|
308
|
+
* - `Quantity`
|
|
309
|
+
* - `Rate`
|
|
310
|
+
* - `Amount`
|
|
311
|
+
* - `ARAccountRef`
|
|
312
|
+
* - `OverrideItemAccountRef`
|
|
313
|
+
*
|
|
314
|
+
* https://developer.intuit.com/app/developer/qbdesktop/docs/api-reference/qbdesktop/ChargeMod
|
|
315
|
+
*/
|
|
316
|
+
mod: async (integrationConnectionId, params) => this.sendRequestBase(integrationConnectionId, { ChargeModRq: { ChargeMod: params } }, "ChargeModRs", "ChargeRet"),
|
|
317
|
+
/**
|
|
318
|
+
* Returns information about statement charges.
|
|
319
|
+
*
|
|
320
|
+
* https://developer.intuit.com/app/developer/qbdesktop/docs/api-reference/qbdesktop/ChargeQuery
|
|
321
|
+
*/
|
|
322
|
+
query: async (integrationConnectionId, params) => this.sendRequestBase(integrationConnectionId, { ChargeQueryRq: params }, "ChargeQueryRs", "ChargeRet"),
|
|
323
|
+
};
|
|
290
324
|
check = {
|
|
291
325
|
/**
|
|
292
326
|
* The amount of a check is the total of the amounts assigned to expense
|
|
@@ -458,6 +492,211 @@ class QbdIntegration extends BaseIntegration_1.default {
|
|
|
458
492
|
*/
|
|
459
493
|
query: async (integrationConnectionId, params) => this.sendRequestBase(integrationConnectionId, { EmployeeQueryRq: params }, "EmployeeQueryRs", "EmployeeRet"),
|
|
460
494
|
};
|
|
495
|
+
estimate = {
|
|
496
|
+
/**
|
|
497
|
+
* Adds an estimate. A QuickBooks estimate is a description of a sale that
|
|
498
|
+
* the QuickBooks user proposes to make to a current or prospective
|
|
499
|
+
* customer. An estimate might also be called a “bid” or a “proposal.” In
|
|
500
|
+
* QuickBooks, estimates and invoices use similar fields, and an estimate
|
|
501
|
+
* can be converted into an invoice after the customer accepts the estimate.
|
|
502
|
+
*
|
|
503
|
+
* An estimate is a non-posting transaction, so it does not affect a
|
|
504
|
+
* company’s balance sheet or income statement.
|
|
505
|
+
*
|
|
506
|
+
* https://developer.intuit.com/app/developer/qbdesktop/docs/api-reference/qbdesktop/EstimateAdd
|
|
507
|
+
*/
|
|
508
|
+
add: async (integrationConnectionId, params) => this.sendRequestBase(integrationConnectionId, { EstimateAddRq: { EstimateAdd: params } }, "EstimateAddRs", "EstimateRet"),
|
|
509
|
+
/**
|
|
510
|
+
* Modifies the specified estimate.
|
|
511
|
+
*
|
|
512
|
+
* Some fields in an `EstimateMod` request cannot be cleared. If any of the
|
|
513
|
+
* following fields is included in an estimate modify request, it must
|
|
514
|
+
* contain a value:
|
|
515
|
+
* - `CustomerRef`
|
|
516
|
+
* - `TemplateRef`
|
|
517
|
+
* - `TxnDate`
|
|
518
|
+
* - `IsActive`
|
|
519
|
+
* - `CreateChangeOrder`
|
|
520
|
+
* - `DueDate`
|
|
521
|
+
* - `ItemSalesTaxRef`
|
|
522
|
+
*
|
|
523
|
+
* Within `EstimateLineMod` or `EstimateLineGroupMod`:
|
|
524
|
+
* - `ItemRef`
|
|
525
|
+
* - `Quantity`
|
|
526
|
+
* - `Rate`
|
|
527
|
+
* - `Amount`>
|
|
528
|
+
* - `SalesTaxCodeRef`
|
|
529
|
+
* - `Markup`
|
|
530
|
+
*
|
|
531
|
+
* https://developer.intuit.com/app/developer/qbdesktop/docs/api-reference/qbdesktop/EstimateMod
|
|
532
|
+
*/
|
|
533
|
+
mod: async (integrationConnectionId, params) => this.sendRequestBase(integrationConnectionId, { EstimateModRq: { EstimateMod: params } }, "EstimateModRs", "EstimateRet"),
|
|
534
|
+
/**
|
|
535
|
+
* Queries for the specified estimate or set of estimates.
|
|
536
|
+
*
|
|
537
|
+
* https://developer.intuit.com/app/developer/qbdesktop/docs/api-reference/qbdesktop/EstimateQuery
|
|
538
|
+
*/
|
|
539
|
+
query: async (integrationConnectionId, params) => this.sendRequestBase(integrationConnectionId, { EstimateQueryRq: params }, "EstimateQueryRs", "EstimateRet"),
|
|
540
|
+
};
|
|
541
|
+
invoice = {
|
|
542
|
+
/**
|
|
543
|
+
* Adds an invoice.
|
|
544
|
+
*
|
|
545
|
+
* An invoice records the amount owed by a customer who purchased goods or
|
|
546
|
+
* services but did not pay in full at the time of the sale. If full payment
|
|
547
|
+
* is received at the time of the sale, it is recorded as a sales receipt,
|
|
548
|
+
* not an invoice.
|
|
549
|
+
*
|
|
550
|
+
* In QuickBooks, invoices and estimates use similar fields, and an estimate
|
|
551
|
+
* can be converted into an invoice after the customer accepts the estimate.
|
|
552
|
+
* However, in the SDK, there is currently no ability to create an invoice
|
|
553
|
+
* directly from an estimate (you cannot link an invoice to an estimate).
|
|
554
|
+
*
|
|
555
|
+
* If you Add an invoice that has an inventory item on it, QB will
|
|
556
|
+
* automatically calculate COGS and post it to the COGS account. (The
|
|
557
|
+
* inventory item will need to be setup to post to the COGS account and must
|
|
558
|
+
* have a unit cost in it.) However, notice that such an InvoiceAdd has
|
|
559
|
+
* sales prices, not cost, so the Add is not impacting the cost of the item.
|
|
560
|
+
* The cost of the item is only affected by purchases (bills and item
|
|
561
|
+
* receipts) sales and inventory adjustments.
|
|
562
|
+
*
|
|
563
|
+
* https://developer.intuit.com/app/developer/qbdesktop/docs/api-reference/qbdesktop/InvoiceAdd
|
|
564
|
+
*/
|
|
565
|
+
add: async (integrationConnectionId, params) => this.sendRequestBase(integrationConnectionId, { InvoiceAddRq: { InvoiceAdd: params } }, "InvoiceAddRs", "InvoiceRet"),
|
|
566
|
+
/**
|
|
567
|
+
* Modifies an existing invoice. If you are modifying existing line items,
|
|
568
|
+
* supply an `InvoiceLineMod` and `TxnLineID` for each line you want to
|
|
569
|
+
* modify. If you want to add a new line, supply an `InvoiceLineMod` with
|
|
570
|
+
* its `TxnLineID` value set to -1.
|
|
571
|
+
*
|
|
572
|
+
* Some fields in an `InvoiceMod` request cannot be cleared. If any of the
|
|
573
|
+
* following fields is included in an invoice modify request, it must
|
|
574
|
+
* contain a value:
|
|
575
|
+
* - `CustomerRef`
|
|
576
|
+
* - `ARAccountRef`
|
|
577
|
+
* - `TemplateRef`
|
|
578
|
+
* - `TxnDate`
|
|
579
|
+
* - `IsPending`
|
|
580
|
+
* - `DueDate`
|
|
581
|
+
* - `ItemSalesTaxRef`
|
|
582
|
+
* - `ShipDate`
|
|
583
|
+
* - `IsToBePrinted`
|
|
584
|
+
*
|
|
585
|
+
* Within `InvoiceLineMod` or `InvoiceLineGroupMod`:
|
|
586
|
+
* - `ItemRef`
|
|
587
|
+
* - `Quantity`
|
|
588
|
+
* - `Rate`
|
|
589
|
+
* - `Amount`
|
|
590
|
+
* - `SalesTaxCodeRef`
|
|
591
|
+
* - `OverrideItemAccountRef`
|
|
592
|
+
*
|
|
593
|
+
* https://developer.intuit.com/app/developer/qbdesktop/docs/api-reference/qbdesktop/InvoiceMod
|
|
594
|
+
*/
|
|
595
|
+
mod: async (integrationConnectionId, params) => this.sendRequestBase(integrationConnectionId, { InvoiceModRq: { InvoiceMod: params } }, "InvoiceModRs", "InvoiceRet"),
|
|
596
|
+
/**
|
|
597
|
+
* Returns invoice data.
|
|
598
|
+
*
|
|
599
|
+
* https://developer.intuit.com/app/developer/qbdesktop/docs/api-reference/qbdesktop/InvoiceQuery
|
|
600
|
+
*/
|
|
601
|
+
query: async (integrationConnectionId, params) => this.sendRequestBase(integrationConnectionId, { InvoiceQueryRq: params }, "InvoiceQueryRs", "InvoiceRet"),
|
|
602
|
+
};
|
|
603
|
+
itemInventory = {
|
|
604
|
+
/**
|
|
605
|
+
* Adds an inventory item. An inventory item is any merchandise or part that
|
|
606
|
+
* a business purchases, tracks as inventory, and then resells. In
|
|
607
|
+
* QuickBooks, information about an inventory item is grouped into three
|
|
608
|
+
* categories:
|
|
609
|
+
* 1. Purchase Information includes `PurchaseDesc`, `PurchaseCost`,
|
|
610
|
+
* `COGSAccountRef`, and `PrefVendorRef`.
|
|
611
|
+
* 2. Sales Information includes `SalesDesc`, `SalesPrice`, and
|
|
612
|
+
* `SalesTaxCodeRef`.
|
|
613
|
+
* 3. Inventory Information includes `AssetAccountRef`, `ReorderPoint`,
|
|
614
|
+
* `QuantityOnHand`, `TotalValue`, and `InventoryDate`.
|
|
615
|
+
*
|
|
616
|
+
* https://developer.intuit.com/app/developer/qbdesktop/docs/api-reference/qbdesktop/ItemInventoryAdd
|
|
617
|
+
*/
|
|
618
|
+
add: async (integrationConnectionId, params) => this.sendRequestBase(integrationConnectionId, { ItemInventoryAddRq: { ItemInventoryAdd: params } }, "ItemInventoryAddRs", "ItemInventoryRet"),
|
|
619
|
+
/**
|
|
620
|
+
* Modifies an inventory item.
|
|
621
|
+
*
|
|
622
|
+
* https://developer.intuit.com/app/developer/qbdesktop/docs/api-reference/qbdesktop/ItemInventoryMod
|
|
623
|
+
*/
|
|
624
|
+
mod: async (integrationConnectionId, params) => this.sendRequestBase(integrationConnectionId, { ItemInventoryModRq: { ItemInventoryMod: params } }, "ItemInventoryModRs", "ItemInventoryRet"),
|
|
625
|
+
/**
|
|
626
|
+
* Queries for the specified inventory item or set of items.
|
|
627
|
+
*
|
|
628
|
+
* Notice that certain modifications to the item can be caused by other
|
|
629
|
+
* transactions, such as `ItemReceipts` where the item’s on hand quantity is
|
|
630
|
+
* increased. Modifications through these transactions do not result in
|
|
631
|
+
* changing the `TimeModified` stamp (only the `Mod` operation will do
|
|
632
|
+
* that), but those changes will be detected when you use the
|
|
633
|
+
* `FromModifiedDate`/`ToModifiedDate` filters in your query. Notice that
|
|
634
|
+
* you cannot get an inventory asset value from QuickBooks using this query.
|
|
635
|
+
* Instead, you need to use the General Summary Report query (which
|
|
636
|
+
* currently doesn’t include Assembly Items). Suppose you needed a way to
|
|
637
|
+
* search for the amount on hand of items that have had their amount changed
|
|
638
|
+
* since a certain date. Again, you would not use this query, but a
|
|
639
|
+
* `GeneralDetailReportQuery` that has its `GeneralDetailReportType` set to
|
|
640
|
+
* “InventoryValuationDetail”. This will tell you which items changed by how
|
|
641
|
+
* much. Also, suppose you wanted the on-hand quantity from QB as of a
|
|
642
|
+
* specific date. You would use a General Summary Report of the type
|
|
643
|
+
* Inventory Valuation Summary. (Again, this report doesn’t include
|
|
644
|
+
* Inventory Assemblies.)
|
|
645
|
+
*
|
|
646
|
+
* https://developer.intuit.com/app/developer/qbdesktop/docs/api-reference/qbdesktop/ItemInventoryQuery
|
|
647
|
+
*/
|
|
648
|
+
query: async (integrationConnectionId, params) => this.sendRequestBase(integrationConnectionId, { ItemInventoryQueryRq: params }, "ItemInventoryQueryRs", "ItemInventoryRet"),
|
|
649
|
+
};
|
|
650
|
+
itemNonInventory = {
|
|
651
|
+
/**
|
|
652
|
+
* Adds a non-inventory item, which is any material or part that a business
|
|
653
|
+
* buys but does not keep on hand as inventory. There are two types of
|
|
654
|
+
* non-inventory items:
|
|
655
|
+
* 1. Materials or parts that are part of the business’s overhead (for
|
|
656
|
+
* example, office supplies
|
|
657
|
+
* 2. Materials or parts that the business buys to finish a specific job and
|
|
658
|
+
* then charges back to the customer.
|
|
659
|
+
*
|
|
660
|
+
* https://developer.intuit.com/app/developer/qbdesktop/docs/api-reference/qbdesktop/ItemNonInventoryAdd
|
|
661
|
+
*/
|
|
662
|
+
add: async (integrationConnectionId, params) => this.sendRequestBase(integrationConnectionId, { ItemNonInventoryAddRq: { ItemNonInventoryAdd: params } }, "ItemNonInventoryAddRs", "ItemNonInventoryRet"),
|
|
663
|
+
/**
|
|
664
|
+
* Modifies a non inventory item.
|
|
665
|
+
*
|
|
666
|
+
* About `SalesOrPurchaseMod` versus `SalesAndPurchaseMod` in an
|
|
667
|
+
* `ItemNonInventoryMod` request: You cannot change the reimbursable status
|
|
668
|
+
* of a non-inventory item through the SDK. For example, if a non-inventory
|
|
669
|
+
* item is marked as non-reimbursable in QuickBooks, you cannot send a
|
|
670
|
+
* modify request that includes a `SalesAndPurchaseMod` aggregate.
|
|
671
|
+
* Similarly, if you send an `ItemNonInventoryAdd` request that includes a
|
|
672
|
+
* `SalesOrPurchase` aggregate, you cannot later modify that item using a
|
|
673
|
+
* `SalesAndPurchaseMod` aggregate.
|
|
674
|
+
*
|
|
675
|
+
* You can modify the various account references using the appropriate
|
|
676
|
+
* account reference aggregate and the matching Apply Account
|
|
677
|
+
* `RefToExistingTxns` boolean. You need to use the boolean when you change
|
|
678
|
+
* an account ref because the QuickBooks UI displays a prompt asking whether
|
|
679
|
+
* the change should apply to existing transactions or not. Specifying True
|
|
680
|
+
* for the boolean basically dismisses this with a “Yes” answer, allowing
|
|
681
|
+
* your changes to be made and changes any existing transactions that use
|
|
682
|
+
* the item with that `AccountRef`. Specifying “False” means that the mod will
|
|
683
|
+
* not take affect if there are existing transactions. Setting this to
|
|
684
|
+
* “True” should be used with caution and normally only after some user has
|
|
685
|
+
* indicated that they want those changes made to all those existing
|
|
686
|
+
* transactions! If any affected transactions are protected by a closing
|
|
687
|
+
* date and password, the `AccountRef` changes will not be made and so the Mod
|
|
688
|
+
* request will return an error without making the requested Mod.
|
|
689
|
+
*
|
|
690
|
+
* https://developer.intuit.com/app/developer/qbdesktop/docs/api-reference/qbdesktop/ItemNonInventoryMod
|
|
691
|
+
*/
|
|
692
|
+
mod: async (integrationConnectionId, params) => this.sendRequestBase(integrationConnectionId, { ItemNonInventoryModRq: { ItemNonInventoryMod: params } }, "ItemNonInventoryModRs", "ItemNonInventoryRet"),
|
|
693
|
+
/**
|
|
694
|
+
* Queries for the specified non-inventory item or set of items.
|
|
695
|
+
*
|
|
696
|
+
* https://developer.intuit.com/app/developer/qbdesktop/docs/api-reference/qbdesktop/ItemNonInventoryQuery
|
|
697
|
+
*/
|
|
698
|
+
query: async (integrationConnectionId, params) => this.sendRequestBase(integrationConnectionId, { ItemNonInventoryQueryRq: params }, "ItemNonInventoryQueryRs", "ItemNonInventoryRet"),
|
|
699
|
+
};
|
|
461
700
|
itemService = {
|
|
462
701
|
/**
|
|
463
702
|
* Adds a service item, which is an item that refers to services that a
|
|
@@ -633,6 +872,47 @@ class QbdIntegration extends BaseIntegration_1.default {
|
|
|
633
872
|
*/
|
|
634
873
|
query: async (integrationConnectionId, params) => this.sendRequestBase(integrationConnectionId, { TimeTrackingQueryRq: params }, "TimeTrackingQueryRs", "TimeTrackingRet"),
|
|
635
874
|
};
|
|
875
|
+
purchaseOrder = {
|
|
876
|
+
/**
|
|
877
|
+
* Adds a purchase order, which is an order submitted to a vendor. You can
|
|
878
|
+
* use ItemReceiptAdd to receive items against a purchase order as items
|
|
879
|
+
* arrive from the vendor. A purchase order is a non-posting transaction, so
|
|
880
|
+
* it does not affect a company’s balance sheet or income statement.
|
|
881
|
+
*
|
|
882
|
+
* https://developer.intuit.com/app/developer/qbdesktop/docs/api-reference/qbdesktop/PurchaseOrderQuery
|
|
883
|
+
*/
|
|
884
|
+
add: async (integrationConnectionId, params) => this.sendRequestBase(integrationConnectionId, { PurchaseOrderAddRq: { PurchaseOrderAdd: params } }, "PurchaseOrderAddRs", "PurchaseOrderRet"),
|
|
885
|
+
/**
|
|
886
|
+
* Modifies a purchase order.
|
|
887
|
+
*
|
|
888
|
+
* Some fields in a `PurchaseOrderMod` request cannot be cleared. If any of
|
|
889
|
+
* the following fields is included in a purchase order modify request, it
|
|
890
|
+
* must contain a value:
|
|
891
|
+
* - `TemplateRef`
|
|
892
|
+
* - `TxnDate`
|
|
893
|
+
* - `DueDate`
|
|
894
|
+
* - `ExpectedDate`
|
|
895
|
+
* - `IsManuallyClosed`
|
|
896
|
+
* - `IsToBePrinted`
|
|
897
|
+
*
|
|
898
|
+
* Within `PurchaseOrderLineMod` or `PurchaseOrderLineGroupMod`:
|
|
899
|
+
* - `ItemRef`
|
|
900
|
+
* - `Quantity`
|
|
901
|
+
* - `Rate`
|
|
902
|
+
* - `Amount`
|
|
903
|
+
* - `IsManuallyClosed`
|
|
904
|
+
* - `OverrideItemAccountRef`
|
|
905
|
+
*
|
|
906
|
+
* https://developer.intuit.com/app/developer/qbdesktop/docs/api-reference/qbdesktop/PurchaseOrderMod
|
|
907
|
+
*/
|
|
908
|
+
mod: async (integrationConnectionId, params) => this.sendRequestBase(integrationConnectionId, { PurchaseOrderModRq: { PurchaseOrderMod: params } }, "PurchaseOrderModRs", "PurchaseOrderRet"),
|
|
909
|
+
/**
|
|
910
|
+
* Queries for the specified purchase order or set of orders.
|
|
911
|
+
*
|
|
912
|
+
* https://developer.intuit.com/app/developer/qbdesktop/docs/api-reference/qbdesktop/PurchaseOrderQuery
|
|
913
|
+
*/
|
|
914
|
+
query: async (integrationConnectionId, params) => this.sendRequestBase(integrationConnectionId, { PurchaseOrderQueryRq: params }, "PurchaseOrderQueryRs", "PurchaseOrderRet"),
|
|
915
|
+
};
|
|
636
916
|
vendor = {
|
|
637
917
|
/**
|
|
638
918
|
* Adds a vendor.
|
|
@@ -668,7 +948,7 @@ class QbdIntegration extends BaseIntegration_1.default {
|
|
|
668
948
|
* https://developer.intuit.com/app/developer/qbdesktop/docs/api-reference/qbdesktop
|
|
669
949
|
*/
|
|
670
950
|
async sendRequest(integrationConnectionId, requestObject) {
|
|
671
|
-
return this.
|
|
951
|
+
return this.sendIntegrationRequest({
|
|
672
952
|
integrationConnectionId,
|
|
673
953
|
requestObject,
|
|
674
954
|
});
|