Velop GiftNote

Description

Velop GiftNote lets shoppers attach an included written greeting card, personal voice, video, or uploaded media message to a WooCommerce order from the product page or checkout. Written cards are saved directly on the WooCommerce order and print without a QR code. Voice, video, and uploaded media use a printable QR card. Shoppers can reserve a media GiftNote at checkout and complete it from a secure, no-login recording link after payment.

The plugin stores the Velop message ID and written-card details on WooCommerce order metadata and communicates with the Velop API through WordPress AJAX handlers. The Velop API key is stored server-side and is never exposed to the storefront.

External services

Velop GiftNote connects to the Velop service at https://api.velop.media. This service is required to register GiftNotes, create upload URLs, store uploaded media, generate QR viewer links for voice and video messages, render media recipient pages, report GiftNote usage, and sync message status for the merchant portal. Written-card content is also retained directly on the WooCommerce order so the merchant can read and print it without a QR or viewer link.

The product page widget may also load a muted help preview video from https://www.velop.media/media/hamper-story-video-greeting.mp4 so shoppers can quickly understand the QR voice and video GiftNote flow before opening the form.

When a shopper creates a GiftNote, the plugin sends the merchant API key, pending order reference, sender name when provided, media type, and—for written cards—the recipient, occasion, and message text. For media GiftNotes it also sends the MIME type and file size, then uploads the shopper’s media file using the upload URL returned by the API. When the shopper chooses to record later, Velop creates a private completion token and returns a secure completion URL that WooCommerce stores on the order and includes in customer order communications.

When the upload is confirmed, the plugin sends the Velop message ID, upload path, and duration when available. After checkout, it syncs the final order ID, order number/reference, order status, and billing or shipping name when the GiftNote sender name was left blank. If an order is cancelled, the plugin sends the Velop message ID so the related GiftNote can be cancelled.

Velop terms: https://velop.media/terms

Velop privacy policy: https://velop.media/privacy

Source and build process

The storefront widget JavaScript is bundled in assets/widget.js so the plugin does not load executable code from a third-party CDN by default.

The human-readable source for that generated file is included in the plugin package at source/widget/src, with the related widget build files at source/widget/package.json and source/widget/vite.config.js.

Build process:

  1. Run npm install from the Velop project root.
  2. Run npm --workspace @velop/widget run build to generate the widget bundle.
  3. Run node apps/portal/scripts/package-plugin.js to copy the built widget into assets/widget.js and include the readable widget source in the release ZIP.

Installation

  1. Upload the velop-giftnote folder to /wp-content/plugins/.
  2. Activate Velop GiftNote from the WordPress Plugins page.
  3. Go to WooCommerce > Settings > Velop.
  4. Enter your Velop API key and confirm the API URL.

FAQ

What personal data is sent to Velop?

The plugin sends the pending order reference, recipient and sender names when provided, occasion, media type, file size, and uploaded media file needed to create the GiftNote. For record-later messages, it stores a private completion URL on the WooCommerce order and may email that URL to the order billing address. After checkout, it syncs the final WooCommerce order number, order status, and billing or shipping name when the GiftNote sender name was left blank.

Where is the greeting or QR card shown?

After checkout, the WooCommerce order admin panel clearly shows the attached GiftNote and its print action. Written cards show the recipient, occasion, full message, and sender and print without a QR. Voice, video, and uploaded messages show their QR preview and scan count.

Reviews

July 11, 2026
Installed Velop GiftNote on my WooCommerce store and it works well! It’s a good way to add a personal touch to orders. The process is simple, easy to install and cutomizable. Support is responsive and setup was easy. Highly recommend for any e-commerce store selling gifts!”
Read all 1 review

Contributors & Developers

“Velop GiftNote” is open source software. The following people have contributed to this plugin.

Contributors

Translate “Velop GiftNote” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.

Changelog

