Skip to content

Billing

3 endpoints under /api/v1/billing.

GET /api/v1/billing #

Your organization's billing status

Responses

200 Billing account status for the acting organization.
Response body
  • configuredbooleanrequired
  • statusstringrequired
  • paddleCustomerIdstringrequired
401 Unauthenticated.
Response body
  • errorstringrequired
403 Not permitted (billing is owners/admins only).
Response body
  • errorstringrequired
PATCH /api/v1/billing/profile #

Update the org's tax/business details, written through to Paddle (owners/admins)

Request body

  • entityTypestring · enumrequired

    businessindividual

  • businessNamestring
  • taxIdentifierstring
  • countryCodestring
  • postalCodestring
  • citystring
  • firstLinestring
  • regionstring

Responses

200 The updated tax/business details.
Response body
  • entityTypestring · enumrequired

    businessindividual

  • businessNamestringrequired
  • taxIdentifierstringrequired
  • addressobjectrequired
    Show fields
    • countryCodestringrequired
    • postalCodestringrequired
    • citystringrequired
    • firstLinestringrequired
    • regionstringrequired
400 Invalid details (e.g. VAT ID or country).
Response body
  • errorstringrequired
401 Unauthenticated.
Response body
  • errorstringrequired
403 Not permitted (billing is owners/admins only).
Response body
  • errorstringrequired
POST /api/v1/billing/checkout #

Start billing setup (checkout, with the org's billing email) or manage an existing subscription (portal)

Responses

200 mode=checkout with a Paddle customer id for the overlay, or mode=portal with a customer-portal URL to redirect to.
Response body
  • modestring · enumrequired

    checkoutportal

  • paddleCustomerIdstring
  • urlstring
400 A billing email is required or invalid.
Response body
  • errorstringrequired
401 Unauthenticated.
Response body
  • errorstringrequired
403 Not permitted (billing is owners/admins only).
Response body
  • errorstringrequired
409 That billing email is already in use at the payment provider (use plus-addressing or another address).
Response body
  • errorstringrequired