openapi: 3.1.0
info:
title: Beckn-ONIX Specification
description: Transaction Layer APIs for Beckn-ONIX Specification.
version: "0.1"
servers:
- url: https://ps-bap-client.becknprotocol.io
description: BOC Network
paths:
/search:
post:
tags:
- Beckn Provider Platform(BPP)
- Beckn Gateway (BG)
description: Consumer Interface declares the customer's intent to buy/avail products or services
requestBody:
content:
application/json:
schema:
type: object
properties:
context:
allOf:
- $ref: "#/components/schemas/Context"
- properties:
action:
enum:
- search
message:
type: object
properties:
intent:
$ref: "#/components/schemas/Intent"
required:
- context
- message
responses:
default:
description: Acknowledgement of message received after successful validation of schema and signature
content:
application/json:
schema:
type: object
properties:
message:
type: object
properties:
ack:
$ref: "#/components/schemas/Ack"
required:
- ack
error:
$ref: "#/components/schemas/Error"
required:
- message
/select:
post:
tags:
- Beckn Provider Platform(BPP)
description: Consumer Interface declares the customer's cart (or equivalent) created by selecting objects from the catalog
requestBody:
content:
application/json:
schema:
type: object
properties:
context:
allOf:
- $ref: "#/components/schemas/Context"
- properties:
action:
enum:
- select
required:
- action
message:
type: object
properties:
order:
$ref: "#/components/schemas/Order"
required:
- order
required:
- context
- message
responses:
default:
description: Acknowledgement of message received after successful validation of schema and signature
content:
application/json:
schema:
type: object
properties:
message:
type: object
properties:
ack:
$ref: "#/components/schemas/Ack"
required:
- ack
error:
$ref: "#/components/schemas/Error"
required:
- message
/init:
post:
tags:
- Beckn Provider Platform(BPP)
description: Initialize an order by providing billing and/or shipping details
requestBody:
content:
application/json:
schema:
type: object
properties:
context:
allOf:
- $ref: "#/components/schemas/Context"
- properties:
action:
enum:
- init
required:
- action
message:
type: object
properties:
order:
$ref: "#/components/schemas/Order"
required:
- order
required:
- context
- message
responses:
default:
description: Acknowledgement of message received after successful validation of schema and signature
content:
application/json:
schema:
type: object
properties:
message:
type: object
properties:
ack:
$ref: "#/components/schemas/Ack"
required:
- ack
error:
$ref: "#/components/schemas/Error"
required:
- message
/confirm:
post:
tags:
- Beckn Provider Platform(BPP)
description: Initialize an order by providing billing and/or shipping details
requestBody:
content:
application/json:
schema:
type: object
properties:
context:
allOf:
- $ref: "#/components/schemas/Context"
- properties:
action:
enum:
- confirm
required:
- action
message:
type: object
properties:
order:
$ref: "#/components/schemas/Order"
required:
- order
required:
- context
- message
responses:
default:
description: Acknowledgement of message received after successful validation of schema and signature
content:
application/json:
schema:
type: object
properties:
message:
type: object
properties:
ack:
$ref: "#/components/schemas/Ack"
required:
- ack
error:
$ref: "#/components/schemas/Error"
required:
- message
/status:
post:
tags:
- Beckn Provider Platform(BPP)
description: Fetch the latest order object
requestBody:
content:
application/json:
schema:
type: object
properties:
context:
allOf:
- $ref: "#/components/schemas/Context"
- properties:
action:
enum:
- status
required:
- action
message:
type: object
properties:
order_id:
$ref: "#/components/schemas/Order/properties/id"
required:
- order_id
required:
- context
- message
responses:
default:
description: Acknowledgement of message received after successful validation of schema and signature
content:
application/json:
schema:
type: object
properties:
message:
type: object
properties:
ack:
$ref: "#/components/schemas/Ack"
required:
- ack
error:
$ref: "#/components/schemas/Error"
required:
- message
/track:
post:
tags:
- Beckn Provider Platform(BPP)
description: Track an active order
requestBody:
content:
application/json:
schema:
type: object
properties:
context:
allOf:
- $ref: "#/components/schemas/Context"
- properties:
action:
enum:
- track
required:
- action
message:
type: object
properties:
order_id:
$ref: "#/components/schemas/Order/properties/id"
callback_url:
type: string
format: uri
required:
- order_id
required:
- context
- message
responses:
default:
description: Acknowledgement of message received after successful validation of schema and signature
content:
application/json:
schema:
type: object
properties:
message:
type: object
properties:
ack:
$ref: "#/components/schemas/Ack"
required:
- ack
error:
$ref: "#/components/schemas/Error"
required:
- message
/cancel:
post:
tags:
- Beckn Provider Platform(BPP)
description: Cancel an order
requestBody:
content:
application/json:
schema:
type: object
properties:
context:
allOf:
- $ref: "#/components/schemas/Context"
- properties:
action:
enum:
- cancel
required:
- action
message:
type: object
properties:
order_id:
$ref: "#/components/schemas/Order/properties/id"
cancellation_reason_id:
$ref: "#/components/schemas/Option/properties/id"
descriptor:
$ref: "#/components/schemas/Descriptor"
required:
- order_id
required:
- context
- message
responses:
default:
description: Acknowledgement of message received after successful validation of schema and signature
content:
application/json:
schema:
type: object
properties:
message:
type: object
properties:
ack:
$ref: "#/components/schemas/Ack"
required:
- ack
error:
$ref: "#/components/schemas/Error"
required:
- message
/update:
post:
tags:
- Beckn Provider Platform(BPP)
description: Remove object
requestBody:
content:
application/json:
schema:
type: object
properties:
context:
allOf:
- $ref: "#/components/schemas/Context"
- properties:
action:
enum:
- update
required:
- action
message:
type: object
properties:
update_target:
description: 'Comma separated values of order objects being updated. For example: ```"update_target":"item,billing,fulfillment"```'
type: string
order:
description: Updated order object
allOf:
- $ref: "#/components/schemas/Order"
required:
- update_target
- order
required:
- context
- message
responses:
default:
description: Acknowledgement of message received after successful validation of schema and signature
content:
application/json:
schema:
type: object
properties:
message:
type: object
properties:
ack:
$ref: "#/components/schemas/Ack"
required:
- ack
error:
$ref: "#/components/schemas/Error"
required:
- message
/rating:
post:
tags:
- Beckn Provider Platform(BPP)
description: Provide feedback on a service
requestBody:
content:
application/json:
schema:
type: object
properties:
context:
allOf:
- $ref: "#/components/schemas/Context"
- properties:
action:
enum:
- rating
required:
- action
message:
type: object
properties:
ratings:
type: array
items:
$ref: "#/components/schemas/Rating"
required:
- context
- message
responses:
default:
description: Acknowledgement of message received after successful validation of schema and signature
content:
application/json:
schema:
type: object
properties:
message:
type: object
properties:
ack:
$ref: "#/components/schemas/Ack"
required:
- ack
error:
$ref: "#/components/schemas/Error"
required:
- message
/support:
post:
tags:
- Beckn Provider Platform(BPP)
description: Fetch support information
requestBody:
content:
application/json:
schema:
type: object
properties:
context:
allOf:
- $ref: "#/components/schemas/Context"
- properties:
action:
enum:
- support
required:
- action
message:
type: object
properties:
support:
$ref: "#/components/schemas/Support"
required:
- context
- message
responses:
default:
description: Acknowledgement of message received after successful validation of schema and signature
content:
application/json:
schema:
type: object
properties:
message:
type: object
properties:
ack:
$ref: "#/components/schemas/Ack"
required:
- ack
error:
$ref: "#/components/schemas/Error"
required:
- message
/get_cancellation_reasons:
post:
tags:
- Beckn Provider Platform(BPP)
description: BAP fetches the list of cancellation reasons from BPP
requestBody:
content:
application/json:
schema:
type: object
properties:
context:
allOf:
- $ref: '#/components/schemas/Context'
- properties:
action:
enum:
- get_cancellation_reasons
required:
- action
required:
- context
responses:
default:
description: Acknowledgement of message received after successful validation of schema and signature
content:
application/json:
schema:
type: object
properties:
message:
type: object
properties:
ack:
$ref: "#/components/schemas/Ack"
required:
- ack
error:
$ref: "#/components/schemas/Error"
required:
- message
/get_return_reasons:
post:
tags:
- Beckn Provider Platform(BPP)
description: BAP requests BPP to provide the list of return reasons
requestBody:
content:
application/json:
schema:
type: object
properties:
context:
allOf:
- $ref: '#/components/schemas/Context'
- properties:
action:
enum:
- get_return_reasons
required:
- action
required:
- context
responses:
default:
description: Acknowledgement of message received after successful validation of schema and signature
content:
application/json:
schema:
type: object
properties:
message:
type: object
properties:
ack:
$ref: "#/components/schemas/Ack"
required:
- ack
error:
$ref: "#/components/schemas/Error"
required:
- message
/get_rating_categories:
post:
tags:
- Beckn Provider Platform(BPP)
description: BAP requests BPP to provide the list of entities that can be rated on its system
requestBody:
content:
application/json:
schema:
type: object
properties:
context:
allOf:
- $ref: '#/components/schemas/Context'
- properties:
action:
enum:
- get_rating_categories
required:
- action
required:
- context
responses:
default:
description: Acknowledgement of message received after successful validation of schema and signature
content:
application/json:
schema:
type: object
properties:
message:
type: object
properties:
ack:
$ref: "#/components/schemas/Ack"
required:
- ack
error:
$ref: "#/components/schemas/Error"
required:
- message
/on_search:
post:
tags:
- Beckn Application Platform(BAP)
description: Provider Platform sends its catalog in response to a search request.
requestBody:
content:
application/json:
schema:
type: object
properties:
context:
allOf:
- $ref: "#/components/schemas/Context"
- properties:
action:
enum:
- on_search
required:
- action
message:
type: object
properties:
catalog:
$ref: "#/components/schemas/Catalog"
required:
- catalog
error:
$ref: "#/components/schemas/Error"
required:
- context
responses:
default:
description: Acknowledgement of message received after successful validation of schema and signature
content:
application/json:
schema:
type: object
properties:
message:
type: object
properties:
ack:
$ref: "#/components/schemas/Ack"
required:
- ack
error:
$ref: "#/components/schemas/Error"
required:
- message
/on_select:
post:
tags:
- Beckn Application Platform(BAP)
description: Send draft order object with quoted price for selected items
requestBody:
content:
application/json:
schema:
type: object
properties:
context:
allOf:
- $ref: "#/components/schemas/Context"
- properties:
action:
enum:
- on_select
required:
- action
message:
type: object
properties:
order:
$ref: "#/components/schemas/Order"
error:
$ref: "#/components/schemas/Error"
required:
- context
responses:
default:
description: Acknowledgement of message received after successful validation of schema and signature
content:
application/json:
schema:
type: object
properties:
message:
type: object
properties:
ack:
$ref: "#/components/schemas/Ack"
required:
- ack
error:
$ref: "#/components/schemas/Error"
required:
- message
/on_init:
post:
tags:
- Beckn Application Platform(BAP)
description: Send order object with payment details updated
requestBody:
content:
application/json:
schema:
type: object
properties:
context:
allOf:
- $ref: "#/components/schemas/Context"
- properties:
action:
enum:
- on_init
required:
- action
message:
type: object
properties:
order:
$ref: "#/components/schemas/Order"
required:
- order
error:
$ref: "#/components/schemas/Error"
required:
- context
responses:
default:
description: Acknowledgement of message received after successful validation of schema and signature
content:
application/json:
schema:
type: object
properties:
message:
type: object
properties:
ack:
$ref: "#/components/schemas/Ack"
required:
- ack
error:
$ref: "#/components/schemas/Error"
required:
- message
/on_confirm:
post:
tags:
- Beckn Application Platform(BAP)
description: Send active order object
requestBody:
content:
application/json:
schema:
type: object
properties:
context:
allOf:
- $ref: "#/components/schemas/Context"
- properties:
action:
enum:
- on_confirm
required:
- action
message:
type: object
properties:
order:
$ref: "#/components/schemas/Order"
required:
- order
error:
$ref: "#/components/schemas/Error"
required:
- context
responses:
default:
description: Acknowledgement of message received after successful validation of schema and signature
content:
application/json:
schema:
type: object
properties:
message:
type: object
properties:
ack:
$ref: "#/components/schemas/Ack"
required:
- ack
error:
$ref: "#/components/schemas/Error"
required:
- message
/on_track:
post:
tags:
- Beckn Application Platform(BAP)
description: Send tracking details of an active order
requestBody:
content:
application/json:
schema:
type: object
properties:
context:
allOf:
- $ref: "#/components/schemas/Context"
- properties:
action:
enum:
- on_track
required:
- action
message:
type: object
properties:
tracking:
$ref: "#/components/schemas/Tracking"
required:
- tracking
error:
$ref: "#/components/schemas/Error"
required:
- context
responses:
default:
description: Acknowledgement of message received after successful validation of schema and signature
content:
application/json:
schema:
type: object
properties:
message:
type: object
properties:
ack:
$ref: "#/components/schemas/Ack"
required:
- ack
error:
$ref: "#/components/schemas/Error"
required:
- message
/on_cancel:
post:
tags:
- Beckn Application Platform(BAP)
description: Send cancellation request_id with reasons list in case of cancellation request. Else send cancelled order object
requestBody:
content:
application/json:
schema:
type: object
properties:
context:
allOf:
- $ref: "#/components/schemas/Context"
- properties:
action:
enum:
- on_cancel
required:
- action
message:
type: object
properties:
order:
$ref: "#/components/schemas/Order"
required:
- order
error:
$ref: "#/components/schemas/Error"
required:
- context
responses:
default:
description: Acknowledgement of message received after successful validation of schema and signature
content:
application/json:
schema:
type: object
properties:
message:
type: object
properties:
ack:
$ref: "#/components/schemas/Ack"
required:
- ack
error:
$ref: "#/components/schemas/Error"
required:
- message
/on_update:
post:
tags:
- Beckn Application Platform(BAP)
description: Returns updated service with updated runtime object
requestBody:
content:
application/json:
schema:
type: object
properties:
context:
allOf:
- $ref: "#/components/schemas/Context"
- properties:
action:
enum:
- on_update
required:
- action
message:
type: object
properties:
order:
$ref: "#/components/schemas/Order"
required:
- order
error:
$ref: "#/components/schemas/Error"
required:
- context
responses:
default:
description: Acknowledgement of message received after successful validation of schema and signature
content:
application/json:
schema:
type: object
properties:
message:
type: object
properties:
ack:
$ref: "#/components/schemas/Ack"
required:
- ack
error:
$ref: "#/components/schemas/Error"
required:
- message
/on_status:
post:
tags:
- Beckn Application Platform(BAP)
description: Fetch the status of a Service
requestBody:
content:
application/json:
schema:
type: object
properties:
context:
allOf:
- $ref: "#/components/schemas/Context"
- properties:
action:
enum:
- on_status
required:
- action
message:
type: object
properties:
order:
$ref: "#/components/schemas/Order"
required:
- order
error:
$ref: "#/components/schemas/Error"
required:
- context
responses:
default:
description: Acknowledgement of message received after successful validation of schema and signature
content:
application/json:
schema:
type: object
properties:
message:
type: object
properties:
ack:
$ref: "#/components/schemas/Ack"
required:
- ack
error:
$ref: "#/components/schemas/Error"
required:
- message
/on_rating:
post:
tags:
- Beckn Application Platform(BAP)
description: Provide feedback on a service
requestBody:
content:
application/json:
schema:
type: object
properties:
context:
allOf:
- $ref: "#/components/schemas/Context"
- properties:
action:
enum:
- on_rating
required:
- action
message:
type: object
properties:
feedback_form:
description: A feedback form to allow the user to provide additional information on the rating provided
allOf:
- $ref: "#/components/schemas/XInput"
error:
$ref: "#/components/schemas/Error"
required:
- context
- message
responses:
default:
description: Acknowledgement of message received after successful validation of schema and signature
content:
application/json:
schema:
type: object
properties:
message:
type: object
properties:
ack:
$ref: "#/components/schemas/Ack"
required:
- ack
error:
$ref: "#/components/schemas/Error"
required:
- message
/on_support:
post:
tags:
- Beckn Application Platform(BAP)
description: Contact Support
requestBody:
content:
application/json:
schema:
type: object
properties:
context:
allOf:
- $ref: "#/components/schemas/Context"
- properties:
action:
enum:
- on_support
required:
- action
message:
type: object
properties:
support:
$ref: "#/components/schemas/Support"
error:
$ref: "#/components/schemas/Error"
required:
- context
responses:
default:
description: Acknowledgement of message received after successful validation of schema and signature
content:
application/json:
schema:
type: object
properties:
message:
type: object
properties:
ack:
$ref: "#/components/schemas/Ack"
required:
- ack
error:
$ref: "#/components/schemas/Error"
required:
- message
/return_reasons:
post:
tags:
- Beckn Application Platform(BAP)
description: BPP provides the list of return reasons to the BAP
requestBody:
content:
application/json:
schema:
type: object
properties:
context:
allOf:
- $ref: '#/components/schemas/Context'
- properties:
action:
enum:
- return_reasons
required:
- action
message:
type: object
properties:
return_reasons:
type: array
items:
$ref: '#/components/schemas/Option'
required:
- return_reasons
required:
- context
- message
responses:
default:
description: Acknowledgement of message received after successful validation of schema and signature
content:
application/json:
schema:
type: object
properties:
message:
type: object
properties:
ack:
$ref: "#/components/schemas/Ack"
required:
- ack
error:
$ref: "#/components/schemas/Error"
required:
- message
/rating_categories:
post:
tags:
- Beckn Application Platform(BAP)
description: BPP provides the list of entities that can be rated in its system to the BAP
requestBody:
content:
application/json:
schema:
type: object
properties:
context:
allOf:
- $ref: '#/components/schemas/Context'
- properties:
action:
enum:
- rating_categories
required:
- action
message:
type: object
properties:
rating_categories:
type: array
items:
$ref: '#/components/schemas/Rating/properties/rating_category'
required:
- return_reasons
required:
- context
- message
responses:
default:
description: Acknowledgement of message received after successful validation of schema and signature
content:
application/json:
schema:
type: object
properties:
message:
type: object
properties:
ack:
$ref: "#/components/schemas/Ack"
required:
- ack
error:
$ref: "#/components/schemas/Error"
required:
- message
/cancellation_reasons:
post:
tags:
- Beckn Application Platform(BAP)
description: BPP sends cancellation reasons to BAP
requestBody:
content:
application/json:
schema:
type: object
properties:
context:
allOf:
- $ref: '#/components/schemas/Context'
- properties:
action:
enum:
- cancellation_reasons
required:
- action
message:
type: object
properties:
cancellation_reasons:
type: array
items:
$ref: '#/components/schemas/Option'
required:
- cancellation_reasons
required:
- context
- message
responses:
default:
description: Acknowledgement of message received after successful validation of schema and signature
content:
application/json:
schema:
type: object
properties:
message:
type: object
properties:
ack:
$ref: "#/components/schemas/Ack"
required:
- ack
error:
$ref: "#/components/schemas/Error"
required:
- message
/lookup:
description: Look up platforms listed on the network registry. This is a protected endpoint only accessible to network participants that have subscribed to the network (i.e Subscribers). Any subscriber can query the Registry by sending a `Lookup` object. The Registry will respond with all the platforms that match the lookup parameters.
post:
tags:
- Registry
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/Subscription'
responses:
default:
description: Array of subscribers matching the lookup request attributes
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/Subscription'
/subscribe:
description: 'Subscribe to a network. This endpoint allows registered network participants (a.k.a Subscribers), to update their subscription details like `domain`, `location`, `signing_public_key`, `encr_public_key` on the registry. The fields that can be updated can vary from network to network. Every network policy must contain the fields that can be updated for each type of subscriber. For example, the network policy may allow BAPs and BPPs to update all fields, but BGs may not be allowed to update any field except the public keys.'
post:
tags:
- Registry
requestBody:
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/Subscription'
- properties:
nonce:
description: A randomly generated uuid nonce value
type: string
format: uuid
responses:
default:
description: The Registry returns the status of the subscription request.
content:
application/json:
schema:
type: object
properties:
status:
type: string
enum:
- UNDER_SUBSCRIPTION
/on_subscribe:
description: 'This endpoint is implemented by all platforms that have successfully passed the certification and compliance requirements on a network. In this endpoint, the Subscriber receives an encrypted challenge string generated by the Registry to verify the subscription details of the Network Participant sent during the `subscribe` call. During this call, Registry also validates the SSL certificate of Subscriber. If the SSL certificate is invalid, the Registry will update the subscriber’s status = INVALID_SSL and call the Subscriber''s `on_subscribe` endpoint again. Anytime the state of the Subscriber changes in the registry, the Registry can make an unsolicited call to the subscriber''s `on_subscribe` endpoint. This request must be digitally signed by the Registry. The Registry''s public key must be published at a publicly accessible trusted location so that the Subscribers can save it on their systems.'
post:
tags:
- Beckn Provider Platform(BPP)
- Beckn Application Platform(BAP)
- Beckn Gateway (BG)
requestBody:
content:
application/json:
schema:
type: object
properties:
status:
description: The current status of the Registrant
type: string
enum:
- INITIATED
- UNDER_SUBSCRIPTION
- SUBSCRIBED
- INVALID_SSL
- UNSUBSCRIBED
challenge:
type: string
description: A random string generated by the registry encrypted with the subscriber's encryption public key
required:
- challenge
responses:
default:
description: Network Participant decrypts the challenge string using its private key and returns the decrypted value.
content:
application/json:
schema:
type: object
properties:
answer:
description: Decrypted challenge string
type: string
required:
- answer
components:
schemas:
Ack:
description: "Describes the acknowledgement sent in response to an API call. If the implementation uses HTTP/S, then Ack must be returned in the same session. Every API call to a Provider Platform must be responded to with an Ack whether the Provider Platform intends to respond with a callback or not. This has one property called `status` that indicates the status of the Acknowledgement."
type: object
properties:
status:
type: string
description: "The status of the acknowledgement. If the request passes the validation criteria of the Provider Platform, then this is set to ACK. If a Provider Platform responds with status = `ACK` to a request, it is required to respond with a callback. If the request fails the validation criteria, then this is set to NACK. Additionally, if a Provider Platform does not intend to respond with a callback even after the request meets the validation criteria, it should set this value to `NACK`."
enum:
- ACK
- NACK
tags:
description: A list of tags containing any additional information sent along with the Acknowledgement.
type: array
items:
$ref: "#/components/schemas/TagGroup"
AddOn:
description: Describes an additional item offered as a value-addition to a product or service. This does not exist independently in a catalog and is always associated with an item.
type: object
properties:
id:
description: Provider-defined ID of the add-on
type: string
descriptor:
$ref: "#/components/schemas/Descriptor"
price:
$ref: "#/components/schemas/Price"
Address:
description: Describes a postal address.
type: string
Agent:
description: "Describes the direct performer, driver or executor that fulfills an order. It is usually a person. But in some rare cases, it could be a non-living entity like a drone, or a bot. Some examples of agents are Doctor in the healthcare sector, a driver in the mobility sector, or a delivery person in the logistics sector. This object can be set at any stage of the order lifecycle. This can be set at the discovery stage when the Provider Platform wants to provide details on the agent fulfilling the order, like in healthcare, where the doctor's name appears during search. This object can also used to search for a particular person that the customer wants fulfilling an order. Sometimes, this object gets instantiated after the order is confirmed, like in the case of on-demand taxis, where the driver is assigned after the user confirms the ride."
properties:
id:
type: string
person:
$ref: "#/components/schemas/Person"
contact:
$ref: "#/components/schemas/Contact"
organization:
$ref: "#/components/schemas/Organization"
rating:
$ref: "#/components/schemas/Rating/properties/value"
Authorization:
description: "Describes an authorization mechanism used to start or end the fulfillment of an order. For example, in the mobility sector, the driver may require a one-time password to initiate the ride. In the healthcare sector, a patient may need to provide a password to open a video conference link during a teleconsultation."
type: object
properties:
type:
description: Type of authorization mechanism used. The allowed values for this field can be published as part of the network policy.
type: string
token:
description: "Token used for authorization. This is typically generated at the Provider Platform. The Consumer Interface can send this value to the user via any channel that it uses to authenticate the user like SMS, Email, Push notification, or in-app rendering."
type: string
valid_from:
description: Timestamp in RFC3339 format from which token is valid
type: string
format: date-time
valid_to:
description: Timestamp in RFC3339 format until which token is valid
type: string
format: date-time
status:
description: Status of the token
type: string
Billing:
description: "Describes the billing details of an entity.
This has properties like name,organization,address,email,phone,time,tax_number, created_at,updated_at"
type: object
properties:
name:
description: Name of the billable entity
type: string
organization:
description: Details of the organization being billed.
allOf:
- $ref: "#/components/schemas/Organization"
address:
description: The address of the billable entity
allOf:
- $ref: "#/components/schemas/Address"
state:
description: The state where the billable entity resides. This is important for state-level tax calculation
allOf:
- $ref: "#/components/schemas/State"
city:
description: The city where the billable entity resides.
allOf:
- $ref: "#/components/schemas/City"
email:
description: Email address where the bill is sent to
type: string
format: email
phone:
description: Phone number of the billable entity
type: string
time:
description: Details regarding the billing period
allOf:
- $ref: "#/components/schemas/Time"
tax_id:
description: ID of the billable entity as recognized by the taxation authority
type: string
Cancellation:
description: Describes a cancellation event
type: object
properties:
time:
description: Date-time when the order was cancelled by the buyer
type: string
format: date-time
cancelled_by:
type: string
enum:
- CONSUMER
- PROVIDER
reason:
description: The reason for cancellation
allOf:
- $ref: "#/components/schemas/Option"
additional_description:
description: Any additional information regarding the nature of cancellation
allOf:
- $ref: "#/components/schemas/Descriptor"
CancellationTerm:
description: Describes the cancellation terms of an item or an order. This can be referenced at an item or order level. Item-level cancellation terms can override the terms at the order level.
type: object
properties:
fulfillment_state:
description: The state of fulfillment during which this term is applicable.
allOf:
- $ref: "#/components/schemas/FulfillmentState"
reason_required:
description: Indicates whether a reason is required to cancel the order
type: boolean
cancel_by:
description: Information related to the time of cancellation.
allOf:
- $ref: "#/components/schemas/Time"
cancellation_fee:
$ref: "#/components/schemas/Fee"
xinput:
$ref: "#/components/schemas/XInput"
external_ref:
$ref: "#/components/schemas/MediaFile"
Catalog:
description: "Describes the products or services offered by a Provider Platform. This is typically sent as the response to a search intent from a Consumer Interface. The payment terms, offers and terms of fulfillment supported by the Provider Platform can also be included here. The Provider Platform can show hierarchical nature of products/services in its catalog using the parent_category_id in categories. The Provider Platform can also send a ttl (time to live) in the context which is the duration for which a Consumer Interface can cache the catalog and use the cached catalog.
This has properties like bbp/descriptor,bbp/categories,bbp/fulfillments,bbp/payments,bbp/offers,bbp/providers and exp
This is used in the following situations.