Why not ?
I'm not a developer. I just completed a giftcard module completely ai generated (claude sonnet 4.6).
I'm still testing it, but as far as I can the functionality I wanted works. (including correct VAT calculation)
How the module works:
- Create a set number of gift card numbers.
- Export the numbers to a CSV file for printing the gift cards.
- Create a regular product (gift card) with 0% VAT.
- Customer buys the product.
- Link a gift card to the order.
- Email the customer the PIN code.
- Once the customer receives the physical gift card, they activate it with the PIN code on a special page.
- After activation, the card can be used as a payment method.
-----
GiftCardPayment โ ThirtyBees Module
Version: 1.0.0
Author: denkspellenparadijs [with assistance from Claude Sonnet 4.6]
License: MIT
Compatibility: ThirtyBees 1.6.x | PHP 8.0+
๐ Description
The GiftCardPayment module adds a complete gift card system to ThirtyBees webshops. Customers can use physical gift cards (with unique code and PIN) as a payment method โ either fully or partially.
In case of a partial payment, the remaining amount is automatically charged via the configured payment provider (Mollie or bank transfer).
โจ Features
๐ Physical gift cards with unique codes and PIN protection
๐ณ Two-step payment flow: gift card + remaining amount via PSP
๐ PSP-agnostic: works with Mollie and bank transfer (extendable with custom adapter)
๐งพ VAT-correct handling for partial gift card payments
๐ญ Bulk generation of gift cards via admin
๐ฐ Balance check via frontend widget
๐ Activation via email โ customer activates card via personal activation link
๐ Blocking after too many failed PIN attempts
๐ Full transaction history per gift card
๐ Security
PIN codes are stored as plaintext and as BCrypt hash (for validation)
CSRF token validation on all AJAX endpoints
Rate limiting on PIN attempts
Cryptographically secure secure_key generation via random_bytes(32)
๐ฆ Installation
See INSTALLATION.md for full installation instructions.
Quick install: 1. Upload giftcardpayment_v1.0.0.zip via Modules โ Upload a Module 2. Install the module 3. Clear the cache
โ๏ธ Configuration
After installation: 1. Go to Modules โ GiftCardPayment โ Configure 2. Set the payment provider (Mollie, Bank Transfer, etc.) 3. Set the validity period (default: 24 months) 4. Set the maximum number of failed PIN attempts (default: 3)
๐ Structure
giftcardpayment/
โโโ classes/ # Core classes
โ โโโ GiftCard.php
โ โโโ GiftCardTransaction.php
โ โโโ GiftCardCart.php
โ โโโ GiftCardOrder.php
โ โโโ GiftCardPartialPayment.php
โ โโโ providers/ # PSP adapters
โ โโโ MolliePaymentProvider.php
โ โโโ BankWirePaymentProvider.php
โโโ controllers/
โ โโโ admin/ # Admin controllers
โ โโโ front/ # Frontend controllers
โโโ sql/ # Database scripts
โโโ views/ # Templates
โโโ translations/ # Translations
โโโ giftcardpayment.php # Main module file
โโโ config.xml
โโโ CHANGELOG.md
โโโ INSTALLATIE.md
๐ Changelog
See CHANGELOG.md for the full version history.
๐ License
MIT License โ free to use, modify and distribute with attribution.
Developed by denkspellenparadijs with assistance from Claude Sonnet 4.6 (Abacus.AI / ChatLLM Teams)