elsa-workflows / elsa-workflows/elsa-extensions
Add WaveApps Integration
- Dominant language
- C#
- Stars
- 49
- Forks
- 48
- Avg merge
- 21h 35m
- Merged PRs (30d)
- 20
Description
This issue tracks the implementation of an integration for **WaveApps** in Elsa Workflows. The module should allow workflows to interact with WaveApps, supporting invoicing, customer management, transactions, and financial reporting.
## **Tasks**
- [ ] Create a new module: `Elsa.Integrations.WaveApps`
- [ ] Implement **Workflow Activities**:
- [ ] **ApproveInvoice** - Approves an invoice by ID.
- [ ] **CreateCustomer** - Creates a new customer.
- [ ] **CreateProductOrService** - Creates a new product or service.
- [ ] **CreateSalesTax** - Creates a new sales tax.
- [ ] **CreateTransaction** - Creates a new transaction.
- [ ] **CreateAccount** - Creates a new account.
- [ ] **CreateIncomeOrExpense** - Creates an income or expense entry.
- [ ] **CreateInvoice** - Creates an invoice.
- [ ] **DeleteCustomer** - Deletes a customer.
- [ ] **ExecuteGraphQLQuery** - Performs an arbitrary authorized GraphQL query.
- [ ] **GetCustomer** - Retrieves details about a specific customer by ID.
- [ ] **GetCustomerByEmail** - Retrieves a customer by email.
- [ ] **ListCustomers** - Retrieves a list of customers from the Wave account.
- [ ] **ListInvoices** - Retrieves a list of invoices.
- [ ] **ListProducts** - Retrieves a list of products.
- [ ] **SendInvoice** - Sends an invoice.
- [ ] **UpdateCustomer** - Updates an existing customer.
- [ ] **UpdateProductOrService** - Updates a product or service.
- [ ] **WatchInvoices** - Triggers when new invoices are added since the last check.
- [ ] Add Unit Tests
- [ ] Add Documentation (`README.md`)
## **References**
- 📖 [WaveApps API Docs](https://developer.waveapps.com/hc/en-us)
- 🛠️ [WaveApps Developer Resources](https://developer.waveapps.com/)
- [WaveApps.GraphQLBuilder](https://www.nuget.org/packages/WaveApps.GraphQLBuilder)
## **Notes**
- This should follow the standard structure used for Elsa Integrations.
- The integration should support authentication via OAuth 2.0.
## **Contributor Guidelines**
If you're interested in working on this issue:
1. Comment below to claim it.
2. Follow the [CONTRIBUTING.md](https://github.com/elsa-workflows/elsa-integrations/blob/main/CONTRIBUTING.md) guide.
3. Submit a PR referencing this issue.
Contributor guide
Assessment
This issue has not been assessed yet.