@tangle-network/agent-integrations 0.53.18 → 0.53.19

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.
@@ -5728,6 +5728,186 @@ function billList(name, path, description) {
5728
5728
  };
5729
5729
  }
5730
5730
 
5731
+ // src/connectors/adapters/billplz.ts
5732
+ var billplzConnector = declarativeRestConnector({
5733
+ kind: "billplz",
5734
+ displayName: "Billplz",
5735
+ description: "Create and retrieve Billplz bills for Malaysian Ringgit payment collection.",
5736
+ auth: {
5737
+ kind: "api-key",
5738
+ hint: "Billplz API key from Settings \u2192 Account Settings. Used as the HTTP Basic username with an empty password."
5739
+ },
5740
+ category: "commerce",
5741
+ defaultConsistencyModel: "authoritative",
5742
+ baseUrl: "https://www.billplz.com/api/v3",
5743
+ credentialPlacement: { kind: "basic-api-key" },
5744
+ test: { method: "GET", path: "/collections" },
5745
+ capabilities: [
5746
+ {
5747
+ name: "create.bill",
5748
+ class: "mutation",
5749
+ description: "Create a Billplz bill in a collection and (optionally) trigger delivery to the recipient.",
5750
+ parameters: {
5751
+ type: "object",
5752
+ properties: {
5753
+ collection_id: {
5754
+ type: "string",
5755
+ description: "Collection identifier that will own the new bill."
5756
+ },
5757
+ email: {
5758
+ type: "string",
5759
+ description: "Recipient email address (required if mobile is omitted)."
5760
+ },
5761
+ mobile: {
5762
+ type: "string",
5763
+ description: "Recipient mobile number with country code (required if email is omitted)."
5764
+ },
5765
+ name: {
5766
+ type: "string",
5767
+ description: "Name of the bill recipient as displayed on the bill."
5768
+ },
5769
+ amount: {
5770
+ type: "integer",
5771
+ description: "Amount in sen (1/100 of a Ringgit). E.g. 200 represents RM 2.00."
5772
+ },
5773
+ description: {
5774
+ type: "string",
5775
+ description: "Bill description rendered on the payment page."
5776
+ },
5777
+ callback_url: {
5778
+ type: "string",
5779
+ description: "Webhook URL Billplz will POST to on payment state changes."
5780
+ },
5781
+ due_at: {
5782
+ type: "string",
5783
+ description: "Due date in YYYY-MM-DD format. Defaults to today when omitted."
5784
+ },
5785
+ redirect_url: {
5786
+ type: "string",
5787
+ description: "URL the payer is redirected to after completing payment."
5788
+ },
5789
+ deliver: {
5790
+ type: "boolean",
5791
+ description: "If true, Billplz emails/SMSes the bill link to the recipient."
5792
+ },
5793
+ reference_1_label: {
5794
+ type: "string",
5795
+ description: "Label for the first custom reference field."
5796
+ },
5797
+ reference_1: {
5798
+ type: "string",
5799
+ description: "Value for the first custom reference field."
5800
+ },
5801
+ reference_2_label: {
5802
+ type: "string",
5803
+ description: "Label for the second custom reference field."
5804
+ },
5805
+ reference_2: {
5806
+ type: "string",
5807
+ description: "Value for the second custom reference field."
5808
+ }
5809
+ },
5810
+ required: ["collection_id", "name", "amount", "description", "callback_url"]
5811
+ },
5812
+ request: {
5813
+ method: "POST",
5814
+ path: "/bills",
5815
+ body: {
5816
+ collection_id: "{collection_id}",
5817
+ email: "{email}",
5818
+ mobile: "{mobile}",
5819
+ name: "{name}",
5820
+ amount: "{amount}",
5821
+ description: "{description}",
5822
+ callback_url: "{callback_url}",
5823
+ due_at: "{due_at}",
5824
+ redirect_url: "{redirect_url}",
5825
+ deliver: "{deliver}",
5826
+ reference_1_label: "{reference_1_label}",
5827
+ reference_1: "{reference_1}",
5828
+ reference_2_label: "{reference_2_label}",
5829
+ reference_2: "{reference_2}"
5830
+ }
5831
+ },
5832
+ cas: "native-idempotency"
5833
+ },
5834
+ {
5835
+ name: "get.bill",
5836
+ class: "read",
5837
+ description: "Fetch a Billplz bill by its identifier, including current payment state.",
5838
+ parameters: {
5839
+ type: "object",
5840
+ properties: {
5841
+ bill_id: {
5842
+ type: "string",
5843
+ description: "Billplz bill identifier returned by create.bill."
5844
+ }
5845
+ },
5846
+ required: ["bill_id"]
5847
+ },
5848
+ request: {
5849
+ method: "GET",
5850
+ path: "/bills/{bill_id}"
5851
+ }
5852
+ },
5853
+ {
5854
+ name: "cancel.bill",
5855
+ class: "mutation",
5856
+ description: "Delete (cancel) an unpaid Billplz bill by its identifier. Paid bills cannot be deleted and the upstream will reject the request.",
5857
+ parameters: {
5858
+ type: "object",
5859
+ properties: {
5860
+ id: {
5861
+ type: "string",
5862
+ description: "Billplz bill identifier to cancel."
5863
+ }
5864
+ },
5865
+ required: ["id"]
5866
+ },
5867
+ request: {
5868
+ method: "DELETE",
5869
+ path: "/bills/{id}"
5870
+ },
5871
+ cas: "native-idempotency",
5872
+ externalEffect: true
5873
+ },
5874
+ {
5875
+ name: "create.refund",
5876
+ class: "mutation",
5877
+ description: "Refund a paid Billplz bill in full or in part. Amount is in sen (1/100 of a Ringgit) and must not exceed the original paid amount.",
5878
+ parameters: {
5879
+ type: "object",
5880
+ properties: {
5881
+ bill_id: {
5882
+ type: "string",
5883
+ description: "Identifier of the paid bill being refunded."
5884
+ },
5885
+ amount: {
5886
+ type: "integer",
5887
+ description: "Refund amount in sen (1/100 of a Ringgit). E.g. 200 represents RM 2.00."
5888
+ },
5889
+ reason: {
5890
+ type: "string",
5891
+ description: "Reason recorded on the refund for audit/reporting."
5892
+ }
5893
+ },
5894
+ required: ["bill_id", "amount", "reason"]
5895
+ },
5896
+ request: {
5897
+ method: "POST",
5898
+ path: "/refunds",
5899
+ body: {
5900
+ bill_id: "{bill_id}",
5901
+ amount: "{amount}",
5902
+ reason: "{reason}"
5903
+ }
5904
+ },
5905
+ cas: "native-idempotency",
5906
+ externalEffect: true
5907
+ }
5908
+ ]
5909
+ });
5910
+
5731
5911
  // src/connectors/adapters/cal-com.ts
5732
5912
  var authorizeUrl = "https://app.cal.com/auth/oauth2/authorize";
5733
5913
  var tokenUrl = "https://api.cal.com/v2/auth/oauth2/token";
@@ -9387,6 +9567,283 @@ var chargebeeConnector = declarativeRestConnector({
9387
9567
  ]
9388
9568
  });
9389
9569
 
