MARKET

A trav茅s de este servicio podr谩s:

  • Enviar 贸rdenes de compra y venta de instrumentos al mercado como suscripciones y rescates de fondos comunes de inversi贸n.
  • Consultar el estado de una orden realizada.
  • Cancelar el envio de una orden.

POST/ market-orders

Endpoint para enviar ordenes de compra y venta de distintos instrumentos al mercado.

  • URL del Endpoint: POST/{{baseUrl}}/api/market/market-order/
Campo Tipo Descripci贸n
market_order_id int C贸digo identificador de la orden.
investment_account_id int C贸digo del comitente en ApiBroker.
market_instrument_id int C贸digo del instrumento de mercado.
market_operation_type str Tipo de operaci贸n: compra o venta.
currency_id str Master-tables: currencies.
amount float Importe de la transacci贸n.
quantity int Cantidad de nominales del instrumento a comprar/vender.
term int Plazo de la operaci贸n.
instrument_price float Precio del instrumento a operar.
by_amount bool Indica si la orden se ejecuta es por importe.
include_expenses_in_amount bool Indica si se incluyen los gastos de la orden en el importe.
at_market_price bool Indica si env铆a la orden con el precio del instrumento en el mercado.
instrument_type str Tipo de instrumento.
trade_date datetime Fecha de concertaci贸n de la orden.
settlement_date datetime Fecha de liquidaci贸n de la orden.
created_at datetime Fecha de creaci贸n de la orden.
updated_at datetime Fecha de 煤ltima actualizaci贸n de la orden.
market_order_status_id datetime Estado de la orden.
executed_quantity int Cantidad de nominales ejecutados.
pending_quantity int Cantidad de nominales pendientes.
external_id str Identificador 煤nico de la petici贸n. Lo env铆a el cliente, y sirve para evitar duplicados

Consideraciones para el envio de ordenes a mercado:

  • Existen 4 combinaciones posibles para el envio de ordenes:
  • "by_amount": true y "at_market_price": false: El campo "quantity" debe ser 0 ya que la orden se ejecuta por el importe indicado en "amount", ignorando la cantidad enviada, y al precio enviado en "instrument_price".

  • "by_amount": false y "at_market_price": false: El campo "amount" debe ser 0, ya que la orden se env铆a por la cantidad indicada en "quantity" y el precio enviado en "instrument_price".

  • "by_amount": false y "at_market_price": true: El campo "amount" debe ser 0, ya que la orden se env铆a por la cantidad indicada en "quantity" y el precio se env铆a al mercado por el que calcula ApiBroker al enviar la orden.

  • "by_amount": true y "at_market_price": true: El campo "quantity" debe ser 0 ya que la orden se ejecuta por el importe indicado en "amount", ignorando la cantidad enviada, y el precio se env铆a al mercado por el que calcula ApiBroker al enviar la orden.

  • Valores posibles para "market_operation_type": "buy" (compra) o "sell" (venta).

  • Valores posibles para "term": 0 (contado inmediato). 1 (operaciones a 24hs). 2 (operaciones a 48hs)
  • Los valores posibles para "market_instrument_id" se pueden obtener en la siguiente url: GET/{{baseUrl}}/api/instruments/market/all

Posibles estados de las ordenes:

market_order_status_id descripci贸n
SENDING_PENDING Pendiente de env铆o. Ser谩 enviada tan pronto sea posible.
RETRY Se intent贸 enviar pero no fue posible. Ser谩 enviada nuevamente tan pronto se pueda.
SENT Enviada, esperando la confirmaci贸n de BYMA.
OFFERED Ofertada. La orden est谩 ofertada en el mercado. Se ingres贸 para "buy" o "sell".
COMPLETED Completada. Se compr贸 o vendi贸 la cantidad indicada. Es un estado FINAL.
CANCELLED Cancelada. Se cancel贸 manualmente.
REJECTED Rechazada. El mercado rechaz贸 la orden. Es un estado FINAL.
PARTIALLY_COMPLETED Parcialmente completada. Se compr贸 o vendi贸 parcialmente. Es un estado temporal si es del d铆a, o un estado FINAL si la orden es de otro d铆a.
PENDING_CANCELLATION Pendiente de cancelaci贸n. Se pidi贸 la cancelaci贸n manual al mercado, pero este a煤n no la confirm贸.
NOT_SENT No enviada. Por alg煤n motivo fall贸 el env铆o de la orden. Es un estado FINAL.
EXPIRED Expirada. Las 贸rdenes expiran al cerrar el mercado. Es un estado FINAL.

