If you integrate nothing at all
You do not have to write code to accept a voucher. Two paths work today.
The link
Section titled “The link”When a holder taps use this voucher, we send them to the pricing page you registered with the listing, carrying the reservation:
https://yourapp.com/pricing?bm_ticket=…&bm_price=20.00&bm_product_key=plan.pro&bm_months=1Read it in one line:
import { readTicket } from '@bullmark/sdk';const ticket = readTicket(location.search);You now know somebody arrived holding a voucher and what it is worth. Even if you do
nothing with it, that is more than an untracked coupon code would have told you — and when
you are ready, redeem({ ticket, externalRef }) is the only line you add.
The screen we host
Section titled “The screen we host”Sign in at bullmark.net → Redeem a Voucher. Type the code a customer is showing you and you get the price, the term and your own product key. Give them that price, enter your order number, confirm.
This is the same canon as the API — a redemption made here is indistinguishable, on the chain, from one made by your server.