Paywall with StorifyMe
In case you want your Stories and Shorts to work with monetization and paywalls, this is possible with StorifyMe Paywall integration.
StorifyMe Web SDK provides a set of methods and events to manage and interact with paywalls within your application.
Methods
Show paywall
This method displays the paywall to the user and can be used as:
widget.paywall.show();
Hide paywall
This method dismisses the paywall and can be used as:
widget.paywall.hide();
Hide permanently
This method dismisses the paywall and marks it as completed:
widget.paywall.hide(true);
Get paywall status
This method retrieves the current status of the paywall and can be used as:
const status = widget.paywall.getStatus();
// Returns: 'triggered', 'completed', or null
Register completion callback
This method registers a callback function that will be invoked when the user completes the payment:
widget.paywall.onCompleted((data) => {
console.log('Payment completed:', data);
// Handle successful payment
});
Register close callback
This method registers a callback function that will be invoked when the user dismisses the paywall:
widget.paywall.onClose((data) => {
console.log('Paywall closed:', data);
// Handle paywall dismissal
});
Events
You can attach and subscribe to events in order to run logic on your website when something happens in Stories and Shorts regarding Paywall logic.
In order to be sure that you will receive all the events, eg. onLoad, please first register events and then initialize the widget.
You can mark the widget to be manually loaded with init="manual".
onPaywall()
onPaywall method is invoked every time a paywall-related action happens.
Supported types:
- PAYWALL_TRIGGERED - Happens when paywall is shown to the user
- PAYWALL_COMPLETED - Happens when user completes the payment
- PAYWALL_CLOSED - Happens when user dismisses the paywall
// Get the widget element
const widget = document.querySelector('#widget');
widget.addEventListener('onPaywall', (event) => {
console.log(event.type); // Type of the paywall action that happened
console.log(event.detail); // Details for the action that happened
});
// Load widget
widget.load();
API Documentation
Story Player API
When the story is directly embedded (not in iframe):
window.storifyme.paywall.show()- Show paywallwindow.storifyme.paywall.hide()- Hide paywallwindow.storifyme.paywall.getStatus()- Get status ('triggered', 'completed', or null)window.storifyme.paywall.onCompleted(callback)- Register callback for payment completionwindow.storifyme.paywall.onClose(callback)- Register callback for paywall dismissal
Widget API
When the story is in iframe (most common scenario):
widget.paywall.show()- Show paywallwidget.paywall.hide()- Hide paywallwidget.paywall.getStatus()- Get status ('triggered', 'completed', or null)widget.paywall.onCompleted(callback)- Register callback for payment completionwidget.paywall.onClose(callback)- Register callback for paywall dismissal