Request:

{
  "investment_account_id": "int",
  "market_instrument_id": "int",
  "market_operation_type": "str",
  "currency_id": "str",
  "amount": "float",
  "quantity": "int",
  "term": "int",
  "instrument_price": "float",
  "by_amount": "bool",
  "at_market_price": "bool",
  "external_id": "str"
}

Response:

{
  "items": [
    {
      "investment_account_id": "int",
      "market_order_id": "int",
      "market_instrument_id": "int",
      "ticker": "str",
      "market_operation_type": "str",
      "currency_id": "str",
      "amount": "float",
      "net_amount": "float",
      "estimated_expenses": "float",
      "include_expenses_in_amount": "bool",
      "by_amount": "bool",
      "at_market_price": "bool",
      "quantity": "int",
      "term": "int",
      "instrument_price": "float",
      "instrument_type": "str",
      "trade_date": "date",
      "settlement_date": "date",
      "created_at": "datetime",
      "updated_at": "datetime",
      "market_order_status_id": "str",
      "executed_quantity": "int",
      "pending_quantity": "int",
      "external_id": "str"
    }
  ]
}

GET/ market-orders

Endpoint para consultar el estado de una orden.

  • URL del Endpoint: GET/{{baseUrl}}/api/market/market-order/

Se debe enviar como pathParam el "market_order_id":

  • URL del Endpoint: GET/{{baseUrl}}/api/market/market-order/{market_order_id}

Response:

{
  "items": [
    {
      "investment_account_id": "int",
      "market_order_id": "int",
      "market_instrument_id": "int",
      "ticker": "str",
      "market_operation_type": "str",
      "amount": "float",
      "net_amount": "float",
      "estimated_expenses": "float",
      "include_expenses_in_amount": "bool",
      "by_amount": "bool",
      "at_market_price": "bool",
      "quantity": "int",
      "currency_id": "str",
      "term": "int",
      "instrument_price": "float",
      "instrument_type": "str",
      "trade_date": "date",
      "created_at": "datetime",
      "settlement_date": "date",
      "updated_at": "datetime",
      "market_order_status_id": "str",
      "executed_quantity": "int",
      "pending_quantity": "int",
      "external_id": "str"
    }
  ]
}

Se pueden consultar todas las ordenes en un rango de fechas especificas para un "investment_account_id":

  • URL del Endpoint: GET/{{baseUrl}}/api/market/market-order/orders-by-investment-account/{investment_account_id}?from_date=2023-08-01&to_date=2023-08-12

GET/ stock-market-confirmations

  • URL del Endpoint: GET/{{baseUrl}}/api/market/stock-market-confirmations/confirmations-by-investment-account/{investment_account_id}
Campo Tipo Descripci贸n
stock_market_confirmation_id int C贸digo identificador de la confirmaci贸n.
stock_market_confirmation_num int N煤mero de confirmaci贸n.
quantity float Cantidad de nominales ejecutados.
price float Precio del instrumento en la transacci贸n.
gross_amount float Importe bruto de la transacci贸n.
net_amount float Importe neto de la transacci贸n.
fee float Comisi贸n de la transacci贸n.
market_fee float Comisi贸n del mercado.
currency_id str Identificador de la moneda. Master-tables: currencies.
fee_currency_id str Identificador de la moneda de la comisi贸n. Master-tables: currencies.
market_fee_currency_id str Identificador de la moneda de la comisi贸n del mercado. Master-tables: currencies.
canceled bool Indicador si la transacci贸n fue cancelada.
tax_fee float Impuesto sobre la comisi贸n.
tax_market_fee float Impuesto sobre la comisi贸n del mercado.
description str Descripci贸n de la transacci贸n.

Dentro del objeto stock_market_confirmation_executions:

Campo Tipo Descripci贸n
stock_market_confirmation_execution_id int C贸digo identificador de la ejecuci贸n.
stock_market_confirmation_id int C贸digo identificador de la confirmaci贸n.
quantity int Cantidad de nominales ejecutados en la ejecuci贸n.
price int Precio del instrumento en la ejecuci贸n.
trade_datetime datetime Fecha y hora de la ejecuci贸n.
market_order_id int C贸digo identificador de la orden.