9570
+ // src/connectors/adapters/cashfree-payments.ts
9571
+ var cashfreePaymentsConnector = declarativeRestConnector({
9572
+ kind: "cashfree-payments",
9573
+ displayName: "Cashfree Payments",
9574
+ description: "Cashfree Payments integration for processing payments, refunds, and managing payment links and cashgrams.",
9575
+ auth: {
9576
+ kind: "api-key",
9577
+ hint: "Cashfree credential JSON with clientId and clientSecret."
9578
+ },
9579
+ category: "commerce",
9580
+ defaultConsistencyModel: "authoritative",
9581
+ baseUrl: { metadataKey: "baseUrl", fallback: "https://api.cashfree.com/pg" },
9582
+ allowedBaseUrls: [
9583
+ "https://api.cashfree.com/pg",
9584
+ "https://sandbox.cashfree.com/pg",
9585
+ "https://payout-api.cashfree.com/payout",
9586
+ "https://payout-gamma.cashfree.com/payout"
9587
+ ],
9588
+ credentialPlacement: {
9589
+ kind: "structured-headers",
9590
+ fields: {
9591
+ clientId: "x-client-id",
9592
+ clientSecret: "x-client-secret"
9593
+ }
9594
+ },
9595
+ defaultHeaders: {
9596
+ "x-api-version": "2023-08-01"
9597
+ },
9598
+ test: { method: "GET", path: "/orders/__connector_probe__" },
9599
+ capabilities: [
9600
+ {
9601
+ name: "orders.create",
9602
+ class: "mutation",
9603
+ description: "Create an order in Cashfree PG.",
9604
+ parameters: {
9605
+ type: "object",
9606
+ properties: {
9607
+ orderAmount: { type: "number" },
9608
+ orderCurrency: { type: "string" },
9609
+ customerId: { type: "string" },
9610
+ customerPhone: { type: "string" },
9611
+ customerEmail: { type: "string" },
9612
+ customerName: { type: "string" },
9613
+ orderId: { type: "string" },
9614
+ orderNote: { type: "string" },
9615
+ orderExpiryTime: { type: "string" },
9616
+ returnUrl: { type: "string" },
9617
+ notifyUrl: { type: "string" },
9618
+ paymentMethods: { type: "string" },
9619
+ orderTags: { type: "object" },
9620
+ orderSplits: { type: "array" }
9621
+ },
9622
+ required: ["orderAmount", "orderCurrency", "customerId", "customerPhone"]
9623
+ },
9624
+ request: {
9625
+ method: "POST",
9626
+ path: "/orders",
9627
+ headers: { "x-idempotency-key": "{idempotencyKey}", "x-request-id": "{requestId}" },
9628
+ body: {
9629
+ order_amount: "{orderAmount}",
9630
+ order_currency: "{orderCurrency}",
9631
+ order_id: "{orderId}",
9632
+ order_note: "{orderNote}",
9633
+ order_expiry_time: "{orderExpiryTime}",
9634
+ order_tags: "{orderTags}",
9635
+ order_splits: "{orderSplits}",
9636
+ customer_details: {
9637
+ customer_id: "{customerId}",
9638
+ customer_phone: "{customerPhone}",
9639
+ customer_email: "{customerEmail}",
9640
+ customer_name: "{customerName}",
9641
+ customer_bank_account_number: "{customerBankAccountNumber}",
9642
+ customer_bank_ifsc: "{customerBankIfsc}",
9643
+ customer_bank_code: "{customerBankCode}"
9644
+ },
9645
+ order_meta: {
9646
+ return_url: "{returnUrl}",
9647
+ notify_url: "{notifyUrl}",
9648
+ payment_methods: "{paymentMethods}"
9649
+ }
9650
+ }
9651
+ },
9652
+ cas: "native-idempotency"
9653
+ },
9654
+ {
9655
+ name: "payment_links.create",
9656
+ class: "mutation",
9657
+ description: "Create a Cashfree payment link.",
9658
+ parameters: {
9659
+ type: "object",
9660
+ properties: {
9661
+ linkId: { type: "string" },
9662
+ linkAmount: { type: "number" },
9663
+ linkCurrency: { type: "string" },
9664
+ linkPurpose: { type: "string" },
9665
+ customerName: { type: "string" },
9666
+ customerEmail: { type: "string" },
9667
+ customerPhone: { type: "string" },
9668
+ linkPartialPayments: { type: "boolean" },
9669
+ linkMinimumPartialAmount: { type: "number" },
9670
+ linkExpiryTime: { type: "string" },
9671
+ sendSms: { type: "boolean" },
9672
+ sendEmail: { type: "boolean" },
9673
+ linkAutoReminders: { type: "boolean" },
9674
+ upiIntent: { type: "boolean" },
9675
+ linkNotes: { type: "object" },
9676
+ notifyUrl: { type: "string" },
9677
+ returnUrl: { type: "string" }
9678
+ },
9679
+ required: ["linkId", "linkAmount", "linkCurrency", "linkPurpose", "customerPhone"]
9680
+ },
9681
+ request: {
9682
+ method: "POST",
9683
+ path: "/links",
9684
+ headers: { "x-idempotency-key": "{idempotencyKey}", "x-request-id": "{requestId}" },
9685
+ body: {
9686
+ link_id: "{linkId}",
9687
+ link_amount: "{linkAmount}",
9688
+ link_currency: "{linkCurrency}",
9689
+ link_purpose: "{linkPurpose}",
9690
+ link_partial_payments: "{linkPartialPayments}",
9691
+ link_minimum_partial_amount: "{linkMinimumPartialAmount}",
9692
+ link_expiry_time: "{linkExpiryTime}",
9693
+ link_auto_reminders: "{linkAutoReminders}",
9694
+ link_notes: "{linkNotes}",
9695
+ customer_details: {
9696
+ customer_name: "{customerName}",
9697
+ customer_email: "{customerEmail}",
9698
+ customer_phone: "{customerPhone}"
9699
+ },
9700
+ link_notify: {
9701
+ send_sms: "{sendSms}",
9702
+ send_email: "{sendEmail}"
9703
+ },
9704
+ link_meta: {
9705
+ notify_url: "{notifyUrl}",
9706
+ return_url: "{returnUrl}",
9707
+ upi_intent: "{upiIntent}"
9708
+ }
9709
+ }
9710
+ },
9711
+ cas: "native-idempotency"
9712
+ },
9713
+ {
9714
+ name: "refunds.create",
9715
+ class: "mutation",
9716
+ description: "Create a refund against a Cashfree order.",
9717
+ parameters: {
9718
+ type: "object",
9719
+ properties: {
9720
+ orderId: { type: "string" },
9721
+ refundId: { type: "string" },
9722
+ refundAmount: { type: "number" },
9723
+ refundNote: { type: "string" },
9724
+ refundSpeed: { type: "string" },
9725
+ refundSplits: { type: "array" }
9726
+ },
9727
+ required: ["orderId", "refundId", "refundAmount"]
9728
+ },
9729
+ request: {
9730
+ method: "POST",
9731
+ path: "/orders/{orderId}/refunds",
9732
+ headers: { "x-idempotency-key": "{idempotencyKey}", "x-request-id": "{requestId}" },
9733
+ body: {
9734
+ refund_id: "{refundId}",
9735
+ refund_amount: "{refundAmount}",
9736
+ refund_note: "{refundNote}",
9737
+ refund_speed: "{refundSpeed}",
9738
+ refund_splits: "{refundSplits}"
9739
+ }
9740
+ },
9741
+ cas: "native-idempotency"
9742
+ },
9743
+ {
9744
+ name: "payment_links.cancel",
9745
+ class: "mutation",
9746
+ description: "Cancel an ACTIVE Cashfree payment link.",
9747
+ parameters: {
9748
+ type: "object",
9749
+ properties: { linkId: { type: "string" } },
9750
+ required: ["linkId"]
9751
+ },
9752
+ request: {
9753
+ method: "POST",
9754
+ path: "/links/{linkId}/cancel",
9755
+ headers: { "x-request-id": "{requestId}" }
9756
+ },
9757
+ cas: "native-idempotency"
9758
+ },
9759
+ {
9760
+ name: "payment_links.get",
9761
+ class: "read",
9762
+ description: "Fetch details for a Cashfree payment link.",
9763
+ parameters: {
9764
+ type: "object",
9765
+ properties: { linkId: { type: "string" } },
9766
+ required: ["linkId"]
9767
+ },
9768
+ request: { method: "GET", path: "/links/{linkId}" }
9769
+ },
9770
+ {
9771
+ name: "cashgrams.create",
9772
+ class: "mutation",
9773
+ description: "Create a Cashfree Cashgram (payout link).",
9774
+ parameters: {
9775
+ type: "object",
9776
+ properties: {
9777
+ cashgramId: { type: "string" },
9778
+ amount: { type: "number" },
9779
+ name: { type: "string" },
9780
+ email: { type: "string" },
9781
+ phone: { type: "string" },
9782
+ linkExpiry: { type: "string" },
9783
+ remarks: { type: "string" },
9784
+ notifyCustomer: { type: "boolean" }
9785
+ },
9786
+ required: ["cashgramId", "amount", "name", "phone", "linkExpiry"]
9787
+ },
9788
+ request: {
9789
+ method: "POST",
9790
+ path: "/v1/createCashgram",
9791
+ headers: { "x-idempotency-key": "{idempotencyKey}", "x-request-id": "{requestId}" },
9792
+ body: {
9793
+ cashgramId: "{cashgramId}",
9794
+ amount: "{amount}",
9795
+ name: "{name}",
9796
+ email: "{email}",
9797
+ phone: "{phone}",
9798
+ linkExpiry: "{linkExpiry}",
9799
+ remarks: "{remarks}",
9800
+ notifyCustomer: "{notifyCustomer}"
9801
+ }
9802
+ },
9803
+ cas: "native-idempotency"
9804
+ },
9805
+ {
9806
+ name: "payment_links.orders.list",
9807
+ class: "read",
9808
+ description: "List orders associated with a payment link.",
9809
+ parameters: {
9810
+ type: "object",
9811
+ properties: { linkId: { type: "string" } },
9812
+ required: ["linkId"]
9813
+ },
9814
+ request: { method: "GET", path: "/links/{linkId}/orders" }
9815
+ },
9816
+ {
9817
+ name: "orders.refunds.list",
9818
+ class: "read",
9819
+ description: "List all refunds attached to a Cashfree order.",
9820
+ parameters: {
9821
+ type: "object",
9822
+ properties: { orderId: { type: "string" } },
9823
+ required: ["orderId"]
9824
+ },
9825
+ request: { method: "GET", path: "/orders/{orderId}/refunds" }
9826
+ },
9827
+ {
9828
+ name: "cashgrams.deactivate",
9829
+ class: "mutation",
9830
+ description: "Deactivate an existing Cashfree Cashgram.",
9831
+ parameters: {
9832
+ type: "object",
9833
+ properties: { cashgramId: { type: "string" } },
9834
+ required: ["cashgramId"]
9835
+ },
9836
+ request: {
9837
+ method: "POST",
9838
+ path: "/v1/deactivateCashgram",
9839
+ headers: { "x-request-id": "{requestId}" },
9840
+ body: { cashgramId: "{cashgramId}" }
9841
+ },
9842
+ cas: "native-idempotency"
9843
+ }
9844
+ ]
9845
+ });
9846
+
9390
9847
  // src/connectors/adapters/circle.ts
