kintsugi_sdk 5.5.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.
- checksums.yaml +7 -0
- data/lib/crystalline/metadata_fields.rb +209 -0
- data/lib/crystalline/module.rb +92 -0
- data/lib/crystalline/types.rb +78 -0
- data/lib/crystalline/utils.rb +56 -0
- data/lib/crystalline.rb +13 -0
- data/lib/kintsugi_sdk/addressvalidation.rb +350 -0
- data/lib/kintsugi_sdk/customers.rb +981 -0
- data/lib/kintsugi_sdk/exemptions.rb +779 -0
- data/lib/kintsugi_sdk/models/callbacks.rb +12 -0
- data/lib/kintsugi_sdk/models/errors/apierror.rb +37 -0
- data/lib/kintsugi_sdk/models/errors/apierror.rbi +16 -0
- data/lib/kintsugi_sdk/models/errors/backend_src_address_validation_responses_validationerrorresponse.rb +33 -0
- data/lib/kintsugi_sdk/models/errors/backend_src_address_validation_responses_validationerrorresponse.rbi +13 -0
- data/lib/kintsugi_sdk/models/errors/backend_src_customers_responses_validationerrorresponse.rb +33 -0
- data/lib/kintsugi_sdk/models/errors/backend_src_customers_responses_validationerrorresponse.rbi +13 -0
- data/lib/kintsugi_sdk/models/errors/backend_src_exemptions_responses_validationerrorresponse.rb +33 -0
- data/lib/kintsugi_sdk/models/errors/backend_src_exemptions_responses_validationerrorresponse.rbi +13 -0
- data/lib/kintsugi_sdk/models/errors/backend_src_products_responses_validationerrorresponse.rb +33 -0
- data/lib/kintsugi_sdk/models/errors/backend_src_products_responses_validationerrorresponse.rbi +13 -0
- data/lib/kintsugi_sdk/models/errors/backend_src_tax_estimation_responses_validationerrorresponse.rb +33 -0
- data/lib/kintsugi_sdk/models/errors/backend_src_tax_estimation_responses_validationerrorresponse.rbi +13 -0
- data/lib/kintsugi_sdk/models/errors/backend_src_transactions_responses_validationerrorresponse.rb +33 -0
- data/lib/kintsugi_sdk/models/errors/backend_src_transactions_responses_validationerrorresponse.rbi +13 -0
- data/lib/kintsugi_sdk/models/errors/errorresponse.rb +33 -0
- data/lib/kintsugi_sdk/models/errors/errorresponse.rbi +13 -0
- data/lib/kintsugi_sdk/models/errors/httpvalidationerror.rb +33 -0
- data/lib/kintsugi_sdk/models/errors/httpvalidationerror.rbi +13 -0
- data/lib/kintsugi_sdk/models/errors.rb +20 -0
- data/lib/kintsugi_sdk/models/ops/createtransactionbycustomer_request.rb +37 -0
- data/lib/kintsugi_sdk/models/ops/createtransactionbycustomer_request.rbi +15 -0
- data/lib/kintsugi_sdk/models/ops/estimate_tax_v1_tax_estimate_post_request.rb +39 -0
- data/lib/kintsugi_sdk/models/ops/estimate_tax_v1_tax_estimate_post_request.rbi +15 -0
- data/lib/kintsugi_sdk/models/ops/get_customer_by_external_id_v1_customers_external_external_id_get_request.rb +33 -0
- data/lib/kintsugi_sdk/models/ops/get_customer_by_external_id_v1_customers_external_external_id_get_request.rbi +13 -0
- data/lib/kintsugi_sdk/models/ops/get_customer_by_id_v1_customers_customer_id_get_request.rb +33 -0
- data/lib/kintsugi_sdk/models/ops/get_customer_by_id_v1_customers_customer_id_get_request.rbi +13 -0
- data/lib/kintsugi_sdk/models/ops/get_customers_v1_request.rb +57 -0
- data/lib/kintsugi_sdk/models/ops/get_customers_v1_request.rbi +25 -0
- data/lib/kintsugi_sdk/models/ops/get_exemption_by_id_v1_exemptions_exemption_id_get_request.rb +33 -0
- data/lib/kintsugi_sdk/models/ops/get_exemption_by_id_v1_exemptions_exemption_id_get_request.rbi +13 -0
- data/lib/kintsugi_sdk/models/ops/get_exemptions_v1_exemptions_get_request.rb +73 -0
- data/lib/kintsugi_sdk/models/ops/get_exemptions_v1_exemptions_get_request.rbi +33 -0
- data/lib/kintsugi_sdk/models/ops/get_nexus_for_org_v1_nexus_get_request.rb +57 -0
- data/lib/kintsugi_sdk/models/ops/get_nexus_for_org_v1_nexus_get_request.rbi +25 -0
- data/lib/kintsugi_sdk/models/ops/get_product_by_id_v1_products_product_id_get_request.rb +33 -0
- data/lib/kintsugi_sdk/models/ops/get_product_by_id_v1_products_product_id_get_request.rbi +13 -0
- data/lib/kintsugi_sdk/models/ops/get_products_v1_products_get_request.rb +61 -0
- data/lib/kintsugi_sdk/models/ops/get_products_v1_products_get_request.rbi +27 -0
- data/lib/kintsugi_sdk/models/ops/get_transaction_by_id_v1_transactions_transaction_id_get_request.rb +33 -0
- data/lib/kintsugi_sdk/models/ops/get_transaction_by_id_v1_transactions_transaction_id_get_request.rbi +13 -0
- data/lib/kintsugi_sdk/models/ops/get_transactions_v1_transactions_get_request.rb +107 -0
- data/lib/kintsugi_sdk/models/ops/get_transactions_v1_transactions_get_request.rbi +45 -0
- data/lib/kintsugi_sdk/models/ops/getexemptionattachments_request.rb +34 -0
- data/lib/kintsugi_sdk/models/ops/getexemptionattachments_request.rbi +13 -0
- data/lib/kintsugi_sdk/models/ops/gettransactionbyexternalid_request.rb +33 -0
- data/lib/kintsugi_sdk/models/ops/gettransactionbyexternalid_request.rbi +13 -0
- data/lib/kintsugi_sdk/models/ops/gettransactionsbycustomer_request.rb +33 -0
- data/lib/kintsugi_sdk/models/ops/gettransactionsbycustomer_request.rbi +13 -0
- data/lib/kintsugi_sdk/models/ops/gettransactionsbyfiling_request.rb +35 -0
- data/lib/kintsugi_sdk/models/ops/gettransactionsbyfiling_request.rbi +13 -0
- data/lib/kintsugi_sdk/models/ops/search_v1_address_validation_search_post_security.rb +33 -0
- data/lib/kintsugi_sdk/models/ops/search_v1_address_validation_search_post_security.rbi +13 -0
- data/lib/kintsugi_sdk/models/ops/update_customer_v1_customers_customer_id_put_request.rb +37 -0
- data/lib/kintsugi_sdk/models/ops/update_customer_v1_customers_customer_id_put_request.rbi +15 -0
- data/lib/kintsugi_sdk/models/ops/update_product_v1_products_product_id_put_request.rb +37 -0
- data/lib/kintsugi_sdk/models/ops/update_product_v1_products_product_id_put_request.rbi +15 -0
- data/lib/kintsugi_sdk/models/ops/update_transaction_v1_transactions_transaction_id_put_request.rb +37 -0
- data/lib/kintsugi_sdk/models/ops/update_transaction_v1_transactions_transaction_id_put_request.rbi +15 -0
- data/lib/kintsugi_sdk/models/ops/uploadexemptioncert_request.rb +37 -0
- data/lib/kintsugi_sdk/models/ops/uploadexemptioncert_request.rbi +15 -0
- data/lib/kintsugi_sdk/models/ops.rb +32 -0
- data/lib/kintsugi_sdk/models/shared/addressbase.rb +65 -0
- data/lib/kintsugi_sdk/models/shared/addressbase.rbi +29 -0
- data/lib/kintsugi_sdk/models/shared/addresses.rb +76 -0
- data/lib/kintsugi_sdk/models/shared/addresses.rbi +33 -0
- data/lib/kintsugi_sdk/models/shared/addressresponsedata.rb +61 -0
- data/lib/kintsugi_sdk/models/shared/addressresponsedata.rbi +27 -0
- data/lib/kintsugi_sdk/models/shared/addresssearchresponse.rb +45 -0
- data/lib/kintsugi_sdk/models/shared/addresssearchresponse.rbi +19 -0
- data/lib/kintsugi_sdk/models/shared/addressstatus.rb +26 -0
- data/lib/kintsugi_sdk/models/shared/addressstatus.rbi +11 -0
- data/lib/kintsugi_sdk/models/shared/addresssubmittedresponse.rb +61 -0
- data/lib/kintsugi_sdk/models/shared/addresssubmittedresponse.rbi +27 -0
- data/lib/kintsugi_sdk/models/shared/addresstype.rb +24 -0
- data/lib/kintsugi_sdk/models/shared/addresstype.rbi +11 -0
- data/lib/kintsugi_sdk/models/shared/appliedto.rb +22 -0
- data/lib/kintsugi_sdk/models/shared/appliedto.rbi +11 -0
- data/lib/kintsugi_sdk/models/shared/attachmentread.rb +42 -0
- data/lib/kintsugi_sdk/models/shared/attachmentread.rbi +17 -0
- data/lib/kintsugi_sdk/models/shared/backend_src_address_validation_responses_validationerroritem.rb +49 -0
- data/lib/kintsugi_sdk/models/shared/backend_src_address_validation_responses_validationerroritem.rbi +21 -0
- data/lib/kintsugi_sdk/models/shared/backend_src_customers_responses_validationerroritem.rb +49 -0
- data/lib/kintsugi_sdk/models/shared/backend_src_customers_responses_validationerroritem.rbi +21 -0
- data/lib/kintsugi_sdk/models/shared/backend_src_exemptions_models_exemptionread.rb +87 -0
- data/lib/kintsugi_sdk/models/shared/backend_src_exemptions_models_exemptionread.rbi +39 -0
- data/lib/kintsugi_sdk/models/shared/backend_src_exemptions_responses_validationerroritem.rb +50 -0
- data/lib/kintsugi_sdk/models/shared/backend_src_exemptions_responses_validationerroritem.rbi +21 -0
- data/lib/kintsugi_sdk/models/shared/backend_src_exemptions_serializers_exemptionread.rb +81 -0
- data/lib/kintsugi_sdk/models/shared/backend_src_exemptions_serializers_exemptionread.rbi +37 -0
- data/lib/kintsugi_sdk/models/shared/backend_src_products_responses_validationerroritem.rb +50 -0
- data/lib/kintsugi_sdk/models/shared/backend_src_products_responses_validationerroritem.rbi +21 -0
- data/lib/kintsugi_sdk/models/shared/backend_src_tax_estimation_responses_validationerroritem.rb +49 -0
- data/lib/kintsugi_sdk/models/shared/backend_src_tax_estimation_responses_validationerroritem.rbi +21 -0
- data/lib/kintsugi_sdk/models/shared/backend_src_transactions_responses_validationerroritem.rb +50 -0
- data/lib/kintsugi_sdk/models/shared/backend_src_transactions_responses_validationerroritem.rbi +21 -0
- data/lib/kintsugi_sdk/models/shared/body_upload_exemption_certificate_v1_exemptions_exemption_id_attachments_post.rb +33 -0
- data/lib/kintsugi_sdk/models/shared/body_upload_exemption_certificate_v1_exemptions_exemption_id_attachments_post.rbi +13 -0
- data/lib/kintsugi_sdk/models/shared/countrycodeenum.rb +270 -0
- data/lib/kintsugi_sdk/models/shared/countrycodeenum.rbi +11 -0
- data/lib/kintsugi_sdk/models/shared/currencyenum.rb +182 -0
- data/lib/kintsugi_sdk/models/shared/currencyenum.rbi +11 -0
- data/lib/kintsugi_sdk/models/shared/customerbase.rb +97 -0
- data/lib/kintsugi_sdk/models/shared/customerbase.rbi +45 -0
- data/lib/kintsugi_sdk/models/shared/customerbasebase.rb +109 -0
- data/lib/kintsugi_sdk/models/shared/customerbasebase.rbi +51 -0
- data/lib/kintsugi_sdk/models/shared/customerbasepublic.rb +97 -0
- data/lib/kintsugi_sdk/models/shared/customerbasepublic.rbi +45 -0
- data/lib/kintsugi_sdk/models/shared/customercreate.rb +97 -0
- data/lib/kintsugi_sdk/models/shared/customercreate.rbi +45 -0
- data/lib/kintsugi_sdk/models/shared/customerread.rb +105 -0
- data/lib/kintsugi_sdk/models/shared/customerread.rbi +49 -0
- data/lib/kintsugi_sdk/models/shared/customerupdate.rb +89 -0
- data/lib/kintsugi_sdk/models/shared/customerupdate.rbi +41 -0
- data/lib/kintsugi_sdk/models/shared/discountbuilder.rb +41 -0
- data/lib/kintsugi_sdk/models/shared/discountbuilder.rbi +17 -0
- data/lib/kintsugi_sdk/models/shared/exemption.rb +91 -0
- data/lib/kintsugi_sdk/models/shared/exemption.rbi +41 -0
- data/lib/kintsugi_sdk/models/shared/exemptioncreate.rb +73 -0
- data/lib/kintsugi_sdk/models/shared/exemptioncreate.rbi +33 -0
- data/lib/kintsugi_sdk/models/shared/exemptionrequired.rb +57 -0
- data/lib/kintsugi_sdk/models/shared/exemptionrequired.rbi +25 -0
- data/lib/kintsugi_sdk/models/shared/exemptionstatus.rb +25 -0
- data/lib/kintsugi_sdk/models/shared/exemptionstatus.rbi +11 -0
- data/lib/kintsugi_sdk/models/shared/exemptiontype.rb +23 -0
- data/lib/kintsugi_sdk/models/shared/exemptiontype.rbi +11 -0
- data/lib/kintsugi_sdk/models/shared/fastapi_pagination_default_page_exemptionread_2.rb +49 -0
- data/lib/kintsugi_sdk/models/shared/fastapi_pagination_default_page_exemptionread_2.rbi +21 -0
- data/lib/kintsugi_sdk/models/shared/file.rb +37 -0
- data/lib/kintsugi_sdk/models/shared/file.rbi +15 -0
- data/lib/kintsugi_sdk/models/shared/jurisdictiontype.rb +28 -0
- data/lib/kintsugi_sdk/models/shared/jurisdictiontype.rbi +11 -0
- data/lib/kintsugi_sdk/models/shared/nexusresponse.rb +253 -0
- data/lib/kintsugi_sdk/models/shared/nexusresponse.rbi +121 -0
- data/lib/kintsugi_sdk/models/shared/nexusstateenum.rb +27 -0
- data/lib/kintsugi_sdk/models/shared/nexusstateenum.rbi +11 -0
- data/lib/kintsugi_sdk/models/shared/nexusstatusenum.rb +23 -0
- data/lib/kintsugi_sdk/models/shared/nexusstatusenum.rbi +11 -0
- data/lib/kintsugi_sdk/models/shared/nexustypeenum.rb +24 -0
- data/lib/kintsugi_sdk/models/shared/nexustypeenum.rbi +11 -0
- data/lib/kintsugi_sdk/models/shared/page_customerread_.rb +49 -0
- data/lib/kintsugi_sdk/models/shared/page_customerread_.rbi +21 -0
- data/lib/kintsugi_sdk/models/shared/page_nexusresponse_.rb +49 -0
- data/lib/kintsugi_sdk/models/shared/page_nexusresponse_.rbi +21 -0
- data/lib/kintsugi_sdk/models/shared/page_productread_.rb +49 -0
- data/lib/kintsugi_sdk/models/shared/page_productread_.rbi +21 -0
- data/lib/kintsugi_sdk/models/shared/page_transactionestimateresponse_.rb +49 -0
- data/lib/kintsugi_sdk/models/shared/page_transactionestimateresponse_.rbi +21 -0
- data/lib/kintsugi_sdk/models/shared/page_transactionread_.rb +49 -0
- data/lib/kintsugi_sdk/models/shared/page_transactionread_.rbi +21 -0
- data/lib/kintsugi_sdk/models/shared/periodmodelenum.rb +29 -0
- data/lib/kintsugi_sdk/models/shared/periodmodelenum.rbi +11 -0
- data/lib/kintsugi_sdk/models/shared/processingstatusenum.rb +34 -0
- data/lib/kintsugi_sdk/models/shared/processingstatusenum.rbi +11 -0
- data/lib/kintsugi_sdk/models/shared/productcategories.rb +38 -0
- data/lib/kintsugi_sdk/models/shared/productcategories.rbi +15 -0
- data/lib/kintsugi_sdk/models/shared/productcategoryenum.rb +25 -0
- data/lib/kintsugi_sdk/models/shared/productcategoryenum.rbi +11 -0
- data/lib/kintsugi_sdk/models/shared/productcodeenum.rb +82 -0
- data/lib/kintsugi_sdk/models/shared/productcodeenum.rbi +11 -0
- data/lib/kintsugi_sdk/models/shared/productcreatemanual.rb +61 -0
- data/lib/kintsugi_sdk/models/shared/productcreatemanual.rbi +27 -0
- data/lib/kintsugi_sdk/models/shared/productread.rb +81 -0
- data/lib/kintsugi_sdk/models/shared/productread.rbi +37 -0
- data/lib/kintsugi_sdk/models/shared/productstatusenum.rb +23 -0
- data/lib/kintsugi_sdk/models/shared/productstatusenum.rbi +11 -0
- data/lib/kintsugi_sdk/models/shared/productsubcategory.rb +46 -0
- data/lib/kintsugi_sdk/models/shared/productsubcategory.rbi +19 -0
- data/lib/kintsugi_sdk/models/shared/productsubcategoryenum.rb +83 -0
- data/lib/kintsugi_sdk/models/shared/productsubcategoryenum.rbi +11 -0
- data/lib/kintsugi_sdk/models/shared/productupdate.rb +70 -0
- data/lib/kintsugi_sdk/models/shared/productupdate.rbi +31 -0
- data/lib/kintsugi_sdk/models/shared/registration.rb +28 -0
- data/lib/kintsugi_sdk/models/shared/registration.rbi +11 -0
- data/lib/kintsugi_sdk/models/shared/registrationsregimeenum.rb +22 -0
- data/lib/kintsugi_sdk/models/shared/registrationsregimeenum.rbi +11 -0
- data/lib/kintsugi_sdk/models/shared/relatedentitytype.rb +24 -0
- data/lib/kintsugi_sdk/models/shared/relatedentitytype.rbi +11 -0
- data/lib/kintsugi_sdk/models/shared/salesortransactionsenum.rb +24 -0
- data/lib/kintsugi_sdk/models/shared/salesortransactionsenum.rbi +11 -0
- data/lib/kintsugi_sdk/models/shared/security.rb +37 -0
- data/lib/kintsugi_sdk/models/shared/security.rbi +15 -0
- data/lib/kintsugi_sdk/models/shared/sourceenum.rb +70 -0
- data/lib/kintsugi_sdk/models/shared/sourceenum.rbi +11 -0
- data/lib/kintsugi_sdk/models/shared/statusenum.rb +22 -0
- data/lib/kintsugi_sdk/models/shared/statusenum.rbi +11 -0
- data/lib/kintsugi_sdk/models/shared/taxexemptionenum.rb +31 -0
- data/lib/kintsugi_sdk/models/shared/taxexemptionenum.rbi +11 -0
- data/lib/kintsugi_sdk/models/shared/taxitembuilder.rb +77 -0
- data/lib/kintsugi_sdk/models/shared/taxitembuilder.rbi +35 -0
- data/lib/kintsugi_sdk/models/shared/taxitemestimate.rb +53 -0
- data/lib/kintsugi_sdk/models/shared/taxitemestimate.rbi +23 -0
- data/lib/kintsugi_sdk/models/shared/taxitemread.rb +73 -0
- data/lib/kintsugi_sdk/models/shared/taxitemread.rbi +33 -0
- data/lib/kintsugi_sdk/models/shared/taxitemreturnreasonenum.rb +25 -0
- data/lib/kintsugi_sdk/models/shared/taxitemreturnreasonenum.rbi +11 -0
- data/lib/kintsugi_sdk/models/shared/taxitemtypeenum.rb +23 -0
- data/lib/kintsugi_sdk/models/shared/taxitemtypeenum.rbi +11 -0
- data/lib/kintsugi_sdk/models/shared/taxliabilitysourceenum.rb +22 -0
- data/lib/kintsugi_sdk/models/shared/taxliabilitysourceenum.rbi +11 -0
- data/lib/kintsugi_sdk/models/shared/transactionaddressbuilder.rb +81 -0
- data/lib/kintsugi_sdk/models/shared/transactionaddressbuilder.rbi +37 -0
- data/lib/kintsugi_sdk/models/shared/transactionaddresspublic.rb +69 -0
- data/lib/kintsugi_sdk/models/shared/transactionaddresspublic.rbi +31 -0
- data/lib/kintsugi_sdk/models/shared/transactionaddressread_output.rb +85 -0
- data/lib/kintsugi_sdk/models/shared/transactionaddressread_output.rbi +39 -0
- data/lib/kintsugi_sdk/models/shared/transactioncreate.rb +235 -0
- data/lib/kintsugi_sdk/models/shared/transactioncreate.rbi +111 -0
- data/lib/kintsugi_sdk/models/shared/transactionestimatepublicrequest.rb +70 -0
- data/lib/kintsugi_sdk/models/shared/transactionestimatepublicrequest.rbi +31 -0
- data/lib/kintsugi_sdk/models/shared/transactionestimateresponse.rb +91 -0
- data/lib/kintsugi_sdk/models/shared/transactionestimateresponse.rbi +41 -0
- data/lib/kintsugi_sdk/models/shared/transactionestimateresponse_addresses.rb +80 -0
- data/lib/kintsugi_sdk/models/shared/transactionestimateresponse_addresses.rbi +35 -0
- data/lib/kintsugi_sdk/models/shared/transactionestimateresponse_type.rb +23 -0
- data/lib/kintsugi_sdk/models/shared/transactionestimateresponse_type.rbi +11 -0
- data/lib/kintsugi_sdk/models/shared/transactionexemptstatusenum.rb +26 -0
- data/lib/kintsugi_sdk/models/shared/transactionexemptstatusenum.rbi +11 -0
- data/lib/kintsugi_sdk/models/shared/transactionitembuilder.rb +141 -0
- data/lib/kintsugi_sdk/models/shared/transactionitembuilder.rbi +67 -0
- data/lib/kintsugi_sdk/models/shared/transactionitemcreateupdate.rb +141 -0
- data/lib/kintsugi_sdk/models/shared/transactionitemcreateupdate.rbi +67 -0
- data/lib/kintsugi_sdk/models/shared/transactionitemestimatebase.rb +78 -0
- data/lib/kintsugi_sdk/models/shared/transactionitemestimatebase.rbi +35 -0
- data/lib/kintsugi_sdk/models/shared/transactionitemestimateresponse.rb +98 -0
- data/lib/kintsugi_sdk/models/shared/transactionitemestimateresponse.rbi +45 -0
- data/lib/kintsugi_sdk/models/shared/transactionitemread.rb +149 -0
- data/lib/kintsugi_sdk/models/shared/transactionitemread.rbi +71 -0
- data/lib/kintsugi_sdk/models/shared/transactionpublicrequest.rb +194 -0
- data/lib/kintsugi_sdk/models/shared/transactionpublicrequest.rbi +91 -0
- data/lib/kintsugi_sdk/models/shared/transactionread.rb +259 -0
- data/lib/kintsugi_sdk/models/shared/transactionread.rbi +123 -0
- data/lib/kintsugi_sdk/models/shared/transactionrefundstatus.rb +24 -0
- data/lib/kintsugi_sdk/models/shared/transactionrefundstatus.rbi +11 -0
- data/lib/kintsugi_sdk/models/shared/transactionstatusenum.rb +27 -0
- data/lib/kintsugi_sdk/models/shared/transactionstatusenum.rbi +11 -0
- data/lib/kintsugi_sdk/models/shared/transactiontypeenum.rb +25 -0
- data/lib/kintsugi_sdk/models/shared/transactiontypeenum.rbi +11 -0
- data/lib/kintsugi_sdk/models/shared/transactionupdate.rb +235 -0
- data/lib/kintsugi_sdk/models/shared/transactionupdate.rbi +111 -0
- data/lib/kintsugi_sdk/models/shared/treatmentenum.rb +25 -0
- data/lib/kintsugi_sdk/models/shared/treatmentenum.rbi +11 -0
- data/lib/kintsugi_sdk/models/shared/type.rb +23 -0
- data/lib/kintsugi_sdk/models/shared/type.rbi +11 -0
- data/lib/kintsugi_sdk/models/shared/validationaddress.rb +73 -0
- data/lib/kintsugi_sdk/models/shared/validationaddress.rbi +31 -0
- data/lib/kintsugi_sdk/models/shared/validationerror.rb +41 -0
- data/lib/kintsugi_sdk/models/shared/validationerror.rbi +17 -0
- data/lib/kintsugi_sdk/models/shared.rb +104 -0
- data/lib/kintsugi_sdk/nexus.rb +155 -0
- data/lib/kintsugi_sdk/openapisdk.rb +104 -0
- data/lib/kintsugi_sdk/products.rb +756 -0
- data/lib/kintsugi_sdk/sdk_hooks/hooks.rb +95 -0
- data/lib/kintsugi_sdk/sdk_hooks/types.rb +170 -0
- data/lib/kintsugi_sdk/sdkconfiguration.rb +104 -0
- data/lib/kintsugi_sdk/sdkconfiguration.rbi +57 -0
- data/lib/kintsugi_sdk/taxestimation.rb +197 -0
- data/lib/kintsugi_sdk/transactions.rb +902 -0
- data/lib/kintsugi_sdk/utils/forms.rb +206 -0
- data/lib/kintsugi_sdk/utils/headers.rb +77 -0
- data/lib/kintsugi_sdk/utils/query_params.rb +131 -0
- data/lib/kintsugi_sdk/utils/request_bodies.rb +61 -0
- data/lib/kintsugi_sdk/utils/retries.rb +95 -0
- data/lib/kintsugi_sdk/utils/security.rb +130 -0
- data/lib/kintsugi_sdk/utils/url.rb +100 -0
- data/lib/kintsugi_sdk/utils/utils.rb +187 -0
- data/lib/kintsugi_sdk.rb +31 -0
- metadata +492 -0
@@ -0,0 +1,89 @@
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
2
|
+
|
3
|
+
# typed: true
|
4
|
+
# frozen_string_literal: true
|
5
|
+
|
6
|
+
|
7
|
+
module KintsugiSDK
|
8
|
+
module Models
|
9
|
+
module Shared
|
10
|
+
|
11
|
+
|
12
|
+
class CustomerUpdate
|
13
|
+
extend T::Sig
|
14
|
+
include Crystalline::MetadataFields
|
15
|
+
|
16
|
+
# Phone number associated with the customer.
|
17
|
+
field :phone, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('phone') } }
|
18
|
+
# Primary street address.
|
19
|
+
field :street_1, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('street_1') } }
|
20
|
+
# Additional street address details, such as an apartment or suite number.
|
21
|
+
field :street_2, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('street_2') } }
|
22
|
+
# City where the customer resides.
|
23
|
+
field :city, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('city') } }
|
24
|
+
# County or district of the customer.
|
25
|
+
field :county, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('county') } }
|
26
|
+
# State or province of the customer.
|
27
|
+
field :state, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('state') } }
|
28
|
+
# ZIP or Postal code of the customer.
|
29
|
+
field :postal_code, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('postal_code') } }
|
30
|
+
|
31
|
+
field :country, Crystalline::Nilable.new(Models::Shared::CountryCodeEnum), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('country'), 'decoder': Utils.enum_from_string(Models::Shared::CountryCodeEnum, true) } }
|
32
|
+
# Complete address string of the customer, which can be used as an alternative to individual fields.
|
33
|
+
field :full_address, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('full_address') } }
|
34
|
+
# Name of the customer.
|
35
|
+
field :name, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('name') } }
|
36
|
+
|
37
|
+
field :status, Crystalline::Nilable.new(Models::Shared::StatusEnum), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('status'), 'decoder': Utils.enum_from_string(Models::Shared::StatusEnum, true) } }
|
38
|
+
# Email address of the customer.
|
39
|
+
field :email, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('email') } }
|
40
|
+
|
41
|
+
field :source, Crystalline::Nilable.new(Models::Shared::SourceEnum), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('source'), 'decoder': Utils.enum_from_string(Models::Shared::SourceEnum, true) } }
|
42
|
+
|
43
|
+
field :address_status, Crystalline::Nilable.new(Models::Shared::AddressStatus), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('address_status'), 'decoder': Utils.enum_from_string(Models::Shared::AddressStatus, true) } }
|
44
|
+
# External identifier associated with the customer
|
45
|
+
field :external_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('external_id') } }
|
46
|
+
|
47
|
+
sig { params(phone: T.nilable(::String), street_1: T.nilable(::String), street_2: T.nilable(::String), city: T.nilable(::String), county: T.nilable(::String), state: T.nilable(::String), postal_code: T.nilable(::String), country: T.nilable(Models::Shared::CountryCodeEnum), full_address: T.nilable(::String), name: T.nilable(::String), status: T.nilable(Models::Shared::StatusEnum), email: T.nilable(::String), source: T.nilable(Models::Shared::SourceEnum), address_status: T.nilable(Models::Shared::AddressStatus), external_id: T.nilable(::String)).void }
|
48
|
+
def initialize(phone: nil, street_1: nil, street_2: nil, city: nil, county: nil, state: nil, postal_code: nil, country: nil, full_address: nil, name: nil, status: nil, email: nil, source: nil, address_status: nil, external_id: nil)
|
49
|
+
@phone = phone
|
50
|
+
@street_1 = street_1
|
51
|
+
@street_2 = street_2
|
52
|
+
@city = city
|
53
|
+
@county = county
|
54
|
+
@state = state
|
55
|
+
@postal_code = postal_code
|
56
|
+
@country = country
|
57
|
+
@full_address = full_address
|
58
|
+
@name = name
|
59
|
+
@status = status
|
60
|
+
@email = email
|
61
|
+
@source = source
|
62
|
+
@address_status = address_status
|
63
|
+
@external_id = external_id
|
64
|
+
end
|
65
|
+
|
66
|
+
sig { params(other: T.untyped).returns(T::Boolean) }
|
67
|
+
def ==(other)
|
68
|
+
return false unless other.is_a? self.class
|
69
|
+
return false unless @phone == other.phone
|
70
|
+
return false unless @street_1 == other.street_1
|
71
|
+
return false unless @street_2 == other.street_2
|
72
|
+
return false unless @city == other.city
|
73
|
+
return false unless @county == other.county
|
74
|
+
return false unless @state == other.state
|
75
|
+
return false unless @postal_code == other.postal_code
|
76
|
+
return false unless @country == other.country
|
77
|
+
return false unless @full_address == other.full_address
|
78
|
+
return false unless @name == other.name
|
79
|
+
return false unless @status == other.status
|
80
|
+
return false unless @email == other.email
|
81
|
+
return false unless @source == other.source
|
82
|
+
return false unless @address_status == other.address_status
|
83
|
+
return false unless @external_id == other.external_id
|
84
|
+
true
|
85
|
+
end
|
86
|
+
end
|
87
|
+
end
|
88
|
+
end
|
89
|
+
end
|
@@ -0,0 +1,41 @@
|
|
1
|
+
# typed: true
|
2
|
+
# frozen_string_literal: true
|
3
|
+
|
4
|
+
|
5
|
+
class KintsugiSDK::Models::Shared::CustomerUpdate
|
6
|
+
extend ::Crystalline::MetadataFields::ClassMethods
|
7
|
+
end
|
8
|
+
|
9
|
+
|
10
|
+
class KintsugiSDK::Models::Shared::CustomerUpdate
|
11
|
+
def phone(); end
|
12
|
+
def phone=(str_); end
|
13
|
+
def street_1(); end
|
14
|
+
def street_1=(str_); end
|
15
|
+
def street_2(); end
|
16
|
+
def street_2=(str_); end
|
17
|
+
def city(); end
|
18
|
+
def city=(str_); end
|
19
|
+
def county(); end
|
20
|
+
def county=(str_); end
|
21
|
+
def state(); end
|
22
|
+
def state=(str_); end
|
23
|
+
def postal_code(); end
|
24
|
+
def postal_code=(str_); end
|
25
|
+
def country(); end
|
26
|
+
def country=(str_); end
|
27
|
+
def full_address(); end
|
28
|
+
def full_address=(str_); end
|
29
|
+
def name(); end
|
30
|
+
def name=(str_); end
|
31
|
+
def status(); end
|
32
|
+
def status=(str_); end
|
33
|
+
def email(); end
|
34
|
+
def email=(str_); end
|
35
|
+
def source(); end
|
36
|
+
def source=(str_); end
|
37
|
+
def address_status(); end
|
38
|
+
def address_status=(str_); end
|
39
|
+
def external_id(); end
|
40
|
+
def external_id=(str_); end
|
41
|
+
end
|
@@ -0,0 +1,41 @@
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
2
|
+
|
3
|
+
# typed: true
|
4
|
+
# frozen_string_literal: true
|
5
|
+
|
6
|
+
|
7
|
+
module KintsugiSDK
|
8
|
+
module Models
|
9
|
+
module Shared
|
10
|
+
|
11
|
+
|
12
|
+
class DiscountBuilder
|
13
|
+
extend T::Sig
|
14
|
+
include Crystalline::MetadataFields
|
15
|
+
|
16
|
+
|
17
|
+
field :applied_to, Models::Shared::AppliedTo, { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('applied_to'), required: true, 'decoder': Utils.enum_from_string(Models::Shared::AppliedTo, false) } }
|
18
|
+
|
19
|
+
field :external_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('external_id') } }
|
20
|
+
|
21
|
+
field :discount_amount, Crystalline::Nilable.new(::Float), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('discount_amount') } }
|
22
|
+
|
23
|
+
sig { params(applied_to: Models::Shared::AppliedTo, external_id: T.nilable(::String), discount_amount: T.nilable(::Float)).void }
|
24
|
+
def initialize(applied_to:, external_id: nil, discount_amount: 0.00)
|
25
|
+
@applied_to = applied_to
|
26
|
+
@external_id = external_id
|
27
|
+
@discount_amount = discount_amount
|
28
|
+
end
|
29
|
+
|
30
|
+
sig { params(other: T.untyped).returns(T::Boolean) }
|
31
|
+
def ==(other)
|
32
|
+
return false unless other.is_a? self.class
|
33
|
+
return false unless @applied_to == other.applied_to
|
34
|
+
return false unless @external_id == other.external_id
|
35
|
+
return false unless @discount_amount == other.discount_amount
|
36
|
+
true
|
37
|
+
end
|
38
|
+
end
|
39
|
+
end
|
40
|
+
end
|
41
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
# typed: true
|
2
|
+
# frozen_string_literal: true
|
3
|
+
|
4
|
+
|
5
|
+
class KintsugiSDK::Models::Shared::DiscountBuilder
|
6
|
+
extend ::Crystalline::MetadataFields::ClassMethods
|
7
|
+
end
|
8
|
+
|
9
|
+
|
10
|
+
class KintsugiSDK::Models::Shared::DiscountBuilder
|
11
|
+
def applied_to(); end
|
12
|
+
def applied_to=(str_); end
|
13
|
+
def external_id(); end
|
14
|
+
def external_id=(str_); end
|
15
|
+
def discount_amount(); end
|
16
|
+
def discount_amount=(str_); end
|
17
|
+
end
|
@@ -0,0 +1,91 @@
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
2
|
+
|
3
|
+
# typed: true
|
4
|
+
# frozen_string_literal: true
|
5
|
+
|
6
|
+
|
7
|
+
module KintsugiSDK
|
8
|
+
module Models
|
9
|
+
module Shared
|
10
|
+
|
11
|
+
|
12
|
+
class Exemption
|
13
|
+
extend T::Sig
|
14
|
+
include Crystalline::MetadataFields
|
15
|
+
|
16
|
+
|
17
|
+
field :exemption_type, Models::Shared::ExemptionType, { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('exemption_type'), required: true, 'decoder': Utils.enum_from_string(Models::Shared::ExemptionType, false) } }
|
18
|
+
# Start date for the exemption validity period (YYYY-MM-DD format)
|
19
|
+
field :start_date, ::Date, { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('start_date'), required: true, 'decoder': Utils.date_from_iso_format(false) } }
|
20
|
+
# Unique identifier for the exemption
|
21
|
+
field :id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('id') } }
|
22
|
+
# Timestamp when transaction was created in Kintsugi.
|
23
|
+
field :created_at, Crystalline::Nilable.new(::DateTime), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('created_at'), 'decoder': Utils.datetime_from_iso_format(true) } }
|
24
|
+
# Timestamp when transaction was last updated.
|
25
|
+
field :updated_at, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('updated_at') } }
|
26
|
+
# The jurisdiction identifier for the exemption
|
27
|
+
field :jurisdiction, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('jurisdiction') } }
|
28
|
+
|
29
|
+
field :country_code, Crystalline::Nilable.new(Models::Shared::CountryCodeEnum), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('country_code'), 'decoder': Utils.enum_from_string(Models::Shared::CountryCodeEnum, true) } }
|
30
|
+
# End date for the exemption validity period (YYYY-MM-DD format)
|
31
|
+
field :end_date, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('end_date') } }
|
32
|
+
# Unique identifier for the customer associated with the exemption
|
33
|
+
field :customer_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('customer_id') } }
|
34
|
+
# Unique identifier for the transaction
|
35
|
+
# associated with the exemption, if applicable.
|
36
|
+
field :transaction_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('transaction_id') } }
|
37
|
+
# Federal Employer Identification Number
|
38
|
+
# associated with the exemption.
|
39
|
+
field :fein, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('FEIN') } }
|
40
|
+
# Sales tax ID for the exemption
|
41
|
+
field :sales_tax_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('sales_tax_id') } }
|
42
|
+
|
43
|
+
field :status, Crystalline::Nilable.new(Models::Shared::ExemptionStatus), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('status'), 'decoder': Utils.enum_from_string(Models::Shared::ExemptionStatus, true) } }
|
44
|
+
|
45
|
+
field :organization_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('organization_id') } }
|
46
|
+
# Indicates whether the exemption is for a reseller
|
47
|
+
field :reseller, Crystalline::Nilable.new(Crystalline::Boolean.new), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('reseller') } }
|
48
|
+
|
49
|
+
sig { params(exemption_type: Models::Shared::ExemptionType, start_date: ::Date, id: T.nilable(::String), created_at: T.nilable(::DateTime), updated_at: T.nilable(::String), jurisdiction: T.nilable(::String), country_code: T.nilable(Models::Shared::CountryCodeEnum), end_date: T.nilable(::String), customer_id: T.nilable(::String), transaction_id: T.nilable(::String), fein: T.nilable(::String), sales_tax_id: T.nilable(::String), status: T.nilable(Models::Shared::ExemptionStatus), organization_id: T.nilable(::String), reseller: T.nilable(T::Boolean)).void }
|
50
|
+
def initialize(exemption_type:, start_date:, id: nil, created_at: nil, updated_at: nil, jurisdiction: nil, country_code: nil, end_date: nil, customer_id: nil, transaction_id: nil, fein: nil, sales_tax_id: nil, status: nil, organization_id: nil, reseller: false)
|
51
|
+
@exemption_type = exemption_type
|
52
|
+
@start_date = start_date
|
53
|
+
@id = id
|
54
|
+
@created_at = created_at
|
55
|
+
@updated_at = updated_at
|
56
|
+
@jurisdiction = jurisdiction
|
57
|
+
@country_code = country_code
|
58
|
+
@end_date = end_date
|
59
|
+
@customer_id = customer_id
|
60
|
+
@transaction_id = transaction_id
|
61
|
+
@fein = fein
|
62
|
+
@sales_tax_id = sales_tax_id
|
63
|
+
@status = status
|
64
|
+
@organization_id = organization_id
|
65
|
+
@reseller = reseller
|
66
|
+
end
|
67
|
+
|
68
|
+
sig { params(other: T.untyped).returns(T::Boolean) }
|
69
|
+
def ==(other)
|
70
|
+
return false unless other.is_a? self.class
|
71
|
+
return false unless @exemption_type == other.exemption_type
|
72
|
+
return false unless @start_date == other.start_date
|
73
|
+
return false unless @id == other.id
|
74
|
+
return false unless @created_at == other.created_at
|
75
|
+
return false unless @updated_at == other.updated_at
|
76
|
+
return false unless @jurisdiction == other.jurisdiction
|
77
|
+
return false unless @country_code == other.country_code
|
78
|
+
return false unless @end_date == other.end_date
|
79
|
+
return false unless @customer_id == other.customer_id
|
80
|
+
return false unless @transaction_id == other.transaction_id
|
81
|
+
return false unless @fein == other.fein
|
82
|
+
return false unless @sales_tax_id == other.sales_tax_id
|
83
|
+
return false unless @status == other.status
|
84
|
+
return false unless @organization_id == other.organization_id
|
85
|
+
return false unless @reseller == other.reseller
|
86
|
+
true
|
87
|
+
end
|
88
|
+
end
|
89
|
+
end
|
90
|
+
end
|
91
|
+
end
|
@@ -0,0 +1,41 @@
|
|
1
|
+
# typed: true
|
2
|
+
# frozen_string_literal: true
|
3
|
+
|
4
|
+
|
5
|
+
class KintsugiSDK::Models::Shared::Exemption
|
6
|
+
extend ::Crystalline::MetadataFields::ClassMethods
|
7
|
+
end
|
8
|
+
|
9
|
+
|
10
|
+
class KintsugiSDK::Models::Shared::Exemption
|
11
|
+
def exemption_type(); end
|
12
|
+
def exemption_type=(str_); end
|
13
|
+
def start_date(); end
|
14
|
+
def start_date=(str_); end
|
15
|
+
def id(); end
|
16
|
+
def id=(str_); end
|
17
|
+
def created_at(); end
|
18
|
+
def created_at=(str_); end
|
19
|
+
def updated_at(); end
|
20
|
+
def updated_at=(str_); end
|
21
|
+
def jurisdiction(); end
|
22
|
+
def jurisdiction=(str_); end
|
23
|
+
def country_code(); end
|
24
|
+
def country_code=(str_); end
|
25
|
+
def end_date(); end
|
26
|
+
def end_date=(str_); end
|
27
|
+
def customer_id(); end
|
28
|
+
def customer_id=(str_); end
|
29
|
+
def transaction_id(); end
|
30
|
+
def transaction_id=(str_); end
|
31
|
+
def fein(); end
|
32
|
+
def fein=(str_); end
|
33
|
+
def sales_tax_id(); end
|
34
|
+
def sales_tax_id=(str_); end
|
35
|
+
def status(); end
|
36
|
+
def status=(str_); end
|
37
|
+
def organization_id(); end
|
38
|
+
def organization_id=(str_); end
|
39
|
+
def reseller(); end
|
40
|
+
def reseller=(str_); end
|
41
|
+
end
|
@@ -0,0 +1,73 @@
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
2
|
+
|
3
|
+
# typed: true
|
4
|
+
# frozen_string_literal: true
|
5
|
+
|
6
|
+
|
7
|
+
module KintsugiSDK
|
8
|
+
module Models
|
9
|
+
module Shared
|
10
|
+
|
11
|
+
|
12
|
+
class ExemptionCreate
|
13
|
+
extend T::Sig
|
14
|
+
include Crystalline::MetadataFields
|
15
|
+
|
16
|
+
|
17
|
+
field :exemption_type, Models::Shared::ExemptionType, { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('exemption_type'), required: true, 'decoder': Utils.enum_from_string(Models::Shared::ExemptionType, false) } }
|
18
|
+
# Start date for the exemption validity period (YYYY-MM-DD format)
|
19
|
+
field :start_date, ::Date, { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('start_date'), required: true, 'decoder': Utils.date_from_iso_format(false) } }
|
20
|
+
# Unique identifier for the customer associated with the exemption
|
21
|
+
field :customer_id, ::String, { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('customer_id'), required: true } }
|
22
|
+
# Federal Employer Identification Number
|
23
|
+
field :fein, ::String, { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('FEIN'), required: true } }
|
24
|
+
# Sales tax ID for the exemption
|
25
|
+
field :sales_tax_id, ::String, { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('sales_tax_id'), required: true } }
|
26
|
+
|
27
|
+
field :status, Models::Shared::ExemptionStatus, { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('status'), required: true, 'decoder': Utils.enum_from_string(Models::Shared::ExemptionStatus, false) } }
|
28
|
+
# The jurisdiction identifier for the exemption
|
29
|
+
field :jurisdiction, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('jurisdiction') } }
|
30
|
+
|
31
|
+
field :country_code, Crystalline::Nilable.new(Models::Shared::CountryCodeEnum), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('country_code'), 'decoder': Utils.enum_from_string(Models::Shared::CountryCodeEnum, true) } }
|
32
|
+
# End date for the exemption validity period (YYYY-MM-DD format)
|
33
|
+
field :end_date, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('end_date') } }
|
34
|
+
# Unique identifier for the transaction, if applicable
|
35
|
+
field :transaction_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('transaction_id') } }
|
36
|
+
# Indicates whether the exemption is for a reseller
|
37
|
+
field :reseller, Crystalline::Nilable.new(Crystalline::Boolean.new), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('reseller') } }
|
38
|
+
|
39
|
+
sig { params(exemption_type: Models::Shared::ExemptionType, start_date: ::Date, customer_id: ::String, fein: ::String, sales_tax_id: ::String, status: Models::Shared::ExemptionStatus, jurisdiction: T.nilable(::String), country_code: T.nilable(Models::Shared::CountryCodeEnum), end_date: T.nilable(::String), transaction_id: T.nilable(::String), reseller: T.nilable(T::Boolean)).void }
|
40
|
+
def initialize(exemption_type:, start_date:, customer_id:, fein:, sales_tax_id:, status:, jurisdiction: nil, country_code: nil, end_date: nil, transaction_id: nil, reseller: false)
|
41
|
+
@exemption_type = exemption_type
|
42
|
+
@start_date = start_date
|
43
|
+
@customer_id = customer_id
|
44
|
+
@fein = fein
|
45
|
+
@sales_tax_id = sales_tax_id
|
46
|
+
@status = status
|
47
|
+
@jurisdiction = jurisdiction
|
48
|
+
@country_code = country_code
|
49
|
+
@end_date = end_date
|
50
|
+
@transaction_id = transaction_id
|
51
|
+
@reseller = reseller
|
52
|
+
end
|
53
|
+
|
54
|
+
sig { params(other: T.untyped).returns(T::Boolean) }
|
55
|
+
def ==(other)
|
56
|
+
return false unless other.is_a? self.class
|
57
|
+
return false unless @exemption_type == other.exemption_type
|
58
|
+
return false unless @start_date == other.start_date
|
59
|
+
return false unless @customer_id == other.customer_id
|
60
|
+
return false unless @fein == other.fein
|
61
|
+
return false unless @sales_tax_id == other.sales_tax_id
|
62
|
+
return false unless @status == other.status
|
63
|
+
return false unless @jurisdiction == other.jurisdiction
|
64
|
+
return false unless @country_code == other.country_code
|
65
|
+
return false unless @end_date == other.end_date
|
66
|
+
return false unless @transaction_id == other.transaction_id
|
67
|
+
return false unless @reseller == other.reseller
|
68
|
+
true
|
69
|
+
end
|
70
|
+
end
|
71
|
+
end
|
72
|
+
end
|
73
|
+
end
|
@@ -0,0 +1,33 @@
|
|
1
|
+
# typed: true
|
2
|
+
# frozen_string_literal: true
|
3
|
+
|
4
|
+
|
5
|
+
class KintsugiSDK::Models::Shared::ExemptionCreate
|
6
|
+
extend ::Crystalline::MetadataFields::ClassMethods
|
7
|
+
end
|
8
|
+
|
9
|
+
|
10
|
+
class KintsugiSDK::Models::Shared::ExemptionCreate
|
11
|
+
def exemption_type(); end
|
12
|
+
def exemption_type=(str_); end
|
13
|
+
def start_date(); end
|
14
|
+
def start_date=(str_); end
|
15
|
+
def customer_id(); end
|
16
|
+
def customer_id=(str_); end
|
17
|
+
def fein(); end
|
18
|
+
def fein=(str_); end
|
19
|
+
def sales_tax_id(); end
|
20
|
+
def sales_tax_id=(str_); end
|
21
|
+
def status(); end
|
22
|
+
def status=(str_); end
|
23
|
+
def jurisdiction(); end
|
24
|
+
def jurisdiction=(str_); end
|
25
|
+
def country_code(); end
|
26
|
+
def country_code=(str_); end
|
27
|
+
def end_date(); end
|
28
|
+
def end_date=(str_); end
|
29
|
+
def transaction_id(); end
|
30
|
+
def transaction_id=(str_); end
|
31
|
+
def reseller(); end
|
32
|
+
def reseller=(str_); end
|
33
|
+
end
|
@@ -0,0 +1,57 @@
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
2
|
+
|
3
|
+
# typed: true
|
4
|
+
# frozen_string_literal: true
|
5
|
+
|
6
|
+
|
7
|
+
module KintsugiSDK
|
8
|
+
module Models
|
9
|
+
module Shared
|
10
|
+
|
11
|
+
|
12
|
+
class ExemptionRequired
|
13
|
+
extend T::Sig
|
14
|
+
include Crystalline::MetadataFields
|
15
|
+
|
16
|
+
|
17
|
+
field :organization_id, ::String, { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('organization_id'), required: true } }
|
18
|
+
|
19
|
+
field :exemption_type, Models::Shared::ExemptionType, { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('exemption_type'), required: true, 'decoder': Utils.enum_from_string(Models::Shared::ExemptionType, false) } }
|
20
|
+
|
21
|
+
field :start_date, ::DateTime, { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('start_date'), required: true, 'decoder': Utils.datetime_from_iso_format(false) } }
|
22
|
+
|
23
|
+
field :status, Models::Shared::ExemptionStatus, { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('status'), required: true, 'decoder': Utils.enum_from_string(Models::Shared::ExemptionStatus, false) } }
|
24
|
+
|
25
|
+
field :reseller, Crystalline::Boolean.new, { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('reseller'), required: true } }
|
26
|
+
|
27
|
+
field :jurisdiction, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('jurisdiction') } }
|
28
|
+
|
29
|
+
field :customer_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('customer_id') } }
|
30
|
+
|
31
|
+
sig { params(organization_id: ::String, exemption_type: Models::Shared::ExemptionType, start_date: ::DateTime, status: Models::Shared::ExemptionStatus, reseller: T::Boolean, jurisdiction: T.nilable(::String), customer_id: T.nilable(::String)).void }
|
32
|
+
def initialize(organization_id:, exemption_type:, start_date:, status:, reseller:, jurisdiction: nil, customer_id: nil)
|
33
|
+
@organization_id = organization_id
|
34
|
+
@exemption_type = exemption_type
|
35
|
+
@start_date = start_date
|
36
|
+
@status = status
|
37
|
+
@reseller = reseller
|
38
|
+
@jurisdiction = jurisdiction
|
39
|
+
@customer_id = customer_id
|
40
|
+
end
|
41
|
+
|
42
|
+
sig { params(other: T.untyped).returns(T::Boolean) }
|
43
|
+
def ==(other)
|
44
|
+
return false unless other.is_a? self.class
|
45
|
+
return false unless @organization_id == other.organization_id
|
46
|
+
return false unless @exemption_type == other.exemption_type
|
47
|
+
return false unless @start_date == other.start_date
|
48
|
+
return false unless @status == other.status
|
49
|
+
return false unless @reseller == other.reseller
|
50
|
+
return false unless @jurisdiction == other.jurisdiction
|
51
|
+
return false unless @customer_id == other.customer_id
|
52
|
+
true
|
53
|
+
end
|
54
|
+
end
|
55
|
+
end
|
56
|
+
end
|
57
|
+
end
|
@@ -0,0 +1,25 @@
|
|
1
|
+
# typed: true
|
2
|
+
# frozen_string_literal: true
|
3
|
+
|
4
|
+
|
5
|
+
class KintsugiSDK::Models::Shared::ExemptionRequired
|
6
|
+
extend ::Crystalline::MetadataFields::ClassMethods
|
7
|
+
end
|
8
|
+
|
9
|
+
|
10
|
+
class KintsugiSDK::Models::Shared::ExemptionRequired
|
11
|
+
def organization_id(); end
|
12
|
+
def organization_id=(str_); end
|
13
|
+
def exemption_type(); end
|
14
|
+
def exemption_type=(str_); end
|
15
|
+
def start_date(); end
|
16
|
+
def start_date=(str_); end
|
17
|
+
def status(); end
|
18
|
+
def status=(str_); end
|
19
|
+
def reseller(); end
|
20
|
+
def reseller=(str_); end
|
21
|
+
def jurisdiction(); end
|
22
|
+
def jurisdiction=(str_); end
|
23
|
+
def customer_id(); end
|
24
|
+
def customer_id=(str_); end
|
25
|
+
end
|
@@ -0,0 +1,25 @@
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
2
|
+
|
3
|
+
# typed: true
|
4
|
+
# frozen_string_literal: true
|
5
|
+
|
6
|
+
|
7
|
+
module KintsugiSDK
|
8
|
+
module Models
|
9
|
+
module Shared
|
10
|
+
|
11
|
+
|
12
|
+
class ExemptionStatus < T::Enum
|
13
|
+
|
14
|
+
|
15
|
+
enums do
|
16
|
+
ACTIVE = new('ACTIVE')
|
17
|
+
INACTIVE = new('INACTIVE')
|
18
|
+
EXPIRED = new('EXPIRED')
|
19
|
+
DEACTIVATED = new('DEACTIVATED')
|
20
|
+
ARCHIVED = new('ARCHIVED')
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
@@ -0,0 +1,23 @@
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
2
|
+
|
3
|
+
# typed: true
|
4
|
+
# frozen_string_literal: true
|
5
|
+
|
6
|
+
|
7
|
+
module KintsugiSDK
|
8
|
+
module Models
|
9
|
+
module Shared
|
10
|
+
|
11
|
+
|
12
|
+
class ExemptionType < T::Enum
|
13
|
+
|
14
|
+
|
15
|
+
enums do
|
16
|
+
CUSTOMER = new('customer')
|
17
|
+
WHOLESALE = new('wholesale')
|
18
|
+
TRANSACTION = new('transaction')
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
@@ -0,0 +1,49 @@
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
2
|
+
|
3
|
+
# typed: true
|
4
|
+
# frozen_string_literal: true
|
5
|
+
|
6
|
+
|
7
|
+
module KintsugiSDK
|
8
|
+
module Models
|
9
|
+
module Shared
|
10
|
+
|
11
|
+
|
12
|
+
class FastapiPaginationDefaultPageExemptionRead2
|
13
|
+
extend T::Sig
|
14
|
+
include Crystalline::MetadataFields
|
15
|
+
|
16
|
+
|
17
|
+
field :items, Crystalline::Array.new(Models::Shared::BackendSrcExemptionsModelsExemptionRead), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('items'), required: true } }
|
18
|
+
|
19
|
+
field :total, ::Integer, { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('total'), required: true } }
|
20
|
+
|
21
|
+
field :page, ::Integer, { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('page'), required: true } }
|
22
|
+
|
23
|
+
field :size, ::Integer, { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('size'), required: true } }
|
24
|
+
|
25
|
+
field :pages, Crystalline::Nilable.new(::Integer), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('pages') } }
|
26
|
+
|
27
|
+
sig { params(items: T::Array[Models::Shared::BackendSrcExemptionsModelsExemptionRead], total: ::Integer, page: ::Integer, size: ::Integer, pages: T.nilable(::Integer)).void }
|
28
|
+
def initialize(items:, total:, page:, size:, pages: nil)
|
29
|
+
@items = items
|
30
|
+
@total = total
|
31
|
+
@page = page
|
32
|
+
@size = size
|
33
|
+
@pages = pages
|
34
|
+
end
|
35
|
+
|
36
|
+
sig { params(other: T.untyped).returns(T::Boolean) }
|
37
|
+
def ==(other)
|
38
|
+
return false unless other.is_a? self.class
|
39
|
+
return false unless @items == other.items
|
40
|
+
return false unless @total == other.total
|
41
|
+
return false unless @page == other.page
|
42
|
+
return false unless @size == other.size
|
43
|
+
return false unless @pages == other.pages
|
44
|
+
true
|
45
|
+
end
|
46
|
+
end
|
47
|
+
end
|
48
|
+
end
|
49
|
+
end
|
@@ -0,0 +1,21 @@
|
|
1
|
+
# typed: true
|
2
|
+
# frozen_string_literal: true
|
3
|
+
|
4
|
+
|
5
|
+
class KintsugiSDK::Models::Shared::FastapiPaginationDefaultPageExemptionRead2
|
6
|
+
extend ::Crystalline::MetadataFields::ClassMethods
|
7
|
+
end
|
8
|
+
|
9
|
+
|
10
|
+
class KintsugiSDK::Models::Shared::FastapiPaginationDefaultPageExemptionRead2
|
11
|
+
def items(); end
|
12
|
+
def items=(str_); end
|
13
|
+
def total(); end
|
14
|
+
def total=(str_); end
|
15
|
+
def page(); end
|
16
|
+
def page=(str_); end
|
17
|
+
def size(); end
|
18
|
+
def size=(str_); end
|
19
|
+
def pages(); end
|
20
|
+
def pages=(str_); end
|
21
|
+
end
|