Response:

{
  "items": [
    {
      "stock_market_confirmation_id": "int",
      "investment_account_id": "int",
      "market_instrument_id": "int",
      "market_operation_type": "str",
      "trade_date": "date",
      "settlement_date": "date",
      "stock_market_confirmation_num": "int",
      "quantity": "float",
      "price": "float",
      "gross_amount": "float",
      "fee": "float",
      "market_fee": "float",
      "net_amount": "float",
      "currency_id": "str",
      "fee_currency_id": "str",
      "market_fee_currency_id": "str",
      "canceled": "bool",
      "tax_fee": "float",
      "tax_market_fee": "float",
      "description": "str",
      "stock_market_confirmation_executions": [
        {
          "stock_market_confirmation_execution_id": "int",
          "stock_market_confirmation_id": "int",
          "quantity": "int",
          "price": "int",
          "trade_datetime": "datetime",
          "market_order_id": "int"
        }
      ]
    }
  ],
  "total": "int",
  "page": "int",
  "size": "int"
}

Tambien se pueden consultar todas confirmaciones de ordenes, en un rango de fechas especifico para un "investment_account_id":

  • URL del Endpoint: GET/{{baseUrl}}/api/market/stock-market-confirmations/confirmations-by-investment-account/{investment_account_id}?from_date=2023-08-01&to_date=2023-08-12

POST/ preview-market-order

Endpoint utilizado para previsualizar una orden de mercado.

  • URL del Endpoint: POST/{{baseUrl}}/api/market/preview-market-order
     
  • Si se env铆a el par谩metro "validate_holding" (bool) en "true", el servicio validar谩 si la cuenta comitente cuenta con la tenencia suficiente en cartera para operar la orden. En caso contrario, no se valida la tenencia, y se puede previsualizar la orden por un importe mayor al disponible.

Request:

{
  "investment_account_id": "int",
  "quantity": "int",
  "amount": "float",
  "currency_id": "str",
  "market_instrument_id": "int",
  "market_operation_type": "str",
  "instrument_price": "float",
  "term": "int",
  "external_id": "str",
  "by_amount": "bool",
  "at_market_price": "bool",
  "validate_holding": "bool"
}

Response:

{
  "items": [
    {
      "investment_account_id": "int",
      "market_instrument_id": "int",
      "ticker": "str",
      "market_operation_type": "str",
      "currency_id": "str",
      "amount": "float",
      "net_amount": "float",
      "estimated_expenses": "float",
      "by_amount": "bool",
      "at_market_price": "bool",
      "quantity": "int",
      "term": "int",
      "instrument_price": "float",
      "instrument_type": "str"
    }
  ]
}

POST/ schedule-market-order

Endpoint para programar 贸rdenes de compra y venta de instrumentos en el mercado.

  • URL del Endpoint: POST/{{baseUrl}}/api/market/schedule-market-order

Consideraciones:

  • "scheduled_market_order_id": C贸digo identificador 煤nico de la orden programada.
  • "scheduled_time": Fecha y hora programada para la ejecuci贸n de la orden. Este campo especifica cu谩ndo se debe enviar la orden al mercado.
  • Valores posibles para "status" de una orden programada:
status Descripci贸n
SCHEDULED La orden ha sido programada.
CANCELLED La orden programada ha sido cancelada.
ERROR Hubo un error al programar la orden.
COMPLETED La orden programada se ha completado exitosamente.
  • En caso de que el campo "status" tenga el valor "ERROR", se proporcionar谩 una descripci贸n del error en el campo "message".

Request:

{
  "investment_account_id": "int",
  "quantity": "int",
  "amount": "float",
  "currency_id": "str",
  "market_instrument_id": "int",
  "market_operation_type": "str",
  "instrument_price": "float",
  "term": "int",
  "external_id": "str",
  "by_amount": "bool",
  "at_market_price": "bool",
  "scheduled_time": "datetime"
}

Response:

{
  "items": [
    {
      "scheduled_market_order_id": "int",
      "scheduled_time": "datetime",
      "status": "str",
      "message": "str",
      "error_code": "str",
      "market_order_id": "int",
      "quantity": "int",
      "amount": "float",
      "currency_id": "str",
      "market_instrument_id": "int",
      "market_operation_type": "str",
      "instrument_price": "float",
      "term": "int",
      "investment_account_id": "int",
      "external_id": "str",
      "by_amount": "bool",
      "at_market_price": "bool"
    }
  ]
}

