Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Integrate "Events" more deeply into Unchained #590

Open
6 tasks done
pozylon opened this issue Apr 22, 2024 · 0 comments
Open
6 tasks done

Integrate "Events" more deeply into Unchained #590

pozylon opened this issue Apr 22, 2024 · 0 comments
Assignees

Comments

@pozylon
Copy link
Member

pozylon commented Apr 22, 2024

Definitions:

  • With an order somebody can buy virtual products
  • Virtual Products (=Token): A Token could be any kind of NFT or a Ticket to a Concert

Invalidation:

Pre-defined validity ranges for "redeemability":

  • Case 1 Coupon or License Key: Valid until 01.05.2025
  • Case 2 Event: From 01.05.2025 15:00 - 01.05.2025 23:00
    we can't know for sure how a case considers if a ticket is redeemable, it could be based on some external state.
  • A user could loose access to a ticket because maybe the owner changed

A user could loose access to a ticket because maybe the owner changed, in such a case we'll need to be able to find out if that happened n a UI.

  • Token should have optional expiryDate
  • Token should have optional isInvalidateable()
  • Token should have optional invalidatedDate
  • Unchained should support creation of a "token access key" for a specific token that can be used for a barcode, that token access key should be returned in the Token type
  • Unchained should support invalidate token mutation
  • Unchained should support Order.tokens to show the tokens that got "materialized" with a specific Order

Reporting:

When TokenizedProduct resembles an Event and invalidation resembles Scanning of the ticket at the entrance, a common case for events is seeing reporting data:

Show / No-Show List for an Event:

  • Total supply and total emitted tokens
  • Invalidated vs Un-Invalidated tokens

Revenue Report:

  • Show all confirmed/fullfilled orders in a certain time range with delivery/items/payment/discounts/tax & gross total
  • Show all order positions of orders from above in a certain time range with "unit price"/price/discount/tax & gross total
  • Show the above list filtered by a product in a certain time range

Ticketing Experience:

Currently, generating the ticket as PDF and integration into Apple Wallet and Google Wallet have been done in userbase code of a customer, including Pass Notifications. Unchained should deliver these plugins out-of-the-box in Open-Source code and also have a proper default design for PDF tickets:

  • Port additional logic from the Theater im Hof to the default ERC721 Warehousing Plugin (eth-minter.ts)
  • Warehousing Director should support "invalidation" hook to regenerate the metadata based on updated information
  • Add Apple Wallet Plugin and document how to configure
  • Add Google Wallet Plugin and document how to configure
  • Add an HTTP handler that can generate the appropriate apple wallet and/or google wallet pass with the ticket id and the "token access key"
  • Add an HTTP handler that can generate a print-pdf of a ticket with the ticket id and the "token access key"
  • Add a template Order Confirmation Message that attaches all the tickets as PDF's, a .pkpasses container and shows the appropriate add to google wallet link if possible.
@pozylon pozylon self-assigned this Apr 22, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant