Skip to content
Callaba

Build a Pay-Per-View Video Playlist in Callaba

On this page

Paid video playlist implementation

Sell a course, replay collection, or video series from one Callaba page

A useful pay-per-view playlist is not merely several files behind a checkout button. Each asset must play on its own, the collection needs a clear order, and one tested access policy must apply to the viewer page. Callaba handles this as a product workflow: upload the files, create a Web Player for each one, assemble those players into a Web Player Group, then configure payment, access, branding, and scheduling at the group level.

The shortest reliable build

Upload every finished video to Callaba and keep the source files private. Create one video-on-demand Web Player per file and verify each player independently. Next, create a Web Player Group of the Files type, add the players in audience order, select the opening item, and configure the PayPal-based pay-per-view settings on the group. Publish only after a buyer and a non-buyer have both been tested in clean browser sessions.

This separation is intentional. An individual player owns one playable asset; the group owns the catalogue and shared viewer experience. If episode three fails, you repair that player without rebuilding the payment policy or the rest of the course.

One purchase opens a tested collection, not a folder of raw files

The moving marker represents the access decision travelling from the collection to the viewer. It is an explanatory sequence, not a payment-status monitor. Motion is disabled when the device requests reduced motion.

Plan the offer before opening the dashboard

Write one sentence that says exactly what the buyer receives. “Access to eight training videos until 30 September” is testable; “premium membership” is not, unless membership duration and included content are defined elsewhere. Decide whether the group is a permanent catalogue, a scheduled release, or a replay that opens after a live event. Name an owner for refunds, payment questions, video faults, and content rights.

What viewers receive

List the final files, their display names, running order, expected duration, audio language, captions, and replacement policy. Keep draft renders outside the paid group.

Who can watch, and for how long

Record the price shown to the viewer, the period of access, any invited viewers who bypass payment, the launch time and timezone, and the support address shown on the page.

How playback should behave

Choose supported desktop and mobile browsers, the expected starting item, and what should happen when a viewer returns. Test bandwidth and audio with the final encodes, not lightweight placeholders.

Who handles payment issues

Confirm the organizer’s PayPal account, applicable fees, taxes, refunds, chargebacks, content rights, and buyer communication. Callaba operates the video and access surface; the organizer owns these commercial obligations.

Build the playlist in Callaba

  1. Prepare and upload the final assets

    Open File manager, create a clear record for each video, upload the completed file, and keep direct file visibility private when the asset should be consumed only through the controlled player. Use consistent names such as “Course — 01 — Orientation” rather than camera filenames. Preview every upload and check duration, picture, audio, aspect ratio, and the last seconds of playback.

  2. Create one Web Player per video

    Choose Video on demand as the player type, File as the input, and select the matching asset. Give the player an audience-facing name. Save it, open its viewer URL, and watch the beginning, a middle seek, and the ending. The group cannot repair an incomplete upload or a player attached to the wrong file.

  3. Assemble a Files-type Web Player Group

    Open Web Player Groups and add the verified players in the intended order. Choose concise display labels and a sensible default item. If the collection is a course, the label should tell the learner what changes from one item to the next; if it is an event archive, include the session or speaker rather than an internal production code.

  4. Apply one shared audience policy

    Configure the group’s available authorization and PayPal pay-per-view fields. Use the app Client ID from the correct PayPal environment; do not paste a client secret into a browser-facing field, screenshot, or shared setup note. Start in the PayPal sandbox when the deployment supports that test path, then deliberately switch and retest the live environment.

  5. Brand and schedule the viewing page

    Add a readable logo and background with enough contrast for player controls. Set an event date, timezone, and support email when the collection opens at a defined time. Preview at narrow and wide widths. A decorative background must not obscure titles, the payment action, the active item, or error messages.

  6. Publish the viewer URL or embed

    Copy the group URL for a standalone experience or use the provided embed code on the intended site. Serve the player over HTTPS and test it on the exact production domain. Keep the player origin, certificate, and cross-origin policy in the acceptance checklist; a player that works in the Callaba preview can still be blocked by the final page’s browser policy.

Run two acceptance tests, not one admin preview

Callaba administrators may already possess cookies or access state that an ordinary buyer does not. Open a private window or a separate browser profile with no dashboard session. First prove that an unauthorized visitor cannot watch the protected videos. Then complete the intended purchase or approved test authorization and confirm that the same visitor can open the default item, switch to every other item, reload the page, and continue according to the offer.

Evidence to retain before the playlist is announced
BoundaryTestPass evidence
FilesPreview each final upload from start to finish or through representative checkpoints.Correct duration, complete audio, expected raster, and no draft asset in the group.
PlayersOpen every VOD player outside the group.Each player resolves to its named file and starts in supported browsers.
AccessAttempt playback without payment or an invited credential.The protected media remains unavailable and the viewer sees a useful next step.
PurchaseComplete the configured PayPal journey with an approved test buyer.The correct collection becomes available without exposing credentials or another buyer’s state.
CatalogueSwitch through every item, including the last one, on desktop and mobile.Labels, selection, playback, and group policy remain consistent.
SupportTrigger a harmless invalid login or payment state.The user can identify the problem and reach the published support contact.

Common faults and the quickest isolation point

Only one episode fails

Open that Web Player directly. Check its selected file, active state, and encode. Replace or repair the player while leaving the working group and access policy intact.

Every item is locked after payment

Confirm the buyer used the same clean browser session, then inspect the configured PayPal environment and group-level settings. Do not make the files public as a workaround.

The player works outside the website

Inspect HTTPS, certificate validity, embed origin, browser console, and the deployed domain policy. Test the production hostname rather than a dashboard preview.

The owner sees content before paying

That may be the dashboard administrator’s existing access state. Repeat the test in a browser with no Callaba session and document which persona is being tested.

Use the product first; automate repeatable catalogue work second

The Callaba Pay-Per-View product page explains deployment and controlled-playback options. For the actual operator controls, keep the File manager, Web Players, and Web Player Groups guides beside the launch checklist. When the manual collection has passed, use the Web Player Groups API and Web Players API for repeatable catalogue operations. The API should reproduce a known-good audience policy, not invent one during deployment.

Payment reference

PayPal documents how to create an app and retrieve its Client ID in Get started with PayPal REST APIs. Keep sandbox and live credentials separate, store secrets outside public content, and recheck PayPal’s current market availability and commercial terms before opening sales.

Prove one three-video collection before importing the full catalogue

A small acceptance set exposes naming, payment, browser, and embed mistakes quickly. Once a buyer can move through all three items cleanly, expand the same reviewed model to the complete course or replay library.