GET/ schedule-market-order

Endpoint para obtener una orden programada espec铆fica.

  • URL del Endpoint: GET/{{baseUrl}}/api/market/schedule-market-order/{scheduled_market_order_id}

Response:

{
  "items": [
    {
      "scheduled_market_order_id": "int",
      "scheduled_time": "datetime",
      "status": "str",
      "message": "str",
      "error_code": "str",
      "market_order_id": "int",
      "quantity": "int",
      "amount": "float",
      "currency_id": "str",
      "market_instrument_id": "int",
      "market_operation_type": "str",
      "instrument_price": "float",
      "term": "int",
      "investment_account_id": "int",
      "external_id": "str",
      "by_amount": "bool",
      "at_market_price": "bool"
    }
  ]
}

POST/ mep-order

Endpoint para realizar compra-venta de dolar MEP. Permite comprar d贸lares MEP (deshacerse de ARS y obtener USD) y vender d贸lares (deshacerse de USD y obtener ARS).

  • URL del Endpoint: POST/{{baseUrl}}/api/market/mep-order
Campo Tipo Descripci贸n
mep_market_order_id int C贸digo identificador de la solicitud.
investment_account_id int C贸digo de cuenta de inversiones en ApiBroker.
base_instrument_id int C贸digo identificador del instrumento base. Se obtiene a trav茅s de instruments/market.
market_operation_type str Tipo de operaci贸n: compra USD MEP o venta USD MEP.
amount float Importe de la transacci贸n.
market_order_id_1 int C贸digo identificador de la primer orden.
market_order_id_2 int C贸digo identificador de la segunda orden.
order_2_scheduled_time str Horario UTC en el cual se quiere realizar la segunda orden.
status str Estado de la solicitud MEP.
external_id str Identificador 煤nico de la petici贸n. Lo env铆a el cliente, y sirve para evitar duplicados.
message str Mensaje de la operaci贸n.
error_code obj C贸digo de error. Si no hay error, este campo es null.
created_at datetime Fecha de la creaci贸n de la solicitud.
updated_at datetime Fecha de 煤ltima actualizaci贸n de la solicitud.

Consideraciones:

  • Todas las 贸rdenes programadas se env铆an en contado inmediato.
  • Este endpoint funciona en d铆as habiles
  • Valores posibles para "market_operation_type": "buy" (Comprar USD MEP) o "sell" (vender USD MEP).
    • Si se utiliza "buy", lo que har谩 el sistema es enviar la primer orden de compra en moneda ARS, y enviar谩 la proxima orden inmediatamente
    • Si se utiliza "sell", lo que har谩 el sistema es enviar la primer orden de compra en moneda USD, y enviar谩 la pr贸xima orden inmediatamente
  • Los valores posibles para "base_instrument_id" se pueden obtener en la siguiente url: GET/{{BASE_URL}}/api/instruments/market/all
    • Esto quiere decir que puede realizar la operatoria de compra-venta con el instrumento que desee, sea 茅ste un CEDEAR, un t铆tulo p煤blico, etc.
  • El sistema detecta autom谩ticamente en qu茅 moneda debe operar en las 贸rdenes seg煤n el "base_instrument_id" y "market_operation_type".
  • El campo "order_2_scheduled_time" se debe enviar siempre en UTC. Ejemplo de hora: "15:30". Esto, al ser UTC; significa que la segunda orden ser谩 enviada a las 11:30 horario Argentina GMT-3.
    • Para el caso de que una orden tenga "market_operation_type": "buy", la hora que se pide es para enviar la orden de venta el d铆a siguiente. Si no se env铆an datos en este campo, se tomar谩 el horario default que es 16:30HS UTC, 13:30HS GMT-3.
    • Para el caso de que una orden tenga "market_operation_type": "sell", la hora que se pide es para enviar la orden de venta en el d铆a actual. Si no se env铆a datos en este campo, se tomar谩 el horario default que es a los 10 minutos de creada la primer orden.

Posibles estados de las solicitudes:

status descripci贸n
PENDING Pendientes de env铆o. Ser谩 enviada tan pronto sea posible la primer orden, y quedar谩 en pendiente mientras tanto no est茅 completada la segunda orden.
CANCELLED Cancelada manualmente.
NOT_SENT No enviada.
COMPLETED Completada.

