Manage entitlements for private offers with automatic offer approval
Stay organized with collections
Save and categorize content based on your preferences.
When a customer purchases a private offer,
Google creates an entitlement, which indicates that the customer has bought
the offer from Cloud Marketplace.
If you haven't turned on
automatic offer approval
for your software as a service (SaaS) product, you receive different
Pub/Sub messages than those described in this article. For details
of those Pub/Sub messages, refer to
Manage entitlements for private offers.
For details on using the Partner Procurement API for private offers, visit
the reference documentation.
Verify when your customer's offers will become active
When you turn on
automatic offer approval
for a SaaS product, you receive different Pub/Sub messages than those
you receive for SaaS products that don't have automatic approval turned on.
Because SaaS products with automatic offer approval support scheduled start
dates, after a private offer is accepted, you must verify when the offer is
expected to begin, so that you can provision resources at the right time.
When a customer purchases a private offer, Cloud Marketplace creates an
entitlement and sends the following Pub/Sub message to your product:
{"eventId":"...","eventType":"ENTITLEMENT_OFFER_ACCEPTED","entitlement":{"id":"ENTITLEMENT_ID","updateTime":"...","newOfferDuration":"",// Contract duration for the offer"newOfferStartTime":"...",// Starting time for the offer"newOfferEndTime":"...",// Ending time for the offer},}
In this example, ENTITLEMENT_ID is an ID created by
Cloud Marketplace.
In your system, update the user's account to reflect that they've purchased the
offer. Use the newOfferStartTime field to verify the time that the offer is
expected to start, so that you can provision resources as needed.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-28 UTC."],[],[],null,["# Manage entitlements for private offers with automatic offer approval\n\nWhen a customer purchases a [private offer](/marketplace/docs/partners/offers),\nGoogle creates an *entitlement*, which indicates that the customer has bought\nthe offer from Cloud Marketplace.\n\nThis article reviews how to manage entitlements for your\n[private offers that have automatic offer approval turned on](/marketplace/docs/partners/offers/automatic-approval)\nby using the Partner Procurement API.\n| **Caution:** Once you turn on automatic offer approval for a SaaS product, you no longer receive `ENTITLEMENT_CREATION_REQUESTED` or `ENTITLEMENT_PLAN_CHANGE_REQUESTED` Pub/Sub messages for that SaaS product.\n\nIf you haven't turned on\n[automatic offer approval](/marketplace/docs/partners/offers/automatic-approval)\nfor your software as a service (SaaS) product, you receive different\nPub/Sub messages than those described in this article. For details\nof those Pub/Sub messages, refer to\n[Manage entitlements for private offers](/marketplace/docs/partners/offers/manage-entitlements).\n\nFor details on using the Partner Procurement API for private offers, visit\nthe [reference documentation](/marketplace/docs/partners/offers/rest-resources).\n| **Note:** You can also perform some management tasks in Producer Portal when you view your list of offers.\n\nVerify when your customer's offers will become active\n-----------------------------------------------------\n\nWhen you turn on\n[automatic offer approval](/marketplace/docs/partners/offers/automatic-approval)\nfor a SaaS product, you receive different Pub/Sub messages than those\nyou receive for SaaS products that don't have automatic approval turned on.\nBecause SaaS products with automatic offer approval support scheduled start\ndates, after a private offer is accepted, you must verify when the offer is\nexpected to begin, so that you can provision resources at the right time.\n| **Note:** If you've turned on automatic offer approval for SaaS products, you still must [approve your customer's account](/marketplace/docs/partners/offers/approve-offer) before an offer can take effect. If you don't approve your customer's account before the scheduled start date of their offer, that offer is automatically rejected, for both new offers and amendments to existing offers.\n\nWhen a customer purchases a private offer, Cloud Marketplace creates an\nentitlement and sends the following Pub/Sub message to your product: \n\n```json\n{\n \"eventId\": \"...\",\n \"eventType\": \"ENTITLEMENT_OFFER_ACCEPTED\",\n \"entitlement\": {\n \"id\": \"\u003cvar translate=\"no\"\u003eENTITLEMENT_ID\u003c/var\u003e\",\n \"updateTime\": \"...\",\n \"newOfferDuration\": \"\", // Contract duration for the offer\n \"newOfferStartTime\": \"...\", // Starting time for the offer\n \"newOfferEndTime\": \"...\", // Ending time for the offer\n },\n}\n```\n\nIn this example, \u003cvar translate=\"no\"\u003eENTITLEMENT_ID\u003c/var\u003e is an ID created by\nCloud Marketplace.\n\nIn your system, update the user's account to reflect that they've purchased the\noffer. Use the `newOfferStartTime` field to verify the time that the offer is\nexpected to start, so that you can provision resources as needed.\n\nWhat's next\n-----------\n\n- [Turn on automatic offer approval](/marketplace/docs/partners/offers/automatic-approval)\n for SaaS products that you offer.\n\n- [Create a private offer](/marketplace/docs/partners/offers/create-private-offers)\n for a specific customer."]]