4.0.3

  • Confirmed compatibility with WordPress 7.1 after testing activation with WooCommerce 11.0.1 on WordPress 7.1 RC3.
  • Added translator context for placeholder strings so the complete WordPress Plugin Check suite passes without errors.

4.0.2

  • Clarified the record-after-checkout choice with the payment, secure-link, and recording sequence shown before selection.
  • Reworked checkout styling to inherit visible WooCommerce primary buttons, card surfaces, borders, shadows, typography, and corner radii.
  • Simplified record-now and existing-video choices into secondary actions.
  • Stopped repeated checkout-total and payment refreshes after attaching a GiftNote.

4.0.1

  • Fixed blank live camera previews on mobile checkout and post-purchase recording screens.
  • Added explicit inline playback after attaching the camera stream for mobile Safari compatibility.
  • Added supported MP4/WebM recording format negotiation so recorded video previews remain playable on the current device.

4.0.0

  • Added a prominent checkout experience that can inherit WooCommerce theme colours, typography, button contrast, and corner radius.
  • Added checkout appearance, placement, prominence, copy, colour, shadow, quick-message, and reminder settings.
  • Added secure post-purchase voice and video completion with a no-login mobile recording page, phone upload, guided prompts, countdown, preview, retake, and permission recovery.
  • Added thank-you page and customer email actions plus scheduled incomplete-message reminders.
  • Added Waiting for customer status, merchant recording-link access, print protection, and completion-aware expiry.
  • Added analytics for reservation, permission request/grant/denial, recording and post-purchase completion.

3.0.8

  • Removed duplicate written-card metadata from WooCommerce admin order line items.
  • Kept the complete written card in the dedicated Velop order panel with its print action.

3.0.7

  • Replaced raw greeting-card order metadata on customer order pages with a polished card summary.
  • Preserved detailed order metadata for sellers while improving confirmation-page readability.

3.0.6

  • Expanded the prefilled greeting library to 27 globally useful and Singapore-relevant occasions.
  • Grouped occasions into celebrations, care, and festivals for faster checkout selection.
  • Added three polished, editable starting messages for every occasion.

3.0.5

  • Added an editable greeting-card opening with “Dear” as the backward-compatible default.
  • Carried the chosen opening through WooCommerce order metadata, seller display, exports, viewer output, and printing.

3.0.4

  • Added live recipient and sender synchronization for The Hamper Story’s custom WCR checkout fields, saved addresses, and sender-edit flow.
  • Prevented automatically prefilled draft names from being mistaken for manual shopper edits.

3.0.3

  • Prefilled greeting-card recipient and sender names from available WooCommerce checkout values while keeping both fields editable.
  • Prefilled the sender name for voice, video, and upload GiftNotes from checkout details.

3.0.2

  • Replaced personal placeholder names with globally familiar, Singapore-friendly examples.

3.0.1

  • Saved written-card content directly on WooCommerce orders and order items for clear seller access and reliable printing without a QR code.
  • Clarified checkout pricing so the written card is labelled included while paid voice, video, and upload options show the configured additional fee.
  • Added local order-admin and A6 print layouts for written cards, while retaining QR cards for media GiftNotes.
  • Bumped the asset version so WordPress, LiteSpeed, and browser caches load the updated checkout interface.

3.0.0

  • Added the Velop composer to WooCommerce checkout as well as product pages.
  • Added an included written greeting-card option with occasion suggestions, recipient, message, and sender fields.

2.0.38

  • Added GA4-compatible storefront events for product widget viewing, help popup engagement, recording, upload, attachment, add-to-cart, and error behavior.

2.0.37

  • Changed the help preview video to play on mouse over and release the video resource when the shopper moves away.

2.0.36

  • Added a WooCommerce setting for help preview video sound, with sound enabled after shopper click when selected.

2.0.35

  • Improved the product widget help popover with a polished video preview, emotional headline, and compact QR shipping explanation.