Request:

{
  "investment_account_id": "int",
  "amount": "float",
  "base_instrument_id": "int",
  "market_operation_type": "str",
  "order_2_scheduled_time": "str",
  "external_id": "str"
}

Response:

{
  "items": [
    {
      "mep_market_order_id": "int",
      "investment_account_id": "int",
      "base_instrument_id": "int",
      "market_operation_type": "str",
      "amount": "float",
      "status": "str",
      "external_id": "str",
      "market_order_id_1": "int",
      "market_order_id_2": "int",
      "message": "str",
      "error_code": "str",
      "created_at": "str",
      "updated_at": "str"
    }
  ]
}

GET/ mep-order

Endpoint para consultar el estado de una solicitud de compra-venta USD MEP.

Se debe enviar como pathParam el fund_request_id:

  • URL del Endpoint: GET/{{baseUrl}}/api/market/mep-order/{mep_market_order_id}

Response:

{
  "items": [
    {
      "mep_market_order_id": "int",
      "investment_account_id": "int",
      "base_instrument_id": "int",
      "market_operation_type": "str",
      "amount": "float",
      "status": "str",
      "external_id": "str",
      "market_order_id_1": "int",
      "market_order_id_2": "int",
      "message": "str",
      "error_code": "str",
      "created_at": "datetime",
      "updated_at": "datetime"
    }
  ]
}

POST/ closed-dollar-operation 馃挼

Endpoint para realizar compra-venta de dolar CERRADO. Permite comprar y vender d贸lares MEP con un precio asegurado para el usuario final.

Actualmente esta operaci贸n se encuentra disponible solo para cuentas de personas f铆sicas.

  • URL del Endpoint: POST/{{baseUrl}}/api/market/closed-dollar-operation
Campo Tipo Descripci贸n
currency_id str C贸digo moneda de la operacion. Master-tables: currencies
operation_type str Tipo de operaci贸n
investment_account_id int investment_account_id del cliente final
amount float Importe de la transacci贸n
fx_request float Tipo de cambio que el cliente acept贸
external_id str Identificador 煤nico de la petici贸n. Lo env铆a el cliente, y sirve para evitar duplicados

Consideraciones:

  • Valores posibles para "operation_type": "buy" (Comprar USD MEP) o "sell" (vender USD MEP).
  • Este endpoint funciona en d铆as habiles
    • Si se utiliza "buy", lo que har谩 el sistema es enviar la primer orden de compra en moneda ARS馃挷 y enviar谩 la proxima orden en el mismo d铆a para obtener los USD馃挼
    • Si se utiliza "sell", lo que har谩 el sistema es enviar la primer orden de compra en moneda USD馃挼, y enviar谩 la pr贸xima orden en el mismo d铆a para obtener los ARS馃挷
  • Cuando se env铆a una solicitud, el campo "operation_1_client_market_order_id" corresponde a la primer orden enviada. El campo "operation_2_client_market_order_id" correspondiente a la segunda orden, no se completar谩 automaticamente, sino cuando finalice el proceso.

Valores posibles para "status" de una orden :

status Descripci贸n
IN_PROGRESS La orden ha sido enviada.
ERROR Hubo un error al enviar la orden.
COMPLETED Las ordenes se han completado exitosamente.

Request:

{
    "currency_id": "str",
    "operation_type": "str",
    "investment_account_id": "int",
    "amount": "float",
    "fx_request": "float",
    "external_id": "str"
}

Response:

{
   "items":[
      {
         "closed_dollar_operation_id":"str",
         "currency_id":"str",
         "operation_type":"str",
         "investment_account_id":"int",
         "amount":"float",
         "fx_request":"float",
         "actual_fx":"float",
         "operation_1_client_market_order_id":"int",
         "operation_2_client_market_order_id":"int",
         "external_id":"str",
         "message":"str",
         "error_code":"str",
         "status_id":"str",
         "created_at":"datetime",
         "updated_at":"datetime"
      }
   ]
}

GET/ closed-dollar-operation

Endpoint para consultar el estado de una solicitud de compra-venta Dolar Cerrado.

Se debe enviar como pathParam el closed_dollar_operation_id:

  • URL del Endpoint: GET/{{baseUrl}}/api/market/closed-dollar-operation/:closed_dollar_operation_id

Response:

