TBBN.Merchant Platform docs
WORKING

TradeSessions

get/v1/trade-sessions

List trade sessions for a seller (as either sellerA or sellerB). Trade sessions are always system-generated from an accepted offer, never created directly via this API.

Parameters

sellerIdqueryrequired

Response (200)

get/v1/trade-sessions/{id}

Get a trade session

Parameters

idpathrequired

Response (200)

FieldTypeRequired
idstring (uuid)
offerIdstring,null (uuid)
sellerAIdstring (uuid)
sellerBIdstring (uuid)
statusDRAFT | PENDING | OFFERED | ACCEPTED | RESERVING | RESERVED | WAITING_CHECKOUT_A | WAITING_CHECKOUT_B | CHECKOUT_A_COMPLETE | CHECKOUT_B_COMPLETE | SCHEDULING_A | SCHEDULING_B | EXCHANGE_A_CONFIRMED | EXCHANGE_B_CONFIRMED | EXCHANGE_FAILED | LOCKED | FULFILLMENT | FULFILLED | COMPLETED | CANCELLED | EXPIRED | PAYMENT_FAILED | RESERVATION_FAILED | FULFILLMENT_FAILED | RETURNED | REFUNDED
fulfillmentModeMERCHANT_CHECKOUT | PEER_TO_PEER
tradeValuenumbernull
currencystring
createdAtstring (date-time)
updatedAtstring (date-time)
expiresAtstring,null (date-time)
lockedAtstring,null (date-time)
completedAtstring,null (date-time)
listingsAobject[]
listingsBobject[]
reservationsobject[]
paymentsobject[]
post/v1/trade-sessions/{id}/cancel

Cancel a trade session — only a party to the trade (sellerA or sellerB) may cancel, and only while the session is before LOCKED/FULFILLMENT/FULFILLED/COMPLETED/CANCELLED/ RETURNED/REFUNDED. Releases any RESERVED reservations as a side effect.

Parameters

idpathrequired
optional

Request body

FieldTypeRequired
actingSellerIdstring (uuid)yes
reasonstring

Response (201)

FieldTypeRequired
idstring (uuid)
offerIdstring,null (uuid)
sellerAIdstring (uuid)
sellerBIdstring (uuid)
statusDRAFT | PENDING | OFFERED | ACCEPTED | RESERVING | RESERVED | WAITING_CHECKOUT_A | WAITING_CHECKOUT_B | CHECKOUT_A_COMPLETE | CHECKOUT_B_COMPLETE | SCHEDULING_A | SCHEDULING_B | EXCHANGE_A_CONFIRMED | EXCHANGE_B_CONFIRMED | EXCHANGE_FAILED | LOCKED | FULFILLMENT | FULFILLED | COMPLETED | CANCELLED | EXPIRED | PAYMENT_FAILED | RESERVATION_FAILED | FULFILLMENT_FAILED | RETURNED | REFUNDED
fulfillmentModeMERCHANT_CHECKOUT | PEER_TO_PEER
tradeValuenumbernull
currencystring
createdAtstring (date-time)
updatedAtstring (date-time)
expiresAtstring,null (date-time)
lockedAtstring,null (date-time)
completedAtstring,null (date-time)
listingsAobject[]
listingsBobject[]
reservationsobject[]
paymentsobject[]
post/v1/trade-sessions/{id}/scheduling/confirm

Peer-to-peer trade completion (Phase 26) — either party confirms the exchange happened on their side. Once both sides have confirmed, the session moves to COMPLETED.

Parameters

idpathrequired
optional

Request body

FieldTypeRequired
actingSellerIdstring (uuid)yes
confirmedByMerchantUserIdstring (uuid)

Response (200)

FieldTypeRequired
idstring (uuid)
offerIdstring,null (uuid)
sellerAIdstring (uuid)
sellerBIdstring (uuid)
statusDRAFT | PENDING | OFFERED | ACCEPTED | RESERVING | RESERVED | WAITING_CHECKOUT_A | WAITING_CHECKOUT_B | CHECKOUT_A_COMPLETE | CHECKOUT_B_COMPLETE | SCHEDULING_A | SCHEDULING_B | EXCHANGE_A_CONFIRMED | EXCHANGE_B_CONFIRMED | EXCHANGE_FAILED | LOCKED | FULFILLMENT | FULFILLED | COMPLETED | CANCELLED | EXPIRED | PAYMENT_FAILED | RESERVATION_FAILED | FULFILLMENT_FAILED | RETURNED | REFUNDED
fulfillmentModeMERCHANT_CHECKOUT | PEER_TO_PEER
tradeValuenumbernull
currencystring
createdAtstring (date-time)
updatedAtstring (date-time)
expiresAtstring,null (date-time)
lockedAtstring,null (date-time)
completedAtstring,null (date-time)
listingsAobject[]
listingsBobject[]
reservationsobject[]
paymentsobject[]
post/v1/trade-sessions/{id}/scheduling/fail

Either party reports the peer-to-peer exchange failed (no-show, item mismatch)

Parameters

idpathrequired
optional

Request body

FieldTypeRequired
actingSellerIdstring (uuid)yes
reasonstring

Response (200)

FieldTypeRequired
idstring (uuid)
offerIdstring,null (uuid)
sellerAIdstring (uuid)
sellerBIdstring (uuid)
statusDRAFT | PENDING | OFFERED | ACCEPTED | RESERVING | RESERVED | WAITING_CHECKOUT_A | WAITING_CHECKOUT_B | CHECKOUT_A_COMPLETE | CHECKOUT_B_COMPLETE | SCHEDULING_A | SCHEDULING_B | EXCHANGE_A_CONFIRMED | EXCHANGE_B_CONFIRMED | EXCHANGE_FAILED | LOCKED | FULFILLMENT | FULFILLED | COMPLETED | CANCELLED | EXPIRED | PAYMENT_FAILED | RESERVATION_FAILED | FULFILLMENT_FAILED | RETURNED | REFUNDED
fulfillmentModeMERCHANT_CHECKOUT | PEER_TO_PEER
tradeValuenumbernull
currencystring
createdAtstring (date-time)
updatedAtstring (date-time)
expiresAtstring,null (date-time)
lockedAtstring,null (date-time)
completedAtstring,null (date-time)
listingsAobject[]
listingsBobject[]
reservationsobject[]
paymentsobject[]