# Create a new online transaction with both users This endpoint is an optimised call that allows a transaction to be created and joined in a single request. It requires the online user to have granted the scope to the client that is performing the request. This endpoint allows creating a transaction with both buyer and seller as guest or full users, or one party to be guest user and the other full user. Endpoint: POST /me/transactions/create_with_guest_user Version: 0.1.0 Security: OAuth2 ## Request fields (application/json): - `buyer_id` (string, required) The id of the buyer for this transaction (it can be full user id or guest user id). - `charge` (integer, required) The value returned from a request to . - `charge_calculator_version` (integer, required) The value returned from a request to . - `charge_seller` (integer) The seller value returned from a request to . - `client_id` (string) - `creator_role` (string, required) Enum: "buyer", "seller" - `currency` (string, required) Enum: "aud", "eur", "gbp", "myr", "pln", "sek", "usd", "huf" - `description` (string, required) A description of the goods being sold. - `features` (array) contains flags that modify the transaction flow. Enum: "require_seller_acceptance", "use_hr_post", "use_shippo" - `postage_fee` (integer) The custom , this fee only applies in the case is enabled. - `price` (integer, required) The price of the goods being sold, in the 's smallest unit. The value should correspond to the Trustap charge created with this price, otherwise this request will fail with a error. - `seller_id` (string, required) The id of the seller for this transaction (it can be full user id or guest user id). ## Response 201 fields (application/json): - `amount_refunded` (integer) - `amount_released` (integer) - `buyer_id` (string) Example: "feb33a87-3917-4538-9260-127c8a6b5232" - `cancelled` (string) - `charge` (integer, required) Example: 78 - `charge_international_payment` (integer) - `charge_postage_buyer` (integer) - `charge_postage_client` (integer) - `charge_seller` (integer, required) - `claimed_by_buyer` (string) - `client_id` (string, required) Example: "trustap-app" - `complained` (string) - `complaint` (object) Example: {"description":"Item was fake"} - `complaint.description` (string, required) Example: "Item was fake" - `complaint_period_deadline` (string) - `complaint_period_ended` (string) - `created` (string, required) Example: "2019-12-25T09:00:00Z" - `currency` (string, required) The currency of the transaction. Note that, at present, the buyer must pay using the transaction's currency and the seller will be paid in the transaction's currency. Example: "eur" - `delivered` (string) Example: "2019-12-25T13:00:00Z" - `denied` (string) - `funds_released` (string) Example: "2019-12-26T14:00:00Z" - `id` (integer, required) Example: 1309 - `is_payment_in_progress` (boolean, required) If the transaction is paid via a delayed payment method, such as SEPA debit, this field will be until the payment has fully succeeded or failed. - `join_code` (string) - `joined` (string) Example: "2019-12-25T10:00:00Z" - `listing_creator_accepted` (string) - `listing_creator_rejected` (string) - `listing_id` (string) If the transaction is created from a listing then this is the ID of that listing; otherwise this property is omitted. - `listing_type` (string) Enum: "single_use", "multi_use" - `order_issue` (object) Example: {"description":"Delivery delayed"} - `order_issue_raised` (string) - `paid` (string) Example: "2019-12-25T11:00:00Z" - `payment_accepted` (string) - `payment_refunded` (string) - `posta_hr_tracking` (object) Example: {"barcode":"ABC123456","barcode_generated":"2019-12-26T14:00:00Z"} - `posta_hr_tracking.barcode` (string, required) Example: "ABC123456" - `posta_hr_tracking.barcode_generated` (string, required) Example: "2019-12-26T14:00:00Z" - `price` (integer, required) Example: 1234 - `quantity` (integer, required) Example: 1 - `released_to_seller` (boolean) - `review` (object) - `review.approved` (boolean) - `review.finished` (string) - `review.outcome_reason` (string) - `review.started` (string) - `review_flagged` (string) - `seller_id` (string) Example: "ad5bb99f-85bf-47e1-be0d-15e7541c6ad7" - `shippo_transaction_id` (string) - `status` (string, required) Example: "funds_released" - `tracked` (string) Example: "2019-12-25T12:00:00Z" - `tracking` (object) Example: {"carrier":"ups","tracking_code":"***"} - `tracking.carrier` (string, required) Example: "ups" - `tracking.tracking_code` (string, required) Example: "***" - `tracking_details_deadline` (string) - `tracking_details_window_started` (string) ## Response 400 fields (application/json): - `code` (string, required) Example: "negative_price" - `error` (string, required) A contextual description of the error that occurred. When handling errors the field should be used to determine the type of error that occurred, as the text in the field may change unexpectedly. Example: "`price` cannot be negative"