{
   "items":[
      {
         "closed_dollar_operation_id":"str",
         "currency_id":"str",
         "operation_type":"str",
         "investment_account_id":"int",
         "amount":"float",
         "fx_request":"float",
         "actual_fx":"float",
         "operation_1_client_market_order_id":"int",
         "operation_2_client_market_order_id":"int",
         "external_id":"str",
         "message":"str",
         "error_code":"str",
         "status_id":"str",
         "created_at":"datetime",
         "updated_at":"datetime"
      }
   ]
}

GET/ closed-dollar-operation-price

Endpoint que se utiliza para consultar la cotizaci贸n disponible para la operatoria de MEP Cerrado

  • URL del Endpoint: GET/{{baseUrl}}/api/market/closed-dollar-operation-price

Response:

{
   "items":[
      {
         "closed_dollar_fx":"float",
         "currency_id":"str",
         "operation_type":"str"
      }
   ]
}

Obtendremos dependiendo la operaci贸n (buy/sell) y la moneda (ARS/USD), el precio para operar por dolar cerrado.

DELETE/ market-orders

Endpoint para cancelar una orden enviada al mercado.

  • URL del Endpoint: DELETE/{{baseUrl}}/api/market/market-order/

Para CANCELAR una orden, necesitamos que se cumplan las siguientes validaciones:

  • Que exista la orden que queremos cancelar y que corresponda al usuario.
  • Que el estado de la orden en BYMA sea SENDING_PENDING.
  • Que el estado de la orden en BYMA sea RETRY.
  • Que el estado de la orden en BYMA sea SENT.
  • Que el estado de la orden en BYMA sea OFFERED.
  • Que el estado de la orden en BYMA sea PARTIALLY_COMPLETED. (En caso de que la orden sea del d铆a actual, porque si la orden es de un d铆a anterior se encuentra en un estado final, por lo que no puede ser CANCELADA, porque ya no se env铆a a mercado).

Se debe enviar como pathParam el market_order_id:

  • URL del Endpoint: DELETE/{{baseUrl}}/api/market/market-order/{market_order_id}

Si la orden pudo ser cancelada se obtendr谩 el siguiente response:

{
  "message": "Success"
}

Si la orden NO pudo ser cancelada se obtendr谩 el siguiente response:

{
  "error_code": "CODIGO DE ERROR",
  "message": "No se pudo cancelar la orden"
}

Nota: si el mensaje es de exito, el estado de la orden quedara en : "pending_cancellation". Una vez que la orden se encuentre cancelado su estado pasara a ser: "cancelled"

POST/ fund-requests

Endpoint para realizar solicitudes de suscripci贸n o rescates de fondos comunes de inversi贸n.

  • URL del Endpoint: POST/{{baseUrl}}/api/market/fund-requests/
Campo Tipo Descripci贸n
fund_request_id int C贸digo identificador de la solicitud.
investment_account_id int C贸digo del comitente en ApiBroker.
mutual_fund_id int C贸digo del instrumento de FCI.
name str Nombre del instrumento de FCI.
ticker str Identificador del instrumento de FCI.
clazz str Clase del instrumento de FCI.
fund_operation_type str Tipo de operaci贸n: suscripci贸n o rescate.
is_total bool Indicador si el rescate es por el total o parcial. Por defecto: false
currency_id str Master-tables: currencies.
amount float Importe de la transacci贸n.
share_quantity float Cantidad de cuotapartes.
share_price float Precio de la cuotaparte.
fund_request_status_id str Estado de la solicitud.
trade_date datetime Fecha de concertaci贸n.
settlement_date datetime Fecha de liquidaci贸n de la solicitud.
created_at datetime Fecha de la creaci贸n de la solicitud.
updated_at datetime Fecha de 煤ltima actualizaci贸n de la solicitud.
external_id str Identificador 煤nico de la petici贸n. Lo env铆a el cliente, y sirve para evitar duplicados

Consideraciones:

  • Valores posibles para "fund_operation_type": "subscription" (suscripciones) o "redemption" (rescates).
  • Los valores posibles para "mutual_fund_id" se pueden obtener en la siguiente url: GET/{{baseUrl}}/api/instruments/mutual-funds/all

Posibles estados de las solicitudes:

fund_request_status_id descripci贸n
SENDING_PENDING Pendiente de env铆o. Ser谩 enviada tan pronto sea posible.
RETRY Se envi贸, pero fall贸 y se marc贸 para reintentar. Se enviar谩 nuevamente.
SENT Enviada, esperando ser liquidada.
CANCELLED Cancelada manualmente.
NOT_SENT No enviada.
SETTLED Liquidada.

