ChargebeeAPI
Using AI coding agents like Claude Code or Cursor? Try the official Chargebee Agent Skills to speed up your development.Try now

Create an offer fulfillment

Try in API Explorer

This API notifies that a user has accepted an offer, logs an accepted event immediately for reporting, and triggers a backend processing depending on the offer's processing_type. You can call this API when a user accepts an offer (e.g., the user clicked Accept Offer or a similar confirmation). This API will record an accepted event as soon as the API is called and initiate the appropriate fulfillment mechanism according to processing_type:

  • billing_update: Initiates subscription or billing record updates (e.g., applying a discount or changing a plan) asynchronously.
  • checkout: Returns a hosted_page object in the response, which contains a URL to render the hosted checkout flow.
  • url_redirect: Returns a redirect_url. You are responsible for managing fulfillment on your end and must call the Update Offer Fulfillment API to report either completion or failure.
  • webhook: Sends a webhook, and you must also manage fulfillment on your end. Be sure to call the Update Offer Fulfillment API to report completion or failure.
  • email: Sends an email containing the offer details as configured. You are responsible for handling fulfillment on your side and must call the Update Offer Fulfillment API to report completion or failure. You can poll the Retrieve Offer Fulfillment endpoint for final status on billing_update and checkout flows. Upon actual fulfillment completion, the system logs a fulfilled event and sends notifications (webhook, Slack, email, Segment) as configured.

Sample Request

URL Format

POST https://[site].grow.chargebee.com/api/v2/offer_fulfillments

Input Parameters

personalized_offer_id
required, string, max chars=50

ID of the personalized offer that was accepted.

option_id
required, string, max chars=50

ID of the Offer Option that the user accepted.

Returns

offer_fulfillmentOffer fulfillment object
Resource object representing offer_fulfillment
hosted_pageHosted page object
Resource object representing hosted_page