TBBN.Merchant Platform docs
WORKING

Checkout

post/v1/checkout/webhooks/payment

Merchant-facing payment status callback (mirrors the payment.completed/payment.failed webhook catalog entries). Reported completion of both sides' payments drives the trade session to LOCKED.

Parameters

optional

Request body

FieldTypeRequired
tradeSessionIdstring (uuid)yes
sideA | Byes
statuscompleted | failedyes
merchantCheckoutSessionRefstring
failedReasonstring
post/v1/checkout/webhooks/fulfillment

Merchant-facing fulfillment status callback — started requires the session be LOCKED, completed requires FULFILLMENT

Parameters

optional

Request body

FieldTypeRequired
tradeSessionIdstring (uuid)yes
statusstarted | completedyes
post/v1/checkout/trade-sessions/{id}/complete

Ops-triggered final completion once a trade session is FULFILLED — no automated signal exists yet for "both merchants confirm no open disputes/returns window", so this is the explicit manual interface for that step.

Parameters

idpathrequired
optional

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[]
get/v1/checkout/payments

Get both sides' payment records for a trade session

Parameters

tradeSessionIdqueryrequired

Response (200)