Files
medusa-store/packages/medusa-plugin-restock-notification
Oliver Windall Juhl 7343a4e841 release: next (#239)
* hotfix(medusa-plugin-brightpearl): Use order id in sales order endpoint

* feat(medusa-plugin-sendgrid): adds localization option (#238)

* chore(deps): bump y18n from 4.0.0 to 4.0.1 in /packages/medusa-cli (#226)

Bumps [y18n](https://github.com/yargs/y18n) from 4.0.0 to 4.0.1.
- [Release notes](https://github.com/yargs/y18n/releases)
- [Changelog](https://github.com/yargs/y18n/blob/master/CHANGELOG.md)
- [Commits](https://github.com/yargs/y18n/commits)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump y18n from 4.0.0 to 4.0.3 in /packages/medusa (#235)

Bumps [y18n](https://github.com/yargs/y18n) from 4.0.0 to 4.0.3.
- [Release notes](https://github.com/yargs/y18n/releases)
- [Changelog](https://github.com/yargs/y18n/blob/y18n-v4.0.3/CHANGELOG.md)
- [Commits](https://github.com/yargs/y18n/compare/v4.0.0...y18n-v4.0.3)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump y18n from 4.0.0 to 4.0.1 in /e2e/prod-project (#225)

Bumps [y18n](https://github.com/yargs/y18n) from 4.0.0 to 4.0.1.
- [Release notes](https://github.com/yargs/y18n/releases)
- [Changelog](https://github.com/yargs/y18n/blob/master/CHANGELOG.md)
- [Commits](https://github.com/yargs/y18n/commits)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump y18n in /packages/medusa-core-utils (#224)

Bumps [y18n](https://github.com/yargs/y18n) from 4.0.0 to 4.0.1.
- [Release notes](https://github.com/yargs/y18n/releases)
- [Changelog](https://github.com/yargs/y18n/blob/master/CHANGELOG.md)
- [Commits](https://github.com/yargs/y18n/commits)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* feat(medusa): Swaps on swaps (#229)

Co-authored-by: Sebastian Rindom <skrindom@gmail.com>

* chore: version bumps

* chore: version bumps

* chore(release): Publish

 - babel-preset-medusa-package@1.1.1
 - @medusajs/medusa-cli@1.1.5
 - medusa-core-utils@1.1.7
 - medusa-dev-cli@0.0.6
 - medusa-file-spaces@1.1.10
 - medusa-fulfillment-manual@1.1.7
 - medusa-fulfillment-webshipper@1.1.10
 - medusa-interfaces@1.1.8
 - medusa-payment-adyen@1.1.10
 - medusa-payment-klarna@1.1.11
 - medusa-payment-paypal@1.0.10
 - medusa-payment-stripe@1.1.10
 - medusa-plugin-add-ons@1.1.10
 - medusa-plugin-brightpearl@1.1.13
 - medusa-plugin-contentful@1.1.11
 - medusa-plugin-discount-generator@1.1.1
 - medusa-plugin-economic@1.1.10
 - medusa-plugin-ip-lookup@1.1.1
 - medusa-plugin-mailchimp@1.1.10
 - medusa-plugin-permissions@1.1.10
 - medusa-plugin-restock-notification@0.0.4
 - medusa-plugin-segment@1.1.13
 - medusa-plugin-sendgrid@1.1.11
 - medusa-plugin-slack-notification@1.1.10
 - medusa-plugin-twilio-sms@1.1.10
 - medusa-plugin-wishlist@1.1.10
 - medusa-test-utils@1.1.10
 - @medusajs/medusa@1.1.20

* chore(release): Publish

 - babel-preset-medusa-package@1.1.2
 - @medusajs/medusa-cli@1.1.6
 - medusa-core-utils@1.1.8
 - medusa-dev-cli@0.0.7
 - medusa-file-spaces@1.1.11
 - medusa-fulfillment-manual@1.1.8
 - medusa-fulfillment-webshipper@1.1.11
 - medusa-interfaces@1.1.9
 - medusa-payment-adyen@1.1.11
 - medusa-payment-klarna@1.1.12
 - medusa-payment-paypal@1.0.11
 - medusa-payment-stripe@1.1.11
 - medusa-plugin-add-ons@1.1.11
 - medusa-plugin-brightpearl@1.1.14
 - medusa-plugin-contentful@1.1.12
 - medusa-plugin-discount-generator@1.1.2
 - medusa-plugin-economic@1.1.11
 - medusa-plugin-ip-lookup@1.1.2
 - medusa-plugin-mailchimp@1.1.11
 - medusa-plugin-permissions@1.1.11
 - medusa-plugin-restock-notification@0.0.5
 - medusa-plugin-segment@1.1.14
 - medusa-plugin-sendgrid@1.1.12
 - medusa-plugin-slack-notification@1.1.11
 - medusa-plugin-twilio-sms@1.1.11
 - medusa-plugin-wishlist@1.1.11
 - medusa-test-utils@1.1.11
 - @medusajs/medusa@1.1.21

Co-authored-by: Sebastian Rindom <skrindom@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-04-20 16:40:49 +02:00
..
2021-04-09 19:31:56 +02:00
2021-04-06 17:55:02 +02:00
2021-03-25 16:50:30 +01:00
2021-04-06 17:55:02 +02:00
2021-03-25 16:50:30 +01:00
2021-03-25 16:50:30 +01:00
2021-04-20 16:40:49 +02:00
2021-03-25 16:50:30 +01:00
2021-03-25 16:50:30 +01:00
2021-04-20 16:40:49 +02:00
2021-04-07 11:00:24 +02:00
2021-03-26 12:44:55 +01:00
2021-04-20 16:40:49 +02:00

medusa-plugin-restock-notification

Usage

Install the plugin:

$ yarn add medusa-plugin-restock-notification

// medusa-config.js

module.exports = {
  ...,
  plugins: [
    ...,
    `medusa-plugin-restock-notification`
  ]
}

The plugin will migrate your database to include the RestockNotification entity, which consists of a variant id of a sold out item and a jsonb list of arrays that wish to be notified about restocks for the item.

API endpoint

The plugin exposes an endpoint to sign emails up for restock notifications:

POST /restock-notifications/variants/:variant_id

Body
{
  "email": "seb@test.com"
}

The endpoint responds with 200 OK on succesful signups. If a signup for an already in stock item is attempted the endpoint will have a 400 response code.

Restock events

The plugin listens for the product-variant.updated call and emits a restock-notification.restocked event when a variant with restock signups become available.

The data sent with the restock-notification.restocked event is:

variant_id: The id of the variant to listen for restock events for.
emails: An array of emails that are to be notified of restocks.

e.g.

{
  "variant_id": "variant_1234567890",
  "emails": ["seb@test.com", "oli@test.com"]
}

Note: This plugin does not send any communication to the customer, communication logic must be implemented or provided through a communication plugin.

You may use medusa-plugin-sendgrid to orchestrate transactional emails.

Usage with medusa-plugin-sendgrid

Install the plugins: $ yarn add medusa-plugin-restock-notification medusa-plugin-sendgrid

// medusa-config.js

module.exports = {
  ...,
  plugins: [
    ...,
    `medusa-plugin-restock-notification`,
    {
      resolve: `medusa-plugin-sendgrid`,
      options: {
        from: SENDGRID_FROM,
        api_key: SENDGRID_API_KEY,
        medusa_restock_template: `d-13141234123412342314`
      }
    }
  ]
}

You should set up a dynamic template in SendGrid which will be send for each of the emails in the restock notification.