A wrapper to use the WaveApp's graphql api in your laravel apps.
The original documentation is available at:
To use WaveApp, you will need to register on the developer portal.
Require the package using composer:
composer require subbe/waveapp
Update your .env file to include
WAVE_ACCESS_TOKEN=
WAVE_GRAPHQL_URI=
WAVE_BUSINESS_ID=
- user
- countries
- country
- businesses
- business
- currencies
- currency
- accountTypes
- accountSubtypes
- customerExists
- customers
- products
- taxes
- invoicesByCustomerByStatus
- getBusiness
- businessAccounts
- getBusinessAccount
- businessCustomers
- getBusinessCustomer
- businessInvoices
- getBusinessInvoices
- businessSalesTaxes
- getBusinessSalesTax
- businessProducts
- getBusinessProduct
- businessVendors
- getBusinessVendor
-
customerCreate
-
customerPatch
-
customerDelete
-
accountCreate
-
accountPatch
-
accountArchive
-
productCreate
-
productPatch
-
productArchive
-
salesTaxCreate
-
salesTaxPatch
-
salesTaxArchive
-
salesTaxRateCreate
-
moneyTransactionCreate
-
invoiceCreate
-
invoiceClone
-
invoiceDelete
-
invoiceSend
-
invoiceApprove
-
invoiceMarkSent
$waveapp = new \Subbe\WaveApp\WaveApp();
$countries = $waveapp->countries();
or, with parameters...
$waveapp = new \Subbe\WaveApp\WaveApp();
$country = $waveapp->country(['code' => 'US']);
$waveapp = new \Subbe\WaveApp\WaveApp();
$customer = [
"input" => [
"businessId" => "<REPLACE-THIS-WITH-THE-BUSINESS-ID>",
"name" => "Genevieve Heidenreich",
"firstName" => "Genevieve",
"lastName" => "Heidenreich",
"displayId" => "Genevieve",
"email" => "[email protected]",
"mobile" => "011 8795",
"phone" => "330 8738",
"fax" => "566 5965",
"tollFree" => "266 5698",
"website" => "http://www.hermiston.com/architecto-commodi-possimus-esse-non-necessitatibus",
"internalNotes" => "",
"currency" => "USD",
"address" => [
"addressLine1" => "167 Iva Run",
"addressLine2" => "Parker Mews, Monahanstad, 40778-7100",
"city" => "West Tyrique",
"postalCode" => "82271",
"countryCode" => "EC",
],
"shippingDetails" => [
"name" => "Genevieve",
"phone" => "011 8795",
"instructions" => [
"Delectus deleniti accusamus rerum voluptatem tempora.",
],
"address" => [
"addressLine1" => "167 Iva Run",
"addressLine2" => "Parker Mews, Monahanstad, 40778-7100",
"city" => "West Tyrique",
"postalCode" => "82271",
"countryCode" => "EC",
],
],
],
];
$newCustomer = $waveapp->customerCreate($customer, "CustomerCreateInput");
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.