9391
9848
  var circleConnector = declarativeRestConnector({
9392
9849
  kind: "circle",
@@ -22414,6 +22871,236 @@ var leadConnectorConnector = declarativeRestConnector({
22414
22871
  ]
22415
22872
  });
22416
22873
 
22874
+ // src/connectors/adapters/lemon-squeezy.ts
22875
+ var lemonSqueezyConnector = declarativeRestConnector({
22876
+ kind: "lemon-squeezy",
22877
+ displayName: "Lemon Squeezy",
22878
+ description: "Lemon Squeezy payment gateway: list products, orders, subscriptions, and customers, and create hosted checkout sessions.",
22879
+ auth: {
22880
+ kind: "api-key",
22881
+ hint: "Lemon Squeezy API key from Settings \u2192 API. Sent as Authorization: Bearer <key>."
22882
+ },
22883
+ category: "commerce",
22884
+ defaultConsistencyModel: "authoritative",
22885
+ baseUrl: "https://api.lemonsqueezy.com/v1",
22886
+ // /users/me is the documented authenticated identity endpoint.
22887
+ test: { method: "GET", path: "/users/me" },
22888
+ capabilities: [
22889
+ {
22890
+ name: "products.list",
22891
+ class: "read",
22892
+ description: "List products in a store with pagination.",
22893
+ parameters: {
22894
+ type: "object",
22895
+ properties: {
22896
+ storeId: { type: "string" },
22897
+ page: { type: "integer", minimum: 1 },
22898
+ perPage: { type: "integer", minimum: 1, maximum: 100 }
22899
+ }
22900
+ },
22901
+ request: {
22902
+ method: "GET",
22903
+ path: "/products",
22904
+ query: {
22905
+ "filter[store_id]": "{storeId}",
22906
+ "page[number]": "{page}",
22907
+ "page[size]": "{perPage}"
22908
+ }
22909
+ }
22910
+ },
22911
+ {
22912
+ name: "orders.list",
22913
+ class: "read",
22914
+ description: "List orders, optionally filtered by store, customer email, or status.",
22915
+ parameters: {
22916
+ type: "object",
22917
+ properties: {
22918
+ storeId: { type: "string" },
22919
+ userEmail: { type: "string" },
22920
+ status: {
22921
+ type: "string",
22922
+ enum: ["pending", "failed", "paid", "refunded"]
22923
+ },
22924
+ page: { type: "integer", minimum: 1 },
22925
+ perPage: { type: "integer", minimum: 1, maximum: 100 }
22926
+ }
22927
+ },
22928
+ request: {
22929
+ method: "GET",
22930
+ path: "/orders",
22931
+ query: {
22932
+ "filter[store_id]": "{storeId}",
22933
+ "filter[user_email]": "{userEmail}",
22934
+ "filter[status]": "{status}",
22935
+ "page[number]": "{page}",
22936
+ "page[size]": "{perPage}"
22937
+ }
22938
+ }
22939
+ },
22940
+ {
22941
+ name: "orders.get",
22942
+ class: "read",
22943
+ description: "Get a single order by id.",
22944
+ parameters: {
22945
+ type: "object",
22946
+ properties: { orderId: { type: "string" } },
22947
+ required: ["orderId"]
22948
+ },
22949
+ request: { method: "GET", path: "/orders/{orderId}" }
22950
+ },
22951
+ {
22952
+ name: "subscriptions.list",
22953
+ class: "read",
22954
+ description: "List subscriptions, optionally filtered by store or order item.",
22955
+ parameters: {
22956
+ type: "object",
22957
+ properties: {
22958
+ storeId: { type: "string" },
22959
+ orderItemId: { type: "string" },
22960
+ page: { type: "integer", minimum: 1 },
22961
+ perPage: { type: "integer", minimum: 1, maximum: 100 }
22962
+ }
22963
+ },
22964
+ request: {
22965
+ method: "GET",
22966
+ path: "/subscriptions",
22967
+ query: {
22968
+ "filter[store_id]": "{storeId}",
22969
+ "filter[order_item_id]": "{orderItemId}",
22970
+ "page[number]": "{page}",
22971
+ "page[size]": "{perPage}"
22972
+ }
22973
+ }
22974
+ },
22975
+ {
22976
+ name: "customers.list",
22977
+ class: "read",
22978
+ description: "List customers, optionally filtered by store or email.",
22979
+ parameters: {
22980
+ type: "object",
22981
+ properties: {
22982
+ storeId: { type: "string" },
22983
+ email: { type: "string" },
22984
+ page: { type: "integer", minimum: 1 },
22985
+ perPage: { type: "integer", minimum: 1, maximum: 100 }
22986
+ }
22987
+ },
22988
+ request: {
22989
+ method: "GET",
22990
+ path: "/customers",
22991
+ query: {
22992
+ "filter[store_id]": "{storeId}",
22993
+ "filter[email]": "{email}",
22994
+ "page[number]": "{page}",
22995
+ "page[size]": "{perPage}"
22996
+ }
22997
+ }
22998
+ },
22999
+ {
23000
+ name: "checkouts.create",
23001
+ class: "mutation",
23002
+ description: "Create a hosted checkout for a variant. Returns a checkout object whose attributes.url is the hosted payment page.",
23003
+ parameters: {
23004
+ type: "object",
23005
+ properties: {
23006
+ storeId: { type: "string" },
23007
+ variantId: { type: "string" },
23008
+ customerEmail: { type: "string" },
23009
+ customerName: { type: "string" },
23010
+ customPrice: { type: "integer", minimum: 1 },
23011
+ discountCode: { type: "string" },
23012
+ redirectUrl: { type: "string" },
23013
+ expiresAt: { type: "string" },
23014
+ customData: { type: "object" }
23015
+ },
23016
+ required: ["storeId", "variantId"]
23017
+ },
23018
+ // Lemon Squeezy uses the JSON:API envelope: a `data` document with
23019
+ // `type`, `attributes`, and `relationships` pointing at the store + variant.
23020
+ request: {
23021
+ method: "POST",
23022
+ path: "/checkouts",
23023
+ body: {
23024
+ data: {
23025
+ type: "checkouts",
23026
+ attributes: {
23027
+ checkout_data: {
23028
+ email: "{customerEmail}",
23029
+ name: "{customerName}",
23030
+ discount_code: "{discountCode}",
23031
+ custom: "{customData}"
23032
+ },
23033
+ product_options: {
23034
+ redirect_url: "{redirectUrl}"
23035
+ },
23036
+ checkout_options: {
23037
+ expires_at: "{expiresAt}"
23038
+ },
23039
+ custom_price: "{customPrice}"
23040
+ },
23041
+ relationships: {
23042
+ store: {
23043
+ data: { type: "stores", id: "{storeId}" }
23044
+ },
23045
+ variant: {
23046
+ data: { type: "variants", id: "{variantId}" }
23047
+ }
23048
+ }
23049
+ }
23050
+ }
23051
+ },
23052
+ cas: "native-idempotency"
23053
+ },
23054
+ {
23055
+ name: "subscriptions.cancel",
23056
+ class: "mutation",
23057
+ description: "Cancel a subscription. The subscription remains active until the end of the current billing period, after which it transitions to cancelled.",
23058
+ parameters: {
23059
+ type: "object",
23060
+ properties: { id: { type: "string" } },
23061
+ required: ["id"]
23062
+ },
23063
+ request: {
23064
+ method: "DELETE",
23065
+ path: "/subscriptions/{id}"
23066
+ },
23067
+ cas: "native-idempotency",
23068
+ externalEffect: true
23069
+ },
23070
+ {
23071
+ name: "orders.issueRefund",
23072
+ class: "mutation",
23073
+ description: "Issue a refund for an order. Omit `amount` to refund the full order total; otherwise pass an integer amount in cents (the smallest currency unit) for a partial refund.",
23074
+ parameters: {
23075
+ type: "object",
23076
+ properties: {
23077
+ id: { type: "string" },
23078
+ amount: {
23079
+ type: "integer",
23080
+ minimum: 1,
23081
+ description: "Optional partial-refund amount in cents. Omit for a full refund."
23082
+ }
23083
+ },
23084
+ required: ["id"]
23085
+ },
23086
+ request: {
23087
+ method: "POST",
23088
+ path: "/orders/{id}/refund",
23089
+ body: {
23090
+ data: {
23091
+ type: "refunds",
23092
+ attributes: {
23093
+ amount: "{amount}"
23094
+ }
23095
+ }
23096
+ }
23097
+ },
23098
+ cas: "native-idempotency",
23099
+ externalEffect: true
23100
+ }
23101
+ ]
23102
+ });
23103
+
22417
23104
  // src/connectors/adapters/linear.ts
22418
23105
  var ISSUE_FRAGMENT = `
22419
23106
  id
@@ -33064,6 +33751,204 @@ var salesforceConnector = declarativeRestConnector({
33064
33751
  ]
33065
33752
  });
33066
33753
 
33754
+ // src/connectors/adapters/saleor.ts
33755
+ var saleorConnector = declarativeRestConnector({
33756
+ kind: "saleor",
33757
+ displayName: "Saleor",
33758
+ description: "Query Saleor GraphQL API, retrieve orders, and add order notes.",
33759
+ auth: {
33760
+ kind: "api-key",
33761
+ hint: "Saleor API token."
33762
+ },
33763
+ category: "commerce",
33764
+ defaultConsistencyModel: "authoritative",
33765
+ baseUrl: { metadataKey: "apiUrl" },
33766
+ requirePublicHttpsBaseUrl: true,
33767
+ test: { method: "POST", path: "/", body: { query: "{ shop { name } }" } },
33768
+ capabilities: [
33769
+ {
33770
+ name: "graphql.query",
33771
+ class: "read",
33772
+ description: "Execute a raw GraphQL query against Saleor API.",
33773
+ parameters: {
33774
+ type: "object",
33775
+ properties: {
33776
+ query: { type: "string", description: "GraphQL query string" },
33777
+ variables: { type: "object", description: "GraphQL query variables" }
33778
+ },
33779
+ required: ["query"]
33780
+ },
33781
+ request: {
33782
+ method: "POST",
33783
+ path: "/",
33784
+ body: { query: "{query}", variables: "{variables}" }
33785
+ }
33786
+ },
33787
+ {
33788
+ name: "orders.get",
33789
+ class: "read",
33790
+ description: "Retrieve a Saleor order by ID.",
33791
+ parameters: {
33792
+ type: "object",
33793
+ properties: {
33794
+ orderId: { type: "string", description: "Order ID" }
33795
+ },
33796
+ required: ["orderId"]
33797
+ },
33798
+ request: {
33799
+ method: "POST",
33800
+ path: "/",
33801
+ body: {
33802
+ query: "query GetOrder($id: ID!) { order(id: $id) { id number userEmail total { gross { amount } } } }",
33803
+ variables: { id: "{orderId}" }
33804
+ }
33805
+ }
33806
+ },
33807
+ {
33808
+ name: "orders.addNote",
33809
+ class: "mutation",
33810
+ description: "Add a note to a Saleor order.",
33811
+ parameters: {
33812
+ type: "object",
33813
+ properties: {
33814
+ orderId: { type: "string", description: "Order ID" },
33815
+ message: { type: "string", description: "Note message" }
33816
+ },
33817
+ required: ["orderId", "message"]
33818
+ },
33819
+ request: {
33820
+ method: "POST",
33821
+ path: "/",
33822
+ body: {
33823
+ query: "mutation AddOrderNote($id: ID!, $message: String!) { orderAddNote(order: $id, input: { message: $message }) { order { id } errors { field message } } }",
33824
+ variables: { id: "{orderId}", message: "{message}" }
33825
+ }
33826
+ },
33827
+ cas: "native-idempotency",
33828
+ externalEffect: true
33829
+ },
33830
+ {
33831
+ name: "orders.cancel",
33832
+ class: "mutation",
33833
+ description: "Cancel a Saleor order.",
33834
+ parameters: {
33835
+ type: "object",
33836
+ properties: {
33837
+ orderId: { type: "string", description: "Order ID" }
33838
+ },
33839
+ required: ["orderId"]
33840
+ },
33841
+ request: {
33842
+ method: "POST",
33843
+ path: "/",
33844
+ body: {
33845
+ query: "mutation CancelOrder($id: ID!) { orderCancel(id: $id) { order { id status } errors { field message code } } }",
33846
+ variables: { id: "{orderId}" }
33847
+ }
33848
+ },
33849
+ cas: "native-idempotency",
33850
+ externalEffect: true
33851
+ },
33852
+ {
33853
+ name: "orders.fulfill",
33854
+ class: "mutation",
33855
+ description: "Mark an order line as fulfilled by creating a fulfillment for the given quantities.",
33856
+ parameters: {
33857
+ type: "object",
33858
+ properties: {
33859
+ orderId: { type: "string", description: "Order ID" },
33860
+ lines: {
33861
+ type: "array",
33862
+ description: "Order lines to fulfill. Each entry is an OrderFulfillLineInput.",
33863
+ items: {
33864
+ type: "object",
33865
+ properties: {
33866
+ orderLineId: { type: "string" },
33867
+ stocks: {
33868
+ type: "array",
33869
+ items: {
33870
+ type: "object",
33871
+ properties: {
33872
+ quantity: { type: "number" },
33873
+ warehouse: { type: "string" }
33874
+ },
33875
+ required: ["quantity", "warehouse"]
33876
+ }
33877
+ }
33878
+ },
33879
+ required: ["orderLineId", "stocks"]
33880
+ }
33881
+ },
33882
+ notifyCustomer: { type: "boolean", description: "Whether to notify the customer. Defaults to true caller-side." }
33883
+ },
33884
+ required: ["orderId", "lines", "notifyCustomer"]
33885
+ },
33886
+ request: {
33887
+ method: "POST",
33888
+ path: "/",
33889
+ body: {
33890
+ query: "mutation FulfillOrder($order: ID!, $input: OrderFulfillInput!) { orderFulfill(order: $order, input: $input) { fulfillments { id status } errors { field message code } } }",
33891
+ variables: {
33892
+ order: "{orderId}",
33893
+ input: { lines: "{lines}", notifyCustomer: "{notifyCustomer}" }
33894
+ }
33895
+ }
33896
+ },
33897
+ cas: "native-idempotency",
33898
+ externalEffect: true
33899
+ },
33900
+ {
33901
+ name: "orders.refund",
33902
+ class: "mutation",
33903
+ description: "Refund a Saleor order by creating an order refund.",
33904
+ parameters: {
33905
+ type: "object",
33906
+ properties: {
33907
+ orderId: { type: "string", description: "Order ID" },
33908
+ amount: { type: "number", description: "Refund amount in the order currency." }
33909
+ },
33910
+ required: ["orderId", "amount"]
33911
+ },
33912
+ request: {
33913
+ method: "POST",
33914
+ path: "/",
33915
+ body: {
33916
+ query: "mutation RefundOrder($id: ID!, $amount: PositiveDecimal!) { orderRefund(id: $id, amount: $amount) { order { id paymentStatus } errors { field message code } } }",
33917
+ variables: { id: "{orderId}", amount: "{amount}" }
33918
+ }
33919
+ },
33920
+ cas: "native-idempotency",
33921
+ externalEffect: true
33922
+ },
33923
+ {
33924
+ name: "orders.update",
33925
+ class: "mutation",
33926
+ description: "Update order metadata or status (billing/shipping address, user email, language).",
33927
+ parameters: {
33928
+ type: "object",
33929
+ properties: {
33930
+ orderId: { type: "string", description: "Order ID" },
33931
+ input: {
33932
+ type: "object",
33933
+ description: "OrderUpdateInput fields (e.g. billingAddress, shippingAddress, userEmail, languageCode)."
33934
+ }
33935
+ },
33936
+ required: ["orderId", "input"]
33937
+ },
33938
+ request: {
33939
+ method: "POST",
33940
+ path: "/",
33941
+ body: {
33942
+ query: "mutation UpdateOrder($id: ID!, $input: OrderUpdateInput!) { orderUpdate(id: $id, input: $input) { order { id status } errors { field message code } } }",
33943
+ variables: { id: "{orderId}", input: "{input}" }
33944
+ }
33945
+ },
33946
+ cas: "native-idempotency",
33947
+ externalEffect: true
33948
+ }
33949
+ ]
33950
+ });
33951
+
33067
33952
  // src/connectors/adapters/savvycal.ts
33068
33953
  var savvycalConnector = declarativeRestConnector({
33069
33954
  kind: "savvycal",
@@ -34536,6 +35421,170 @@ function isTextLikeMime(mime) {
34536
35421
  return false;
34537
35422
  }
34538
35423
 
35424
+ // src/connectors/adapters/shippo.ts
35425
+ var shippoConnector = declarativeRestConnector({
35426
+ kind: "shippo",
35427
+ displayName: "Shippo",
35428
+ description: "Multi-carrier shipping platform for real-time rates, labels, and tracking.",
35429
+ auth: { kind: "api-key", hint: "Shippo API key." },
35430
+ category: "commerce",
35431
+ defaultConsistencyModel: "authoritative",
35432
+ baseUrl: "https://api.goshippo.com",
35433
+ credentialPlacement: {
35434
+ kind: "header",
35435
+ header: "Authorization",
35436
+ prefix: "ShippoToken "
35437
+ },
35438
+ test: { method: "GET", path: "/v1/serviceleveltoken" },
35439
+ capabilities: [
35440
+ {
35441
+ name: "orders.create",
35442
+ class: "mutation",
35443
+ description: "Create a new order in Shippo.",
35444
+ parameters: {
35445
+ type: "object",
35446
+ properties: {
35447
+ orderId: { type: "string", description: "Custom order number" },
35448
+ orderStatus: { type: "string", description: "Order status (e.g., awaiting_shipment, shipped, cancelled)" },
35449
+ placedAt: { type: "string", description: "ISO 8601 timestamp when order was placed" },
35450
+ totalPrice: { type: "string", description: "Total price including shipping and tax" },
35451
+ subtotalPrice: { type: "string", description: "Price before shipping and tax" },
35452
+ totalTax: { type: "string", description: "Total tax amount" },
35453
+ currency: { type: "string", description: "Currency code (USD, EUR, etc.)" },
35454
+ fromName: { type: "string", description: "Sender name" },
35455
+ fromCompany: { type: "string", description: "Sender company" },
35456
+ fromStreet1: { type: "string", description: "Sender street address line 1" },
35457
+ fromCity: { type: "string", description: "Sender city" },
35458
+ fromState: { type: "string", description: "Sender state/province" },
35459
+ fromZip: { type: "string", description: "Sender postal code" },
35460
+ fromCountry: { type: "string", description: "Sender country code" },
35461
+ toName: { type: "string", description: "Recipient name" },
35462
+ toCompany: { type: "string", description: "Recipient company" },
35463
+ toStreet1: { type: "string", description: "Recipient street address line 1" },
35464
+ toCity: { type: "string", description: "Recipient city" },
35465
+ toState: { type: "string", description: "Recipient state/province" },
35466
+ toZip: { type: "string", description: "Recipient postal code" },
35467
+ toCountry: { type: "string", description: "Recipient country code" }
35468
+ },
35469
+ required: ["orderId", "orderStatus", "placedAt", "totalPrice", "currency", "toName", "toCountry"]
35470
+ },
35471
+ request: {
35472
+ method: "POST",
35473
+ path: "/v1/orders",
35474
+ body: {
35475
+ order_number: "{orderId}",
35476
+ order_status: "{orderStatus}",
35477
+ placed_at: "{placedAt}",
35478
+ total_price: "{totalPrice}",
35479
+ subtotal_price: "{subtotalPrice}",
35480
+ total_tax: "{totalTax}",
35481
+ currency: "{currency}",
35482
+ address_from: {
35483
+ name: "{fromName}",
35484
+ company: "{fromCompany}",
35485
+ street1: "{fromStreet1}",
35486
+ city: "{fromCity}",
35487
+ state: "{fromState}",
35488
+ zip: "{fromZip}",
35489
+ country: "{fromCountry}"
35490
+ },
35491
+ address_to: {
35492
+ name: "{toName}",
35493
+ company: "{toCompany}",
35494
+ street1: "{toStreet1}",
35495
+ city: "{toCity}",
35496
+ state: "{toState}",
35497
+ zip: "{toZip}",
35498
+ country: "{toCountry}"
35499
+ }
35500
+ }
35501
+ },
35502
+ cas: "native-idempotency"
35503
+ },
35504
+ {
35505
+ name: "orders.find",
35506
+ class: "read",
35507
+ description: "Find an order by order number or ID.",
35508
+ parameters: {
35509
+ type: "object",
35510
+ properties: {
35511
+ orderIdOrNumber: { type: "string", description: "Order ID or order number" }
35512
+ },
35513
+ required: ["orderIdOrNumber"]
35514
+ },
35515
+ request: {
35516
+ method: "GET",
35517
+ path: "/v1/orders/{orderIdOrNumber}"
35518
+ }
35519
+ },
35520
+ {
35521
+ name: "shippinglabels.find",
35522
+ class: "read",
35523
+ description: "Find a shipping label by transaction ID.",
35524
+ parameters: {
35525
+ type: "object",
35526
+ properties: {
35527
+ transactionId: { type: "string", description: "Transaction ID of the shipping label" }
35528
+ },
35529
+ required: ["transactionId"]
35530
+ },
35531
+ request: {
35532
+ method: "GET",
35533
+ path: "/v1/transactions/{transactionId}"
35534
+ }
35535
+ },
35536
+ {
35537
+ name: "transactions.create",
35538
+ class: "mutation",
35539
+ description: "Purchase a shipping label by transacting against a previously quoted rate. Returns transaction object_id, status, tracking_number, tracking_url_provider, and label_url.",
35540
+ parameters: {
35541
+ type: "object",
35542
+ properties: {
35543
+ rate: { type: "string", description: "Rate object_id returned from a previous shipment quote." },
35544
+ label_file_type: {
35545
+ type: "string",
35546
+ description: "Output format for the label file (PDF, PNG, PNG_2.3x7.5, ZPLII, etc.). Optional; defaults to the account-level setting."
35547
+ },
35548
+ async: {
35549
+ type: "boolean",
35550
+ description: "When true the carrier purchase is queued and the transaction polls to SUCCESS asynchronously. Defaults to false (synchronous).",
35551
+ default: false
35552
+ }
35553
+ },
35554
+ required: ["rate"]
35555
+ },
35556
+ request: {
35557
+ method: "POST",
35558
+ path: "/v1/transactions",
35559
+ body: {
35560
+ rate: "{rate}",
35561
+ label_file_type: "{label_file_type}",
35562
+ async: "{async}"
35563
+ }
35564
+ },
35565
+ cas: "native-idempotency",
35566
+ externalEffect: true
35567
+ },
35568
+ {
35569
+ name: "tracks.get",
35570
+ class: "read",
35571
+ description: "Get current tracking status and history for a tracking number on a specific carrier. Returns tracking_status, tracking_history, and eta.",
35572
+ parameters: {
35573
+ type: "object",
35574
+ properties: {
35575
+ carrier: { type: "string", description: "Carrier token (e.g. usps, ups, fedex, dhl_express)." },
35576
+ tracking_number: { type: "string", description: "Carrier-issued tracking number." }
35577
+ },
35578
+ required: ["carrier", "tracking_number"]
35579
+ },
35580
+ request: {
35581
+ method: "GET",
35582
+ path: "/v1/tracks/{carrier}/{tracking_number}"
35583
+ }
35584
+ }
35585
+ ]
35586
+ });
35587
+
34539
35588
  // src/connectors/adapters/sign-now.ts
34540
35589
  var signNowConnector = declarativeRestConnector({
34541
35590
  kind: "sign-now",
@@ -39296,6 +40345,127 @@ async function postMessages(inv, auth, formBody, label) {
39296
40345
  };
39297
40346
  }
39298
40347
 
40348
+ // src/connectors/adapters/vouchery-io.ts
40349
+ var voucheryIoConnector = declarativeRestConnector({
40350
+ kind: "vouchery-io",
40351
+ displayName: "Vouchery",
40352
+ description: "Vouchery is a voucher and gift card management platform.",
40353
+ auth: { kind: "api-key", hint: "Vouchery API key." },
40354
+ category: "commerce",
40355
+ defaultConsistencyModel: "authoritative",
40356
+ baseUrl: "https://api.vouchery.io/api/v1.0",
40357
+ test: { method: "GET", path: "/health" },
40358
+ capabilities: [
40359
+ {
40360
+ name: "vouchers.find",
40361
+ class: "read",
40362
+ description: "Find a voucher by code.",
40363
+ parameters: {
40364
+ type: "object",
40365
+ properties: { code: { type: "string" } },
40366
+ required: ["code"]
40367
+ },
40368
+ request: { method: "GET", path: "/vouchers/{code}" }
40369
+ },
40370
+ {
40371
+ name: "customers.create",
40372
+ class: "mutation",
40373
+ description: "Create a customer in Vouchery.",
40374
+ parameters: {
40375
+ type: "object",
40376
+ properties: {
40377
+ identifier: { type: "string" },
40378
+ name: { type: "string" },
40379
+ email: { type: "string" },
40380
+ metadata: { type: "object" }
40381
+ },
40382
+ required: ["identifier"]
40383
+ },
40384
+ request: {
40385
+ method: "POST",
40386
+ path: "/customers",
40387
+ body: {
40388
+ identifier: "{identifier}",
40389
+ name: "{name}",
40390
+ email: "{email}",
40391
+ metadata: "{metadata}"
40392
+ }
40393
+ },
40394
+ cas: "native-idempotency"
40395
+ },
40396
+ {
40397
+ name: "vouchers.create",
40398
+ class: "mutation",
40399
+ description: "Create a voucher (avoucher) in Vouchery.",
40400
+ parameters: {
40401
+ type: "object",
40402
+ properties: {
40403
+ code: { type: "string" },
40404
+ value: { type: "number" },
40405
+ expiresAt: { type: "string" },
40406
+ customerId: { type: "string" }
40407
+ },
40408
+ required: ["code", "value"]
40409
+ },
40410
+ request: {
40411
+ method: "POST",
40412
+ path: "/vouchers",
40413
+ body: {
40414
+ code: "{code}",
40415
+ value: "{value}",
40416
+ expiresAt: "{expiresAt}",
40417
+ customerId: "{customerId}"
40418
+ }
40419
+ },
40420
+ cas: "native-idempotency"
40421
+ },
40422
+ {
40423
+ name: "vouchers.redeem",
40424
+ class: "mutation",
40425
+ description: "Redeem a voucher by code. Optional customer_id attributes the redemption; optional amount partially redeems a value-bearing voucher.",
40426
+ parameters: {
40427
+ type: "object",
40428
+ properties: {
40429
+ code: { type: "string" },
40430
+ customer_id: { type: "string" },
40431
+ amount: { type: "number" }
40432
+ },
40433
+ required: ["code"]
40434
+ },
40435
+ request: {
40436
+ method: "POST",
40437
+ path: "/vouchers/{code}/redeem",
40438
+ body: {
40439
+ customer_id: "{customer_id}",
40440
+ amount: "{amount}"
40441
+ }
40442
+ },
40443
+ cas: "native-idempotency"
40444
+ },
40445
+ {
40446
+ name: "vouchers.void",
40447
+ class: "mutation",
40448
+ description: "Void a voucher by code so it can no longer be redeemed. Optional reason is recorded with the void event.",
40449
+ parameters: {
40450
+ type: "object",
40451
+ properties: {
40452
+ code: { type: "string" },
40453
+ reason: { type: "string" }
40454
+ },
40455
+ required: ["code"]
40456
+ },
40457
+ request: {
40458
+ method: "POST",
40459
+ path: "/vouchers/{code}/void",
40460
+ body: {
40461
+ reason: "{reason}"
40462
+ }
40463
+ },
40464
+ cas: "native-idempotency"
40465
+ }
40466
+ ]
40467
+ });
40468
+
39299
40469
  // src/connectors/adapters/whatsapp-business.ts
39300
40470
  var SCOPES14 = ["whatsapp_business_messaging", "whatsapp_business_management", "business_management"];
39301
40471
  var AUTH_URL18 = "https://www.facebook.com/v21.0/dialog/oauth";
@@ -50420,6 +51590,12 @@ var CONNECTOR_ADAPTER_FACTORIES = [
50420
51590
  clientId: "SHOPIFY_OAUTH_CLIENT_ID",
50421
51591
  clientSecret: "SHOPIFY_OAUTH_CLIENT_SECRET"
50422
51592
  }),
51593
+ defineFactoryAdapter(() => lemonSqueezyConnector, {}),
51594
+ defineFactoryAdapter(() => shippoConnector, {}),
51595
+ defineFactoryAdapter(() => billplzConnector, {}),
51596
+ defineFactoryAdapter(() => voucheryIoConnector, {}),
51597
+ defineFactoryAdapter(() => saleorConnector, {}),
51598
+ defineFactoryAdapter(() => cashfreePaymentsConnector, {}),
50423
51599
  defineFactoryAdapter(() => frontConnector, {
50424
51600
  clientId: "FRONT_OAUTH_CLIENT_ID",
50425
51601
  clientSecret: "FRONT_OAUTH_CLIENT_SECRET"
@@ -75767,185 +76943,6 @@ var bitlyConnector = declarativeRestConnector({
75767
76943
  ]
75768
76944
  });
75769
76945
 
75770
- // src/connectors/adapters/billplz.ts
75771
- var billplzConnector = declarativeRestConnector({
75772
- kind: "billplz",
75773
- displayName: "Billplz",
75774
- description: "Create and retrieve Billplz bills for Malaysian Ringgit payment collection.",
75775
- auth: {
75776
- kind: "api-key",
75777
- hint: "Billplz API key from Settings \u2192 Account Settings. Used as the HTTP Basic username with an empty password."
75778
- },
75779
- category: "commerce",
75780
- defaultConsistencyModel: "authoritative",
75781
- baseUrl: "https://www.billplz.com/api/v3",
75782
- test: { method: "GET", path: "/collections" },
75783
- capabilities: [
75784
- {
75785
- name: "create.bill",
75786
- class: "mutation",
75787
- description: "Create a Billplz bill in a collection and (optionally) trigger delivery to the recipient.",
75788
- parameters: {
75789
- type: "object",
75790
- properties: {
75791
- collection_id: {
75792
- type: "string",
75793
- description: "Collection identifier that will own the new bill."
75794
- },
75795
- email: {
75796
- type: "string",
75797
- description: "Recipient email address (required if mobile is omitted)."
75798
- },
75799
- mobile: {
75800
- type: "string",
75801
- description: "Recipient mobile number with country code (required if email is omitted)."
75802
- },
75803
- name: {
75804
- type: "string",
75805
- description: "Name of the bill recipient as displayed on the bill."
75806
- },
75807
- amount: {
75808
- type: "integer",
75809
- description: "Amount in sen (1/100 of a Ringgit). E.g. 200 represents RM 2.00."
75810
- },
75811
- description: {
75812
- type: "string",
75813
- description: "Bill description rendered on the payment page."
75814
- },
75815
- callback_url: {
75816
- type: "string",
75817
- description: "Webhook URL Billplz will POST to on payment state changes."
75818
- },
75819
- due_at: {
75820
- type: "string",
75821
- description: "Due date in YYYY-MM-DD format. Defaults to today when omitted."
75822
- },
75823
- redirect_url: {
75824
- type: "string",
75825
- description: "URL the payer is redirected to after completing payment."
75826
- },
75827
- deliver: {
75828
- type: "boolean",
75829
- description: "If true, Billplz emails/SMSes the bill link to the recipient."
75830
- },
75831
- reference_1_label: {
75832
- type: "string",
75833
- description: "Label for the first custom reference field."
75834
- },
75835
- reference_1: {
75836
- type: "string",
75837
- description: "Value for the first custom reference field."
75838
- },
75839
- reference_2_label: {
75840
- type: "string",
75841
- description: "Label for the second custom reference field."
75842
- },
75843
- reference_2: {
75844
- type: "string",
75845
- description: "Value for the second custom reference field."
75846
- }
75847
- },
75848
- required: ["collection_id", "name", "amount", "description", "callback_url"]
75849
- },
75850
- request: {
75851
- method: "POST",
75852
- path: "/bills",
75853
- body: {
75854
- collection_id: "{collection_id}",
75855
- email: "{email}",
75856
- mobile: "{mobile}",
75857
- name: "{name}",
75858
- amount: "{amount}",
75859
- description: "{description}",
75860
- callback_url: "{callback_url}",
75861
- due_at: "{due_at}",
75862
- redirect_url: "{redirect_url}",
75863
- deliver: "{deliver}",
75864
- reference_1_label: "{reference_1_label}",
75865
- reference_1: "{reference_1}",
75866
- reference_2_label: "{reference_2_label}",
75867
- reference_2: "{reference_2}"
75868
- }
75869
- },
75870
- cas: "native-idempotency"
75871
- },
75872
- {
75873
- name: "get.bill",
75874
- class: "read",
75875
- description: "Fetch a Billplz bill by its identifier, including current payment state.",
75876
- parameters: {
75877
- type: "object",
75878
- properties: {
75879
- bill_id: {
75880
- type: "string",
75881
- description: "Billplz bill identifier returned by create.bill."
75882
- }
75883
- },
75884
- required: ["bill_id"]
75885
- },
75886
- request: {
75887
- method: "GET",
75888
- path: "/bills/{bill_id}"
75889
- }
75890
- },
75891
- {
75892
- name: "cancel.bill",
75893
- class: "mutation",
75894
- description: "Delete (cancel) an unpaid Billplz bill by its identifier. Paid bills cannot be deleted and the upstream will reject the request.",
75895
- parameters: {
75896
- type: "object",
75897
- properties: {
75898
- id: {
75899
- type: "string",
75900
- description: "Billplz bill identifier to cancel."
75901
- }
75902
- },
75903
- required: ["id"]
75904
- },
75905
- request: {
75906
- method: "DELETE",
75907
- path: "/bills/{id}"
75908
- },
75909
- cas: "native-idempotency",
75910
- externalEffect: true
75911
- },
75912
- {
75913
- name: "create.refund",
75914
- class: "mutation",
75915
- description: "Refund a paid Billplz bill in full or in part. Amount is in sen (1/100 of a Ringgit) and must not exceed the original paid amount.",
75916
- parameters: {
75917
- type: "object",
75918
- properties: {
75919
- bill_id: {
75920
- type: "string",
75921
- description: "Identifier of the paid bill being refunded."
75922
- },
75923
- amount: {
75924
- type: "integer",
75925
- description: "Refund amount in sen (1/100 of a Ringgit). E.g. 200 represents RM 2.00."
75926
- },
75927
- reason: {
75928
- type: "string",
75929
- description: "Reason recorded on the refund for audit/reporting."
75930
- }
75931
- },
75932
- required: ["bill_id", "amount", "reason"]
75933
- },
75934
- request: {
75935
- method: "POST",
75936
- path: "/refunds",
75937
- body: {
75938
- bill_id: "{bill_id}",
75939
- amount: "{amount}",
75940
- reason: "{reason}"
75941
- }
75942
- },
75943
- cas: "native-idempotency",
75944
- externalEffect: true
75945
- }
75946
- ]
75947
- });
75948
-
75949
76946
  // src/connectors/adapters/bonjoro.ts
75950
76947
  var bonjoroConnector = declarativeRestConnector({
75951
76948
  kind: "bonjoro",
@@ -78676,272 +79673,6 @@ var cannyConnector = declarativeRestConnector({
78676
79673
  ]
78677
79674
  });
78678
79675
 
78679
- // src/connectors/adapters/cashfree-payments.ts
78680
- var cashfreePaymentsConnector = declarativeRestConnector({
78681
- kind: "cashfree-payments",
78682
- displayName: "Cashfree Payments",
78683
- description: "Cashfree Payments integration for processing payments, refunds, and managing payment links and cashgrams.",
78684
- auth: {
78685
- kind: "api-key",
78686
- hint: "Cashfree client secret. Set source.metadata.clientId to the matching x-client-id; override metadata.baseUrl for sandbox/payouts hosts."
78687
- },
78688
- category: "commerce",
78689
- defaultConsistencyModel: "authoritative",
78690
- baseUrl: { metadataKey: "baseUrl", fallback: "https://api.cashfree.com/pg" },
78691
- credentialPlacement: { kind: "header", header: "x-client-secret" },
78692
- defaultHeaders: {
78693
- "x-api-version": "2023-08-01",
78694
- "x-client-id": "{metadata.clientId}"
78695
- },
78696
- test: { method: "GET", path: "/orders/__connector_probe__" },
78697
- capabilities: [
78698
- {
78699
- name: "orders.create",
78700
- class: "mutation",
78701
- description: "Create an order in Cashfree PG.",
78702
- parameters: {
78703
- type: "object",
78704
- properties: {
78705
- orderAmount: { type: "number" },
78706
- orderCurrency: { type: "string" },
78707
- customerId: { type: "string" },
78708
- customerPhone: { type: "string" },
78709
- customerEmail: { type: "string" },
78710
- customerName: { type: "string" },
78711
- orderId: { type: "string" },
78712
- orderNote: { type: "string" },
78713
- orderExpiryTime: { type: "string" },
78714
- returnUrl: { type: "string" },
78715
- notifyUrl: { type: "string" },
78716
- paymentMethods: { type: "string" },
78717
- orderTags: { type: "object" },
78718
- orderSplits: { type: "array" }
78719
- },
78720
- required: ["orderAmount", "orderCurrency", "customerId", "customerPhone"]
78721
- },
78722
- request: {
78723
- method: "POST",
78724
- path: "/orders",
78725
- headers: { "x-idempotency-key": "{idempotencyKey}", "x-request-id": "{requestId}" },
78726
- body: {
78727
- order_amount: "{orderAmount}",
78728
- order_currency: "{orderCurrency}",
78729
- order_id: "{orderId}",
78730
- order_note: "{orderNote}",
78731
- order_expiry_time: "{orderExpiryTime}",
78732
- order_tags: "{orderTags}",
78733
- order_splits: "{orderSplits}",
78734
- customer_details: {
78735
- customer_id: "{customerId}",
78736
- customer_phone: "{customerPhone}",
78737
- customer_email: "{customerEmail}",
78738
- customer_name: "{customerName}",
78739
- customer_bank_account_number: "{customerBankAccountNumber}",
78740
- customer_bank_ifsc: "{customerBankIfsc}",
78741
- customer_bank_code: "{customerBankCode}"
78742
- },
78743
- order_meta: {
78744
- return_url: "{returnUrl}",
78745
- notify_url: "{notifyUrl}",
78746
- payment_methods: "{paymentMethods}"
78747
- }
78748
- }
78749
- },
78750
- cas: "native-idempotency"
78751
- },
78752
- {
78753
- name: "payment_links.create",
78754
- class: "mutation",
78755
- description: "Create a Cashfree payment link.",
78756
- parameters: {
78757
- type: "object",
78758
- properties: {
78759
- linkId: { type: "string" },
78760
- linkAmount: { type: "number" },
78761
- linkCurrency: { type: "string" },
78762
- linkPurpose: { type: "string" },
78763
- customerName: { type: "string" },
78764
- customerEmail: { type: "string" },
78765
- customerPhone: { type: "string" },
78766
- linkPartialPayments: { type: "boolean" },
78767
- linkMinimumPartialAmount: { type: "number" },
78768
- linkExpiryTime: { type: "string" },
78769
- sendSms: { type: "boolean" },
78770
- sendEmail: { type: "boolean" },
78771
- linkAutoReminders: { type: "boolean" },
78772
- upiIntent: { type: "boolean" },
78773
- linkNotes: { type: "object" },
78774
- notifyUrl: { type: "string" },
78775
- returnUrl: { type: "string" }
78776
- },
78777
- required: ["linkId", "linkAmount", "linkCurrency", "linkPurpose", "customerPhone"]
78778
- },
78779
- request: {
78780
- method: "POST",
78781
- path: "/links",
78782
- headers: { "x-idempotency-key": "{idempotencyKey}", "x-request-id": "{requestId}" },
78783
- body: {
78784
- link_id: "{linkId}",
78785
- link_amount: "{linkAmount}",
78786
- link_currency: "{linkCurrency}",
78787
- link_purpose: "{linkPurpose}",
78788
- link_partial_payments: "{linkPartialPayments}",
78789
- link_minimum_partial_amount: "{linkMinimumPartialAmount}",
78790
- link_expiry_time: "{linkExpiryTime}",
78791
- link_auto_reminders: "{linkAutoReminders}",
78792
- link_notes: "{linkNotes}",
78793
- customer_details: {
78794
- customer_name: "{customerName}",
78795
- customer_email: "{customerEmail}",
78796
- customer_phone: "{customerPhone}"
78797
- },
78798
- link_notify: {
78799
- send_sms: "{sendSms}",
78800
- send_email: "{sendEmail}"
78801
- },
78802
- link_meta: {
78803
- notify_url: "{notifyUrl}",
78804
- return_url: "{returnUrl}",
78805
- upi_intent: "{upiIntent}"
78806
- }
78807
- }
78808
- },
78809
- cas: "native-idempotency"
78810
- },
78811
- {
78812
- name: "refunds.create",
78813
- class: "mutation",
78814
- description: "Create a refund against a Cashfree order.",
78815
- parameters: {
78816
- type: "object",
78817
- properties: {
78818
- orderId: { type: "string" },
78819
- refundId: { type: "string" },
78820
- refundAmount: { type: "number" },
78821
- refundNote: { type: "string" },
78822
- refundSpeed: { type: "string" },
78823
- refundSplits: { type: "array" }
78824
- },
78825
- required: ["orderId", "refundId", "refundAmount"]
78826
- },
78827
- request: {
78828
- method: "POST",
78829
- path: "/orders/{orderId}/refunds",
78830
- headers: { "x-idempotency-key": "{idempotencyKey}", "x-request-id": "{requestId}" },
78831
- body: {
78832
- refund_id: "{refundId}",
78833
- refund_amount: "{refundAmount}",
78834
- refund_note: "{refundNote}",
78835
- refund_speed: "{refundSpeed}",
78836
- refund_splits: "{refundSplits}"
78837
- }
78838
- },
78839
- cas: "native-idempotency"
78840
- },
78841
- {
78842
- name: "payment_links.cancel",
78843
- class: "mutation",
78844
- description: "Cancel an ACTIVE Cashfree payment link.",
78845
- parameters: {
78846
- type: "object",
78847
- properties: { linkId: { type: "string" } },
78848
- required: ["linkId"]
78849
- },
78850
- request: {
78851
- method: "POST",
78852
- path: "/links/{linkId}/cancel",
78853
- headers: { "x-request-id": "{requestId}" }
78854
- },
78855
- cas: "native-idempotency"
78856
- },
78857
- {
78858
- name: "payment_links.get",
78859
- class: "read",
78860
- description: "Fetch details for a Cashfree payment link.",
78861
- parameters: {
78862
- type: "object",
78863
- properties: { linkId: { type: "string" } },
78864
- required: ["linkId"]
78865
- },
78866
- request: { method: "GET", path: "/links/{linkId}" }
78867
- },
78868
- {
78869
- name: "cashgrams.create",
78870
- class: "mutation",
78871
- description: "Create a Cashfree Cashgram (payout link).",
78872
- parameters: {
78873
- type: "object",
78874
- properties: {
78875
- cashgramId: { type: "string" },
78876
- amount: { type: "number" },
78877
- name: { type: "string" },
78878
- email: { type: "string" },
78879
- phone: { type: "string" },
78880
- linkExpiry: { type: "string" },
78881
- remarks: { type: "string" },
78882
- notifyCustomer: { type: "boolean" }
78883
- },
78884
- required: ["cashgramId", "amount", "name", "phone", "linkExpiry"]
78885
- },
78886
- request: {
78887
- method: "POST",
78888
- path: "/v1/createCashgram",
78889
- headers: { "x-idempotency-key": "{idempotencyKey}", "x-request-id": "{requestId}" },
78890
- body: {
78891
- cashgramId: "{cashgramId}",
78892
- amount: "{amount}",
78893
- name: "{name}",
78894
- email: "{email}",
78895
- phone: "{phone}",
78896
- linkExpiry: "{linkExpiry}",
78897
- remarks: "{remarks}",
78898
- notifyCustomer: "{notifyCustomer}"
78899
- }
78900
- },
78901
- cas: "native-idempotency"
78902
- },
78903
- {
78904
- name: "payment_links.orders.list",
78905
- class: "read",
78906
- description: "List orders associated with a payment link.",
78907
- parameters: {
78908
- type: "object",
78909
- properties: { linkId: { type: "string" } },
78910
- required: ["linkId"]
78911
- },
78912
- request: { method: "GET", path: "/links/{linkId}/orders" }
78913
- },
78914
- {
78915
- name: "orders.refunds.list",
78916
- class: "read",
78917
- description: "List all refunds attached to a Cashfree order.",
78918
- parameters: {
78919
- type: "object",
78920
- properties: { orderId: { type: "string" } },
78921
- required: ["orderId"]
78922
- },
78923
- request: { method: "GET", path: "/orders/{orderId}/refunds" }
78924
- },
78925
- {
78926
- name: "cashgrams.deactivate",
78927
- class: "mutation",
78928
- description: "Deactivate an existing Cashfree Cashgram.",
78929
- parameters: {
78930
- type: "object",
78931
- properties: { cashgramId: { type: "string" } },
78932
- required: ["cashgramId"]
78933
- },
78934
- request: {
78935
- method: "POST",
78936
- path: "/v1/deactivateCashgram",
78937
- headers: { "x-request-id": "{requestId}" },
78938
- body: { cashgramId: "{cashgramId}" }
78939
- },
78940
- cas: "native-idempotency"
78941
- }
78942
- ]
78943
- });
78944
-
78945
79676
  // src/connectors/adapters/chargekeep.ts
78946
79677
  var chargekeepConnector = declarativeRestConnector({
78947
79678
  kind: "chargekeep",
@@ -98188,236 +98919,6 @@ var kommoConnector = declarativeRestConnector({
98188
98919
  ]
98189
98920
  });
98190
98921
 
98191
- // src/connectors/adapters/lemon-squeezy.ts
98192
- var lemonSqueezyConnector = declarativeRestConnector({
98193
- kind: "lemon-squeezy",
98194
- displayName: "Lemon Squeezy",
98195
- description: "Lemon Squeezy payment gateway: list products, orders, subscriptions, and customers, and create hosted checkout sessions.",
98196
- auth: {
98197
- kind: "api-key",
98198
- hint: "Lemon Squeezy API key from Settings \u2192 API. Sent as Authorization: Bearer <key>."
98199
- },
98200
- category: "commerce",
98201
- defaultConsistencyModel: "authoritative",
98202
- baseUrl: "https://api.lemonsqueezy.com/v1",
98203
- // /users/me is the documented authenticated identity endpoint.
98204
- test: { method: "GET", path: "/users/me" },
98205
- capabilities: [
98206
- {
98207
- name: "products.list",
98208
- class: "read",
98209
- description: "List products in a store with pagination.",
98210
- parameters: {
98211
- type: "object",
98212
- properties: {
98213
- storeId: { type: "string" },
98214
- page: { type: "integer", minimum: 1 },
98215
- perPage: { type: "integer", minimum: 1, maximum: 100 }
98216
- }
98217
- },
98218
- request: {
98219
- method: "GET",
98220
- path: "/products",
98221
- query: {
98222
- "filter[store_id]": "{storeId}",
98223
- "page[number]": "{page}",
98224
- "page[size]": "{perPage}"
98225
- }
98226
- }
98227
- },
98228
- {
98229
- name: "orders.list",
98230
- class: "read",
98231
- description: "List orders, optionally filtered by store, customer email, or status.",
98232
- parameters: {
98233
- type: "object",
98234
- properties: {
98235
- storeId: { type: "string" },
98236
- userEmail: { type: "string" },
98237
- status: {
98238
- type: "string",
98239
- enum: ["pending", "failed", "paid", "refunded"]
98240
- },
98241
- page: { type: "integer", minimum: 1 },
98242
- perPage: { type: "integer", minimum: 1, maximum: 100 }
98243
- }
98244
- },
98245
- request: {
98246
- method: "GET",
98247
- path: "/orders",
98248
- query: {
98249
- "filter[store_id]": "{storeId}",
98250
- "filter[user_email]": "{userEmail}",
98251
- "filter[status]": "{status}",
98252
- "page[number]": "{page}",
98253
- "page[size]": "{perPage}"
98254
- }
98255
- }
98256
- },
98257
- {
98258
- name: "orders.get",
98259
- class: "read",
98260
- description: "Get a single order by id.",
98261
- parameters: {
98262
- type: "object",
98263
- properties: { orderId: { type: "string" } },
98264
- required: ["orderId"]
98265
- },
98266
- request: { method: "GET", path: "/orders/{orderId}" }
98267
- },
98268
- {
98269
- name: "subscriptions.list",
98270
- class: "read",
98271
- description: "List subscriptions, optionally filtered by store or order item.",
98272
- parameters: {
98273
- type: "object",
98274
- properties: {
98275
- storeId: { type: "string" },
98276
- orderItemId: { type: "string" },
98277
- page: { type: "integer", minimum: 1 },
98278
- perPage: { type: "integer", minimum: 1, maximum: 100 }
98279
- }
98280
- },
98281
- request: {
98282
- method: "GET",
98283
- path: "/subscriptions",
98284
- query: {
98285
- "filter[store_id]": "{storeId}",
98286
- "filter[order_item_id]": "{orderItemId}",
98287
- "page[number]": "{page}",
98288
- "page[size]": "{perPage}"
98289
- }
98290
- }
98291
- },
98292
- {
98293
- name: "customers.list",
98294
- class: "read",
98295
- description: "List customers, optionally filtered by store or email.",
98296
- parameters: {
98297
- type: "object",
98298
- properties: {
98299
- storeId: { type: "string" },
98300
- email: { type: "string" },
98301
- page: { type: "integer", minimum: 1 },
98302
- perPage: { type: "integer", minimum: 1, maximum: 100 }
98303
- }
98304
- },
98305
- request: {
98306
- method: "GET",
98307
- path: "/customers",
98308
- query: {
98309
- "filter[store_id]": "{storeId}",
98310
- "filter[email]": "{email}",
98311
- "page[number]": "{page}",
98312
- "page[size]": "{perPage}"
98313
- }
98314
- }
98315
- },
98316
- {
98317
- name: "checkouts.create",
98318
- class: "mutation",
98319
- description: "Create a hosted checkout for a variant. Returns a checkout object whose attributes.url is the hosted payment page.",
98320
- parameters: {
98321
- type: "object",
98322
- properties: {
98323
- storeId: { type: "string" },
98324
- variantId: { type: "string" },
98325
- customerEmail: { type: "string" },
98326
- customerName: { type: "string" },
98327
- customPrice: { type: "integer", minimum: 1 },
98328
- discountCode: { type: "string" },
98329
- redirectUrl: { type: "string" },
98330
- expiresAt: { type: "string" },
98331
- customData: { type: "object" }
98332
- },
98333
- required: ["storeId", "variantId"]
98334
- },
98335
- // Lemon Squeezy uses the JSON:API envelope: a `data` document with
98336
- // `type`, `attributes`, and `relationships` pointing at the store + variant.
98337
- request: {
98338
- method: "POST",
98339
- path: "/checkouts",
98340
- body: {
98341
- data: {
98342
- type: "checkouts",
98343
- attributes: {
98344
- checkout_data: {
98345
- email: "{customerEmail}",
98346
- name: "{customerName}",
98347
- discount_code: "{discountCode}",
98348
- custom: "{customData}"
98349
- },
98350
- product_options: {
98351
- redirect_url: "{redirectUrl}"
98352
- },
98353
- checkout_options: {
98354
- expires_at: "{expiresAt}"
98355
- },
98356
- custom_price: "{customPrice}"
98357
- },
98358
- relationships: {
98359
- store: {
98360
- data: { type: "stores", id: "{storeId}" }
98361
- },
98362
- variant: {
98363
- data: { type: "variants", id: "{variantId}" }
98364
- }
98365
- }
98366
- }
98367
- }
98368
- },
98369
- cas: "native-idempotency"
98370
- },
98371
- {
98372
- name: "subscriptions.cancel",
98373
- class: "mutation",
98374
- description: "Cancel a subscription. The subscription remains active until the end of the current billing period, after which it transitions to cancelled.",
98375
- parameters: {
98376
- type: "object",
98377
- properties: { id: { type: "string" } },
98378
- required: ["id"]
98379
- },
98380
- request: {
98381
- method: "DELETE",
98382
- path: "/subscriptions/{id}"
98383
- },
98384
- cas: "native-idempotency",
98385
- externalEffect: true
98386
- },
98387
- {
98388
- name: "orders.issueRefund",
98389
- class: "mutation",
98390
- description: "Issue a refund for an order. Omit `amount` to refund the full order total; otherwise pass an integer amount in cents (the smallest currency unit) for a partial refund.",
98391
- parameters: {
98392
- type: "object",
98393
- properties: {
98394
- id: { type: "string" },
98395
- amount: {
98396
- type: "integer",
98397
- minimum: 1,
98398
- description: "Optional partial-refund amount in cents. Omit for a full refund."
98399
- }
98400
- },
98401
- required: ["id"]
98402
- },
98403
- request: {
98404
- method: "POST",
98405
- path: "/orders/{id}/refund",
98406
- body: {
98407
- data: {
98408
- type: "refunds",
98409
- attributes: {
98410
- amount: "{amount}"
98411
- }
98412
- }
98413
- }
98414
- },
98415
- cas: "native-idempotency",
98416
- externalEffect: true
98417
- }
98418
- ]
98419
- });
98420
-
98421
98922
  // src/connectors/adapters/leexi.ts
98422
98923
  var leexiConnector = declarativeRestConnector({
98423
98924
  kind: "leexi",
@@ -114429,203 +114930,6 @@ var saasticConnector = declarativeRestConnector({
114429
114930
  ]
114430
114931
  });
114431
114932
 
114432
- // src/connectors/adapters/saleor.ts
114433
- var saleorConnector = declarativeRestConnector({
114434
- kind: "saleor",
114435
- displayName: "Saleor",
114436
- description: "Query Saleor GraphQL API, retrieve orders, and add order notes.",
114437
- auth: {
114438
- kind: "api-key",
114439
- hint: "Saleor API token."
114440
- },
114441
- category: "commerce",
114442
- defaultConsistencyModel: "authoritative",
114443
- baseUrl: { metadataKey: "apiUrl" },
114444
- test: { method: "POST", path: "/", body: { query: "{ shop { name } }" } },
114445
- capabilities: [
114446
- {
114447
- name: "graphql.query",
114448
- class: "read",
114449
- description: "Execute a raw GraphQL query against Saleor API.",
114450
- parameters: {
114451
- type: "object",
114452
- properties: {
114453
- query: { type: "string", description: "GraphQL query string" },
114454
- variables: { type: "object", description: "GraphQL query variables" }
114455
- },
114456
- required: ["query"]
114457
- },
114458
- request: {
114459
- method: "POST",
114460
- path: "/",
114461
- body: { query: "{query}", variables: "{variables}" }
114462
- }
114463
- },
114464
- {
114465
- name: "orders.get",
114466
- class: "read",
114467
- description: "Retrieve a Saleor order by ID.",
114468
- parameters: {
114469
- type: "object",
114470
- properties: {
114471
- orderId: { type: "string", description: "Order ID" }
114472
- },
114473
- required: ["orderId"]
114474
- },
114475
- request: {
114476
- method: "POST",
114477
- path: "/",
114478
- body: {
114479
- query: "query GetOrder($id: ID!) { order(id: $id) { id number userEmail total { gross { amount } } } }",
114480
- variables: { id: "{orderId}" }
114481
- }
114482
- }
114483
- },
114484
- {
114485
- name: "orders.addNote",
114486
- class: "mutation",
114487
- description: "Add a note to a Saleor order.",
114488
- parameters: {
114489
- type: "object",
114490
- properties: {
114491
- orderId: { type: "string", description: "Order ID" },
114492
- message: { type: "string", description: "Note message" }
114493
- },
114494
- required: ["orderId", "message"]
114495
- },
114496
- request: {
114497
- method: "POST",
114498
- path: "/",
114499
- body: {
114500
- query: "mutation AddOrderNote($id: ID!, $message: String!) { orderAddNote(order: $id, input: { message: $message }) { order { id } errors { field message } } }",
114501
- variables: { id: "{orderId}", message: "{message}" }
114502
- }
114503
- },
114504
- cas: "native-idempotency",
114505
- externalEffect: true
114506
- },
114507
- {
114508
- name: "orders.cancel",
114509
- class: "mutation",
114510
- description: "Cancel a Saleor order.",
114511
- parameters: {
114512
- type: "object",
114513
- properties: {
114514
- orderId: { type: "string", description: "Order ID" }
114515
- },
114516
- required: ["orderId"]
114517
- },
114518
- request: {
114519
- method: "POST",
114520
- path: "/",
114521
- body: {
114522
- query: "mutation CancelOrder($id: ID!) { orderCancel(id: $id) { order { id status } errors { field message code } } }",
114523
- variables: { id: "{orderId}" }
114524
- }
114525
- },
114526
- cas: "native-idempotency",
114527
- externalEffect: true
114528
- },
114529
- {
114530
- name: "orders.fulfill",
114531
- class: "mutation",
114532
- description: "Mark an order line as fulfilled by creating a fulfillment for the given quantities.",
114533
- parameters: {
114534
- type: "object",
114535
- properties: {
114536
- orderId: { type: "string", description: "Order ID" },
114537
- lines: {
114538
- type: "array",
114539
- description: "Order lines to fulfill. Each entry is an OrderFulfillLineInput.",
114540
- items: {
114541
- type: "object",
114542
- properties: {
114543
- orderLineId: { type: "string" },
114544
- stocks: {
114545
- type: "array",
114546
- items: {
114547
- type: "object",
114548
- properties: {
114549
- quantity: { type: "number" },
114550
- warehouse: { type: "string" }
114551
- },
114552
- required: ["quantity", "warehouse"]
114553
- }
114554
- }
114555
- },
114556
- required: ["orderLineId", "stocks"]
114557
- }
114558
- },
114559
- notifyCustomer: { type: "boolean", description: "Whether to notify the customer. Defaults to true caller-side." }
114560
- },
114561
- required: ["orderId", "lines", "notifyCustomer"]
114562
- },
114563
- request: {
114564
- method: "POST",
114565
- path: "/",
114566
- body: {
114567
- query: "mutation FulfillOrder($order: ID!, $input: OrderFulfillInput!) { orderFulfill(order: $order, input: $input) { fulfillments { id status } errors { field message code } } }",
114568
- variables: {
114569
- order: "{orderId}",
114570
- input: { lines: "{lines}", notifyCustomer: "{notifyCustomer}" }
114571
- }
114572
- }
114573
- },
114574
- cas: "native-idempotency",
114575
- externalEffect: true
114576
- },
114577
- {
114578
- name: "orders.refund",
114579
- class: "mutation",
114580
- description: "Refund a Saleor order by creating an order refund.",
114581
- parameters: {
114582
- type: "object",
114583
- properties: {
114584
- orderId: { type: "string", description: "Order ID" },
114585
- amount: { type: "number", description: "Refund amount in the order currency." }
114586
- },
114587
- required: ["orderId", "amount"]
114588
- },
114589
- request: {
114590
- method: "POST",
114591
- path: "/",
114592
- body: {
114593
- query: "mutation RefundOrder($id: ID!, $amount: PositiveDecimal!) { orderRefund(id: $id, amount: $amount) { order { id paymentStatus } errors { field message code } } }",
114594
- variables: { id: "{orderId}", amount: "{amount}" }
114595
- }
114596
- },
114597
- cas: "native-idempotency",
114598
- externalEffect: true
114599
- },
114600
- {
114601
- name: "orders.update",
114602
- class: "mutation",
114603
- description: "Update order metadata or status (billing/shipping address, user email, language).",
114604
- parameters: {
114605
- type: "object",
114606
- properties: {
114607
- orderId: { type: "string", description: "Order ID" },
114608
- input: {
114609
- type: "object",
114610
- description: "OrderUpdateInput fields (e.g. billingAddress, shippingAddress, userEmail, languageCode)."
114611
- }
114612
- },
114613
- required: ["orderId", "input"]
114614
- },
114615
- request: {
114616
- method: "POST",
114617
- path: "/",
114618
- body: {
114619
- query: "mutation UpdateOrder($id: ID!, $input: OrderUpdateInput!) { orderUpdate(id: $id, input: $input) { order { id status } errors { field message code } } }",
114620
- variables: { id: "{orderId}", input: "{input}" }
114621
- }
114622
- },
114623
- cas: "native-idempotency",
114624
- externalEffect: true
114625
- }
114626
- ]
114627
- });
114628
-
114629
114933
  // src/connectors/adapters/sardis.ts
114630
114934
  var sardisConnector = declarativeRestConnector({
114631
114935
  kind: "sardis",
@@ -116504,165 +116808,6 @@ var shortIoConnector = declarativeRestConnector({
116504
116808
  ]
116505
116809
  });
116506
116810
 
116507
- // src/connectors/adapters/shippo.ts
116508
- var shippoConnector = declarativeRestConnector({
116509
- kind: "shippo",
116510
- displayName: "Shippo",
116511
- description: "Multi-carrier shipping platform for real-time rates, labels, and tracking.",
116512
- auth: { kind: "api-key", hint: "Shippo API key." },
116513
- category: "commerce",
116514
- defaultConsistencyModel: "authoritative",
116515
- baseUrl: "https://api.goshippo.com",
116516
- test: { method: "GET", path: "/v1/serviceleveltoken" },
116517
- capabilities: [
116518
- {
116519
- name: "orders.create",
116520
- class: "mutation",
116521
- description: "Create a new order in Shippo.",
116522
- parameters: {
116523
- type: "object",
116524
- properties: {
116525
- orderId: { type: "string", description: "Custom order number" },
116526
- orderStatus: { type: "string", description: "Order status (e.g., awaiting_shipment, shipped, cancelled)" },
116527
- placedAt: { type: "string", description: "ISO 8601 timestamp when order was placed" },
116528
- totalPrice: { type: "string", description: "Total price including shipping and tax" },
116529
- subtotalPrice: { type: "string", description: "Price before shipping and tax" },
116530
- totalTax: { type: "string", description: "Total tax amount" },
116531
- currency: { type: "string", description: "Currency code (USD, EUR, etc.)" },
116532
- fromName: { type: "string", description: "Sender name" },
116533
- fromCompany: { type: "string", description: "Sender company" },
116534
- fromStreet1: { type: "string", description: "Sender street address line 1" },
116535
- fromCity: { type: "string", description: "Sender city" },
116536
- fromState: { type: "string", description: "Sender state/province" },
116537
- fromZip: { type: "string", description: "Sender postal code" },
116538
- fromCountry: { type: "string", description: "Sender country code" },
116539
- toName: { type: "string", description: "Recipient name" },
116540
- toCompany: { type: "string", description: "Recipient company" },
116541
- toStreet1: { type: "string", description: "Recipient street address line 1" },
116542
- toCity: { type: "string", description: "Recipient city" },
116543
- toState: { type: "string", description: "Recipient state/province" },
116544
- toZip: { type: "string", description: "Recipient postal code" },
116545
- toCountry: { type: "string", description: "Recipient country code" }
116546
- },
116547
- required: ["orderId", "orderStatus", "placedAt", "totalPrice", "currency", "toName", "toCountry"]
116548
- },
116549
- request: {
116550
- method: "POST",
116551
- path: "/v1/orders",
116552
- body: {
116553
- order_number: "{orderId}",
116554
- order_status: "{orderStatus}",
116555
- placed_at: "{placedAt}",
116556
- total_price: "{totalPrice}",
116557
- subtotal_price: "{subtotalPrice}",
116558
- total_tax: "{totalTax}",
116559
- currency: "{currency}",
116560
- address_from: {
116561
- name: "{fromName}",
116562
- company: "{fromCompany}",
116563
- street1: "{fromStreet1}",
116564
- city: "{fromCity}",
116565
- state: "{fromState}",
116566
- zip: "{fromZip}",
116567
- country: "{fromCountry}"
116568
- },
116569
- address_to: {
116570
- name: "{toName}",
116571
- company: "{toCompany}",
116572
- street1: "{toStreet1}",
116573
- city: "{toCity}",
116574
- state: "{toState}",
116575
- zip: "{toZip}",
116576
- country: "{toCountry}"
116577
- }
116578
- }
116579
- },
116580
- cas: "native-idempotency"
116581
- },
116582
- {
116583
- name: "orders.find",
116584
- class: "read",
116585
- description: "Find an order by order number or ID.",
116586
- parameters: {
116587
- type: "object",
116588
- properties: {
116589
- orderIdOrNumber: { type: "string", description: "Order ID or order number" }
116590
- },
116591
- required: ["orderIdOrNumber"]
116592
- },
116593
- request: {
116594
- method: "GET",
116595
- path: "/v1/orders/{orderIdOrNumber}"
116596
- }
116597
- },
116598
- {
116599
- name: "shippinglabels.find",
116600
- class: "read",
116601
- description: "Find a shipping label by transaction ID.",
116602
- parameters: {
116603
- type: "object",
116604
- properties: {
116605
- transactionId: { type: "string", description: "Transaction ID of the shipping label" }
116606
- },
116607
- required: ["transactionId"]
116608
- },
116609
- request: {
116610
- method: "GET",
116611
- path: "/v1/transactions/{transactionId}"
116612
- }
116613
- },
116614
- {
116615
- name: "transactions.create",
116616
- class: "mutation",
116617
- description: "Purchase a shipping label by transacting against a previously quoted rate. Returns transaction object_id, status, tracking_number, tracking_url_provider, and label_url.",
116618
- parameters: {
116619
- type: "object",
116620
- properties: {
116621
- rate: { type: "string", description: "Rate object_id returned from a previous shipment quote." },
116622
- label_file_type: {
116623
- type: "string",
116624
- description: "Output format for the label file (PDF, PNG, PNG_2.3x7.5, ZPLII, etc.). Optional; defaults to the account-level setting."
116625
- },
116626
- async: {
116627
- type: "boolean",
116628
- description: "When true the carrier purchase is queued and the transaction polls to SUCCESS asynchronously. Defaults to false (synchronous).",
116629
- default: false
116630
- }
116631
- },
116632
- required: ["rate"]
116633
- },
116634
- request: {
116635
- method: "POST",
116636
- path: "/v1/transactions",
116637
- body: {
116638
- rate: "{rate}",
116639
- label_file_type: "{label_file_type}",
116640
- async: "{async}"
116641
- }
116642
- },
116643
- cas: "native-idempotency",
116644
- externalEffect: true
116645
- },
116646
- {
116647
- name: "tracks.get",
116648
- class: "read",
116649
- description: "Get current tracking status and history for a tracking number on a specific carrier. Returns tracking_status, tracking_history, and eta.",
116650
- parameters: {
116651
- type: "object",
116652
- properties: {
116653
- carrier: { type: "string", description: "Carrier token (e.g. usps, ups, fedex, dhl_express)." },
116654
- tracking_number: { type: "string", description: "Carrier-issued tracking number." }
116655
- },
116656
- required: ["carrier", "tracking_number"]
116657
- },
116658
- request: {
116659
- method: "GET",
116660
- path: "/v1/tracks/{carrier}/{tracking_number}"
116661
- }
116662
- }
116663
- ]
116664
- });
116665
-
116666
116811
  // src/connectors/adapters/simpliroute.ts
116667
116812
  var simplirouteConnector = declarativeRestConnector({
116668
116813
  kind: "simpliroute",
@@ -123896,127 +124041,6 @@ var vlmRunConnector = declarativeRestConnector({
123896
124041
  ]
123897
124042
  });
123898
124043
 
123899
- // src/connectors/adapters/vouchery-io.ts
123900
- var voucheryIoConnector = declarativeRestConnector({
123901
- kind: "vouchery-io",
123902
- displayName: "Vouchery",
123903
- description: "Vouchery is a voucher and gift card management platform.",
123904
- auth: { kind: "api-key", hint: "Vouchery API key." },
123905
- category: "commerce",
123906
- defaultConsistencyModel: "authoritative",
123907
- baseUrl: "https://api.vouchery.io/api/v1.0",
123908
- test: { method: "GET", path: "/health" },
123909
- capabilities: [
123910
- {
123911
- name: "vouchers.find",
123912
- class: "read",
123913
- description: "Find a voucher by code.",
123914
- parameters: {
123915
- type: "object",
123916
- properties: { code: { type: "string" } },
123917
- required: ["code"]
123918
- },
123919
- request: { method: "GET", path: "/vouchers/{code}" }
123920
- },
123921
- {
123922
- name: "customers.create",
123923
- class: "mutation",
123924
- description: "Create a customer in Vouchery.",
123925
- parameters: {
123926
- type: "object",
123927
- properties: {
123928
- identifier: { type: "string" },
123929
- name: { type: "string" },
123930
- email: { type: "string" },
123931
- metadata: { type: "object" }
123932
- },
123933
- required: ["identifier"]
123934
- },
123935
- request: {
123936
- method: "POST",
123937
- path: "/customers",
123938
- body: {
123939
- identifier: "{identifier}",
123940
- name: "{name}",
123941
- email: "{email}",
123942
- metadata: "{metadata}"
123943
- }
123944
- },
123945
- cas: "native-idempotency"
123946
- },
123947
- {
123948
- name: "vouchers.create",
123949
- class: "mutation",
123950
- description: "Create a voucher (avoucher) in Vouchery.",
123951
- parameters: {
123952
- type: "object",
123953
- properties: {
123954
- code: { type: "string" },
123955
- value: { type: "number" },
123956
- expiresAt: { type: "string" },
123957
- customerId: { type: "string" }
123958
- },
123959
- required: ["code", "value"]
123960
- },
123961
- request: {
123962
- method: "POST",
123963
- path: "/vouchers",
123964
- body: {
123965
- code: "{code}",
123966
- value: "{value}",
123967
- expiresAt: "{expiresAt}",
123968
- customerId: "{customerId}"
123969
- }
123970
- },
123971
- cas: "native-idempotency"
123972
- },
123973
- {
123974
- name: "vouchers.redeem",
123975
- class: "mutation",
123976
- description: "Redeem a voucher by code. Optional customer_id attributes the redemption; optional amount partially redeems a value-bearing voucher.",
123977
- parameters: {
123978
- type: "object",
123979
- properties: {
123980
- code: { type: "string" },
123981
- customer_id: { type: "string" },
123982
- amount: { type: "number" }
123983
- },
123984
- required: ["code"]
123985
- },
123986
- request: {
123987
- method: "POST",
123988
- path: "/vouchers/{code}/redeem",
123989
- body: {
123990
- customer_id: "{customer_id}",
123991
- amount: "{amount}"
123992
- }
123993
- },
123994
- cas: "native-idempotency"
123995
- },
123996
- {
123997
- name: "vouchers.void",
123998
- class: "mutation",
123999
- description: "Void a voucher by code so it can no longer be redeemed. Optional reason is recorded with the void event.",
124000
- parameters: {
124001
- type: "object",
124002
- properties: {
124003
- code: { type: "string" },
124004
- reason: { type: "string" }
124005
- },
124006
- required: ["code"]
124007
- },
124008
- request: {
124009
- method: "POST",
124010
- path: "/vouchers/{code}/void",
124011
- body: {
124012
- reason: "{reason}"
124013
- }
124014
- },
124015
- cas: "native-idempotency"
124016
- }
124017
- ]
124018
- });
124019
-
124020
124044
  // src/connectors/adapters/vtex.ts
124021
124045
  var vtexConnector = declarativeRestConnector({
124022
124046
  kind: "vtex",
@@ -131238,6 +131262,7 @@ export {
131238
131262
  baremetricsConnector,
131239
131263
  brexConnector,
131240
131264
  billComConnector,
131265
+ billplzConnector,
131241
131266
  calComConnector,
131242
131267
  calendlyConnector,
131243
131268
  capsuleCrmConnector,
@@ -131249,6 +131274,7 @@ export {
131249
131274
  contentfulConnector,
131250
131275
  copperConnector,
131251
131276
  chargebeeConnector,
131277
+ cashfreePaymentsConnector,
131252
131278
  circleConnector,
131253
131279
  checkoutConnector,
131254
131280
  docuseal,
@@ -131303,6 +131329,7 @@ export {
131303
131329
  jotformConnector,
131304
131330
  justcallConnector,
131305
131331
  leadConnectorConnector,
131332
+ lemonSqueezyConnector,
131306
131333
  linearConnector,
131307
131334
  linkedinConnector,
131308
131335
  makeConnector,
@@ -131341,8 +131368,10 @@ export {
131341
131368
  ringcentralConnector,
131342
131369
  rssConnector,
131343
131370
  salesforceConnector,
131371
+ saleorConnector,
131344
131372
  savvycalConnector,
131345
131373
  sharepoint,
131374
+ shippoConnector,
131346
131375
  signNowConnector,
131347
131376
  slack,
131348
131377
  sageIntacctConnector,
@@ -131358,6 +131387,7 @@ export {
131358
131387
  twitterConnector,
131359
131388
  twitter,
131360
131389
  twilioSmsConnector,
131390
+ voucheryIoConnector,
131361
131391
  whatsappBusiness,
131362
131392
  xeroConnector,
131363
131393
  webflowConnector,
@@ -131487,7 +131517,6 @@ export {
131487
131517
  bettermodeConnector,
131488
131518
  blandAiConnector,
131489
131519
  bitlyConnector,
131490
- billplzConnector,
131491
131520
  bonjoroConnector,
131492
131521
  blueskyConnector,
131493
131522
  bolnaConnector,
@@ -131501,7 +131530,6 @@ export {
131501
131530
  certopusConnector,
131502
131531
  chainalysisApiConnector,
131503
131532
  cannyConnector,
131504
- cashfreePaymentsConnector,
131505
131533
  chargekeepConnector,
131506
131534
  chatlingConnector,
131507
131535
  chatbaseConnector,
@@ -131594,7 +131622,6 @@ export {
131594
131622
  kudosityConnector,
131595
131623
  leapAiConnector,
131596
131624
  kommoConnector,
131597
- lemonSqueezyConnector,
131598
131625
  leexiConnector,
131599
131626
  lettaConnector,
131600
131627
  linkupConnector,
@@ -131694,7 +131721,6 @@ export {
131694
131721
  robollyConnector,
131695
131722
  runwareConnector,
131696
131723
  saasticConnector,
131697
- saleorConnector,
131698
131724
  sardisConnector,
131699
131725
  scrapegraphaiConnector,
131700
131726
  scrapelessConnector,
@@ -131706,7 +131732,6 @@ export {
131706
131732
  serviceNowConnector,
131707
131733
  signrequestConnector,
131708
131734
  shortIoConnector,
131709
- shippoConnector,
131710
131735
  simplirouteConnector,
131711
131736
  simplybookmeConnector,
131712
131737
  smartsheetConnector,
@@ -131741,7 +131766,6 @@ export {
131741
131766
  vidlab7Connector,
131742
131767
  videoaskConnector,
131743
131768
  vlmRunConnector,
131744
- voucheryIoConnector,
131745
131769
  vtexConnector,
131746
131770
  vtigerConnector,
131747
131771
  wafeqConnector,
@@ -131791,4 +131815,4 @@ export {
131791
131815
  demandbaseConnector,
131792
131816
  adapters_exports
131793
131817
  };
131794
- //# sourceMappingURL=chunk-35JYHZYE.js.map
131818
+ //# sourceMappingURL=chunk-ERP5XK6N.js.map