---
search:
  tags:
    - customer
    - POST
seo:
  description: >-
    Requires the X-Customer-Session header. The enterprise service… Reference
    for the POST /customer/orders/{id}/payment/pse endpoint in the FreeTicket
    B2B API.
sidebar:
  label: Open a PSE payment through MercadoPago (redirect)
  badge: POST
title: Open a PSE payment through MercadoPago (redirect)
type: openapi-operation
---
Requires the `X-Customer-Session` header. The enterprise service API key is OPTIONAL (with a key, results are additionally scoped to the workspace pinned to it). Creates a MercadoPago preference restricted to PSE and returns `redirectUrl` (`init_point`): the landing page must REDIRECT the browser there, not mount it in an iframe. The buyer picks their bank and confirms the transfer inside MercadoPago; on return, they land on `GET /api/mp/return` (our domain), which issues a 302 to the `returnUrl` sent in `POST /customer/orders` — the landing page must call `GET /customer/orders/{id}` for the authoritative status, never infer it from the return URL. The sale is confirmed by webhook when the bank settles the payment (asynchronous: it may take a while). Responds 409 with code `PAYMENT_UNAVAILABLE` if the reservation expired, the sale is no longer pending, a payment attempt is in flight with another gateway, or the event only charges through Bold. The sale must belong to the session's buyer (and, with a key, to the workspace pinned to it): anything else is 404. `{id}` accepts the sale id or its `reference`. Limited to 10 opens per minute per buyer (429 with `Retry-After`).

`POST /customer/orders/{id}/payment/pse`
