Skip to content

Sell on AWS Marketplace

Say "list us on AWS Marketplace" and your Offers sell there, the marketplace bills the buyer, and each payout lands in your books net of its fee.

Some buyers spend only through their cloud bill. A marketplace that bills the buyer itself pays the Startup later, and each sale still lands as an Order in your books.

Needs Ship an API

What you get

  • 1connected seller account on the marketplaceIntegration
  • 1listing for each published Offer, at the same priceOffer
  • 1Order per marketplace sale, marked as collected by the marketplaceOrder
  • 1lines in your books from each payout statement, after the marketplace feeEntry

Your agent does

Integration.connect → Integration.sync
You, to your agent

List renewal dates on AWS Marketplace.

Sell through AWS Marketplace.

Let buyers put us on their cloud bill.

# 1. Integration.connect
INTEGRATION=$(curl -X POST https://api.sb/leaseline.app/integrations/connect \
  -H "Authorization: Bearer $STARTUP_BUILDER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"system":"billing","scope":"startup","grants":["listings","orders","payouts"],"venue":"aws-marketplace"}' | jq -r '.integration["$id"] | split("/") | last')

# 2. Integration.sync
curl -X POST https://api.sb/leaseline.app/integrations/$INTEGRATION/sync \
  -H "Authorization: Bearer $STARTUP_BUILDER_API_KEY"
import { $ } from 'startup-builder'

const { integration } = await $.Integration.connect({ system: 'billing', scope: 'startup', grants: ['listings', 'orders', 'payouts'], venue: 'aws-marketplace' })
await $.Integration.sync({ integration: integration.$id })
INTEGRATION=$(npx startup-builder do Integration.connect --json '{"system":"billing","scope":"startup","grants":["listings","orders","payouts"],"venue":"aws-marketplace"}' | jq -r '.integration["$id"] | split("/") | last')
npx startup-builder do Integration.sync --json '{"integration":"'"$INTEGRATION"'"}'
{
  "name": "do",
  "arguments": {
    "code": "const { integration } = await $.Integration.connect({ system: 'billing', scope: 'startup', grants: ['listings', 'orders', 'payouts'], venue: 'aws-marketplace' })\nreturn await $.Integration.sync({ integration: integration.$id })"
  }
}

Change it

  • Make a private offer for Harbor Residential there.
  • List the data product too.
  • How much did the marketplace pay us last month?

Under the hood

Systems
Billing, Ledger
Nouns
Integration, Order, Entry
Events
Integration.connected, Integration.synced