2.0.34

  • Refined the product widget help popover with a shopper-friendly QR card explanation and three-step training flow.

2.0.33

  • Added a setting to choose whether the product page GiftNote widget starts open or closed.
  • Added an in-widget help tooltip with a short video preview and shopper-friendly explanation.

2.0.32

  • Included readable widget source in the WordPress.org release package.
  • Added a dedicated cart nonce for posted GiftNote message IDs.

2.0.31

  • Opened the matching record or upload form immediately when shoppers choose Record Voice, Record Video, or Upload File.

2.0.30

  • Updated the out-of-box product widget teaser text to “Send a Voice or Video Note”.

2.0.29

  • Stabilized product page widget placement by rendering a single current-product widget root and matching teaser text to the saved setting.

2.0.28

  • Removed the GiftNote price from product item meta so the add-on cost only appears in the order totals fee row.

2.0.27

  • Fixed checkout GiftNote removal so the trash icon uses a dedicated AJAX endpoint and refreshes checkout totals in place.

2.0.26

  • Added a setting to customize the product page GiftNote teaser text.

2.0.25

  • Anchored the product GiftNote widget directly above Delivery Information while keeping it below purchase buttons.

2.0.24

  • Placed the product GiftNote widget after the full purchase button container in Elementor and custom product templates.

2.0.23

  • Added a dedicated product widget row so GiftNote no longer competes with custom theme purchase buttons.

2.0.22

  • Forced product page GiftNote placement below visible Buy Now controls to avoid custom theme button-row distortion.

2.0.21

  • Added a default product page placement below Buy Now buttons for custom WooCommerce themes.

2.0.20

  • Improved product page widget placement across custom WooCommerce themes with layout-safe positioning and fallback rendering.

2.0.19

  • Fixed early translation loading notice triggered by product page widget placement registration.

2.0.18

  • Refreshed the GiftNote security token automatically when cached product pages provide a stale nonce.

2.0.17

  • Added a WooCommerce setting for choosing where the GiftNote widget appears on product pages.

2.0.16

  • Added a cart totals fallback row for themes that omit WooCommerce fee rows, keeping GiftNote fees visible on the cart page.

2.0.15

  • Added a cart and checkout trash icon so shoppers can remove an attached GiftNote before payment.
  • Recalculate GiftNote fees immediately after removal.

2.0.14

  • Fixed GiftNote cart fees for stores that enter prices inclusive of tax.
  • Added a GiftNote price tax mode setting so merchants can choose whether the configured customer price includes or excludes tax.
  • Prevented stale pending GiftNote session data from adding an extra cart fee after the cart item already has a GiftNote.

2.0.13

  • Prepared the plugin for WordPress.org submission.
  • Switched the storefront widget to the bundled local asset by default.
  • Removed the custom external update mechanism from the submitted plugin.
  • Removed forced plugin-rendered Velop credits from the order admin panel.
  • Improved Velop service, privacy, terms, and widget source disclosures.

2.0.12

  • Synced final WooCommerce order number, order status, and billing sender name back to Velop after checkout.
  • Kept shopper-entered GiftNote sender names intact while filling blank names from WooCommerce order details.

2.0.11

  • Synced WooCommerce cart GiftNote pricing with the Velop merchant portal when no local store override is set.
  • Reduced merchant status cache time so portal price changes reach stores faster.

2.0.10

  • Removed direct viewer and token access from the WooCommerce order admin panel.
  • Reduced the QR preview size for narrow order side panels.
  • Fixed customer GiftNote price fees for cart flows where the message remains in the WooCommerce session.

2.0.9

  • Added a multi-GiftNote WooCommerce order admin panel.
  • Added plugin coding rules, readme, and changelog files.

2.0.8

  • Improved release metadata wiring.

2.0.7

  • Improved the WooCommerce order admin GiftNote panel UI.

2.0.6

  • Improved downloadable plugin versioning and metadata.