Request:

{
  "investment_account_id": "int",
  "mutual_fund_id": "int",
  "fund_operation_type": "str",
  "currency_id": "str",
  "amount": "float",
  "is_total": "bool",
  "external_id": "str",
  "by_share_quantity": "bool",
  "share_quantity": "float"
}

Response:

{
  "items": [
    {
      "investment_account_id": "int",
      "fund_request_id": "int",
      "mutual_fund_id": "int",
      "name": "str",
      "ticker": "str",
      "fund_operation_type": "str",
      "currency_id": "str",
      "amount": "float",
      "is_total": "bool",
      "clazz": "str",
      "share_quantity": "float",
      "share_price": "float",
      "trade_date": "date",
      "settlement_date": "date",
      "created_at": "datetime",
      "updated_at": "datetime",
      "approved": "bool",
      "fund_request_status_id": "str",
      "external_id": "str"
    }
  ]
}

GET/ fund-requests

Endpoint para consultar el estado de una solicitud de fci.

  • URL del Endpoint: GET/{{baseUrl}}/api/market/fund-requests/

Se debe enviar como pathParam el fund_request_id:

  • URL del Endpoint: GET/{{baseUrl}}/api/market/fund-requests/{fund_request_id}

Response:

{
  "items": [
    {
      "investment_account_id": "int",
      "fund_request_id": "int",
      "mutual_fund_id": "int",
      "fund_operation_type": "str",
      "currency_id": "str",
      "amount": "float",
      "is_total": "bool",
      "name": "str",
      "ticker": "str",
      "clazz": "str",
      "share_quantity": "float",
      "share_price": "float",
      "trade_date": "date",
      "settlement_date": "date",
      "created_at": "datetime",
      "updated_at": "datetime",
      "fund_request_status_id": "str",
      "approved": "bool",
      "external_id": "str"
    }
  ]
}

Se pueden consultar todas las solicitudes de fci, en un rango de fechas especificas para un "investment_account_id":

  • URL del Endpoint: GET/{{baseUrl}}/api/market/fund-requests/fund-requests-by-investment-account/{investment_account_id}?from_date=2023-08-01&to_date=2023-08-12

GET/ mutual-fund-confirmations

  • URL del Endpoint: GET/{{baseUrl}}/api/market/mutual-fund-confirmations/funds-by-investment-account/{investment_account_id}

Response:

{
  "items": [
    {
      "mutual_fund_confirmation_id": "int",
      "investment_account_id": "int",
      "mutual_fund_id": "int",
      "fund_operation_type": "str",
      "trade_date": "date",
      "settlement_date": "date",
      "amount": "float",
      "share_quantity": "float",
      "share_price": "float",
      "expenses": "float",
      "currency_id": "str",
      "fund_request_id": "int",
      "canceled": "bool",
      "created_at": "datetime",
      "updated_at": "datetime"
    }
  ],
  "total": "int",
  "page": "int",
  "size": "int"
}

Tambien se pueden consultar todas confirmaciones de las solicitudes de fci, en un rango de fechas especificas para un "investment_account_id":

  • URL del Endpoint: GET/{{baseUrl}}/api/market/mutual-fund-confirmations/funds-by-investment-account/{investment_account_id}?from_date=2023-08-01&to_date=2023-08-12

DELETE/ fund-requests

Endpoint para cancelar una solicitud de fci.

  • URL del Endpoint: DELETE/{{baseUrl}}/api/market/fund-requests/

Solo cancelaremos una solicitud que no haya sido negociada y que no se haya cancelado/rechazado previamente

Se debe enviar como pathParam el fund_request_id: Url: DELETE/{{baseUrl}}/api/market/fund-requests/{fund_request_id}

Si la orden pudo ser cancelada se obtendr谩 el siguiente response:

{
  "message": "Success"
}

Si la orden NO pudo ser cancelada se obtendr谩 el siguiente response:

{
  "error_code": "CODIGO DE ERROR",
  "message": "No se pudo cancelar la orden"
}

Nota: si el mensaje es de exito, el estado de la orden quedara en : "pending_cancellation". Una vez que la solicitud se encuentre cancelada su estado pasara a ser: "cancelled"