Saltar al contenido principal

Webhooks

🔹 Crear un webhook

Consulta: POST /v1/{marketplace_code}/webhooks

Campos del webhook:

NombreDescripciónTipo de datoObligatorioValores permitidos
codeCódigoStringXVer abajo
nameNombreStringX
topicTópico al cual suscribirseStringXVer abajo
callback_urlURL a la cual enviar las notificacionesStringX
seller_idID del vendedorString
headersHeaders a enviar en la notificaciónObject<String, String>

Aclaraciones:

  • Formato del código (code): Debe cumplir con la siguiente regex: /^[a-zA-Z0-9\-_]+$/. Es decir que sólo puede contener números, letras del alfabeto latino, guiones bajos y guiones medios.
  • ID del vendedor (seller_id): En caso de no recibirse se usará el valor por defecto ("*"). Éste permite recibir las novedades del tópico de todos los vendedores.
  • Tópicos validos (topic):
    • publication/create: Se creó una publicación.
    • publication/update: Se modificó una publicación.
    • order/create: Se creó una venta.
    • order/update: Se modificó una venta.
    • order/invoice_upload: Se subió una factura a una venta.
    • order/status_change: Se cambió el estado de una venta.

Cambio a estado específico de venta

Es posible suscribirse al cambio a un estado específico de venta usando el tópico order/status_change/<status_code>.

Por ejemplo, para recibir notificaciones sólo cuando una venta pase al estado "Pago aprobado" (Código APRO) se deberá suscribir al tópico order/status_change/APRO, para "En proceso" será order/status_change/PROC y lo mismo para cada código de estado de venta.

Ejemplo de payload para la consulta:

{
"code": "status_change_to_apro",
"name": "Ventas: Cambio de estado a pago aprobado",
"topic": "order/status_change/APRO",
"seller_id": "345",
"callback_url": "https://api.acme.com/notifications",
"headers": {
"User-Agent": "Fulljaus-Marketplace-API"
}
}

Respuesta:

Código HTTP: 201

Devuelve las entidades creadas.

Notificaciones

Payload que se enviará a la URL proporcionada mediante HTTP POST.

Para notificaciones de publicacioens (publication/*):

{
"seller_id": 345,
"marketplace_connection_id": 940,
"topic_path": "publication/acme/create",
"entity_id": 1298104,
"payload": {
"publication": {
"id": 1298104,
"productMarketplaceCode": null,
"sku": "EXAMPLE-SKU",
"product": {
"id": 221511317,
"sku": "EXAMPLE-SKU",
"name": "Producto de ejemplo",
"title": "Producto de ejemplo",
"description": "Desc",
"shortDescription": "Desc",
"stock": 15,
"providerCode": "",
"price": 800000,
"reservation": 0,
"weight": null,
"height": null,
"width": null,
"depth": null,
"packages_deprecated": 1,
"units_per_package": 1,
"measured_weight": null,
"packages": [
{
"id": 880441,
"product_id": 221511317,
"name": "Paquete 1",
"height": 12,
"width": 12,
"depth": 12,
"weight": 12,
"measured_weight": 12,
"declared_value": null
},
{
"id": 880442,
"product_id": 221511317,
"name": "Paquete 2",
"height": 0,
"width": 0,
"depth": 0,
"weight": 0,
"measured_weight": null,
"declared_value": null
}
],
"active": true,
"listPrice": 900000,
"roundedPrice": null,
"company": {
"id": 345,
"name": "SellerName",
"active": true,
"logo": "fulljaus.png",
"logoUrl": "https://admin.fulljaus.com/web/uploads/profiles/images/fulljaus.png",
"testing": false
},
"categories": [
{
"id": 29006,
"code": "26782",
"name": "Notebooks",
"parent_id": null,
"path": "Notebooks",
"seller": {
"id": 345,
"name": "SellerName",
"active": true,
"logo": "fulljaus.png",
"logoUrl": "https://admin.fulljaus.com/web/uploads/profiles/images/fulljaus.png",
"testing": false
},
"createdAt": "17-03-2025",
"updatedAt": "17-03-2025"
}
],
"variationDisplayName": null,
"variable_attributes": [

],
"brand": {
"id": 461,
"brand": "MARCA MIO",
"logo": "S/I",
"code": "S/N"
},
"provider": {
"id": 3,
"name": "FJAUS",
"active": true,
"code": "fjaus",
"logo": "http://admin.fulljaus.com/uploads/providers/fjaus.png"
},
"properties": null,
"isParent": false,
"ean": null,
"eans": null,
"model": "",
"taxes": 21,
"priceToPublish": {
"price": 799999,
"listPrice": 900000,
"beforeVATPrice": 661156.1983471075,
"beforeVATListPrice": 743801.652892562,
"beforeTaxesPrice": 749999.0625,
"beforeTaxesListPrice": 750000,
"discount": 0.11111222222222217,
"roundedDiscount": 0.11,
"goldenRulesApplied": 800000
},
"stockToPublish": 15,
"thumbnail": "https://uploads.fulljaus.us/prod/345_1234567890.png",
"published_at": [
null,
{
"date": "2025-06-23 23:59:29.000000",
"timezone_type": 3,
"timezone": "UTC"
}
],
"images": [
{
"name": "345_1234567890",
"relative_url": "uploads/images/foto/banco/345_1234567890",
"remote_url": "https://uploads.fulljaus.us/prod/345_1234567890.png",
"position": 1,
"created_at": "2025-05-30T14:04:20+00:00",
"updated_at": "2025-05-30T14:04:20+00:00",
"checksum": "34566f06ccbd31ed65753d2d75c6f20162c7d4d76217436921c7cc2571c2e82061656bceeeed5f4bb9769a33b40b7467a4976b4c932f6818b8542cb9616c9610"
}
],
"features": [

],
"parentId": null,
"children": [

],
"initialStock": null,
"infiniteStock": null,
"currency": "ARS",
"cost": 500000,
"markup": null,
"disableMarkup": null,
"netPrice": 743801.65,
"markupPrice": null,
"discount": null,
"diffDiscount": null,
"finalPrice": null,
"beforeTaxesPrice": 750000,
"beforeTaxesListPrice": 750000,
"usuarioId": "api",
"logDate": "2025-05-30T14:04:21+00:00",
"activeUpdateStock": true,
"activeGetProduct": true,
"permLink": null,
"providerPermalink": "",
"issue": {
},
"meliProduct": {
},
"goldenRule": {
},
"productImage": {
},
"beginDate": null,
"endDate": null,
"erased": false,
"meliCode": null,
"sellerId": 345,
"type": "simple",
"isCombo": 0,
"tags": [

],
"video": "",
"securityStock": "",
"manufacturer": "",
"classification": null,
"shippingWarehouse": null,
"composition": [

],
"origin": null,
"warrantyType": null,
"warranty": "0",
"availableToUpdate": true,
"lastSyncFromProviderDate": null,
"traceable": false,
"cooled": false,
"psychotropic": false,
"dun14": null,
"presentation": null,
"hasStockUnlimited": false,
"moodComboPackages": "DEFAULT",
"condition": "NEW",
"productType": "PHYSICAL_WELL",
"packagingType": "BOX",
"salesModality": null,
"supplier": "Yo",
"inventoryClassification": "KILLER",
"energyEfficiency": "A++",
"deletedAt": null,
"created_at": "2025-05-30T13:45:24+00:00",
"updated_at": "2025-05-30T14:04:21+00:00"
},
"marketplaceConnection": {
"id": 940,
"configName": "ACME Connection",
"seller": {
"id": 345,
"name": "SellerName",
"active": true,
"logo": "fulljaus.png",
"logoUrl": "https://admin.fulljaus.com/web/uploads/profiles/images/fulljaus.png",
"testing": false
},
"marketplace": {
"id": 26,
"codigo": "acme",
"name": "ACME",
"active": true,
"logoUrl": "http://admin.fulljaus.com/uploads/images/market/acme.png",
"supportsVariations": true,
"hasOptions": false,
"multipleInstances": true,
"supportMultiCategory": false
}
},
"stock": null,
"active": true,
"toUpdate": true,
"marketplaceBrandId": null,
"marketplaceBrandName": null,
"marketplaceCategory": null,
"isPublished": false,
"price": null,
"listPrice": null,
"roundPrice": null,
"alicuot": null,
"markup": null,
"parentId": null,
"stockToPublish": 15,
"stockBeforeReservations": 15,
"publishedAt": null,
"errorAt": null,
"synchronizedAt": null,
"priceToPublish": {
"price": 799999,
"listPrice": 900000,
"beforeVATPrice": 661156.1983471075,
"beforeVATListPrice": 743801.652892562,
"beforeTaxesPrice": 749999.0625,
"beforeTaxesListPrice": 750000,
"discount": 0.11111222222222217,
"roundedDiscount": 0.11,
"goldenRulesApplied": {
"terminado": 1,
"regla": 7,
"idregla": 940,
"precioespecifico": 0,
"markup": 0,
"type": "global",
"start_date": null,
"finish_date": null
}
},
"permalink": null,
"lastErrorMessage": null,
"lastErrorTransactionId": null,
"revisionStatus": "PENDING",
"marketplaceCode": "acme",
"publicationOptions": [

],
"score": 100,
"avoidRecycling": false,
"createdAt": "2025-08-18T18:07:41+00:00",
"updatedAt": "2025-08-18T18:07:41+00:00",
"netPrice": null,
"markupPrice": null,
"markupIsDisabled": null,
"hasInfiniteStock": false,
"discount": null,
"discountDifference": null,
"userId": "api",
"registerDate": null,
"thumbnail": "https://uploads.fulljaus.us/prod/345_1234567890.png",
"marketplaceActive": null,
"marketplaceStatus": null,
"marketplaceStatusDescription": null,
"deletedAt": null,
"deletedBy": null,
"checksum": "2984df22fdeaab16b2f5c102f9f1bfc0"
},
"changes": null,
"author": "api"
}
}

Para notificaciones de ventas (order/*):

{
"seller_id": 345,
"topic_path": "order/acme/status_changed/entered_APRO",
"entity_id": "example-order",
"payload": {
"order": {
"id": 2621975,
"reference_order": "example-order",
"marketplace_connection": 940,
"marketplace": {
"code": "acme",
"configuration_name": "ACME",
"logoUrl": "http://admin.fulljaus.com/uploads/images/market/acme.png",
"generic": true
},
"billing_address": {
"id": 2646293,
"name": "John",
"surname": "Doe",
"email": "johndoe@example.com",
"province": "CIUDAD AUTÓNOMA DE BUENOS AIRES",
"city": "Ciudad Autónoma de Buenos Aires",
"commune": null,
"address": "Av. Medrano",
"number": "2966",
"extra_information": "Edificio de color naranja.",
"phone": "+5491155886697",
"zip_code": "1430",
"floor": "1ero",
"door": "C",
"document": {
"type": "DNI",
"number": "35875257"
}
},
"current_color": null,
"status_message": "Pago aprobado",
"dispatchedProvider": null,
"creation_date": "2025-08-24T10:24:09-03:00",
"payments": [
{
"id": 2952291,
"external_id": null,
"merchant_external_id": null,
"interest": 0,
"transaction_id": null,
"nominal_interest": 0,
"commerce_number": null,
"coupon_number": null,
"gateway": "Decidir",
"payment_amount": 22499,
"payment_date": "2024-01-24T13:24:09+00:00",
"payment_method": {
"document": {
"document_type": "DNI",
"document_number": "35875257"
},
"payment_method_id": null,
"card": {
"brand": "VISA Santander",
"card_number": null,
"date_card_expiration": null,
"installments": 0,
"first_digits": null,
"last_digits": "5788",
"interest": 0
},
"group_name": null,
"connector": {
"connector_tid": null,
"connector_authid": null,
"use_government_plan": "No informa"
},
"acquirer": null,
"affiliation_id": null
},
"transaction_type": "CARD",
"type": "CARD"
}
],
"shipping_info": [
{
"id": 958332,
"products": [
{
"sku": "PIN-PAW5646"
}
],
"tracking_number": "",
"tracking_url": null,
"carrier": {
"id": 46735,
"code": "1",
"name": "Transportadora estándar",
"mapping_carrier": "",
"mapping_method": ""
},
"shipping_tag_url_pdf": null,
"shipping_tag_url_zpl": null,
"shipping_type": null,
"price": null,
"delivery_hours_delay": null,
"mapped_carrier_name": null,
"pickup_address_id": null,
"delivery_days_delay": null,
"delivery_service_name": null,
"delivery_cost": null,
"selected_carrier_name": null,
"status": null,
"selected_carrier_id": null,
"events": [

]
}
],
"creation_date_shipping": "",
"credit_note_date": "",
"status": "APRO",
"company_id": 345,
"order_id_on_market": null,
"seller": {
"id": 345,
"name": "Test Seller",
"active": true,
"logo": "fulljaus.png",
"logoUrl": "https://admin.fulljaus.com/web/uploads/profiles/images/fulljaus.png",
"testing": false
},
"products_subtotal": 22499,
"shipping_subtotal": 0,
"shipping_reference": 0,
"shipping_address": {
"id": 2651043,
"name": "John",
"surname": "Doe",
"email": "johndoe@example.com",
"address": "Av. Medrano",
"extra_information": "Edificio de color naranja.",
"number": "2966",
"floor": "1ero",
"door": "C",
"province": "CIUDAD AUTÓNOMA DE BUENOS AIRES",
"commune": null,
"city": "Ciudad Autónoma de Buenos Aires",
"phone": "+5491155886697",
"zip_code": "1430",
"status": "",
"merchant_external_id": "",
"document": {
"type": "DNI",
"number": "35875257"
}
},
"shipping_tag_url_pdf": null,
"shipping_tag_url_zpl": null,
"mkt_collected": null,
"paid_provider": null,
"error_message": null,
"method": null,
"products": [
{
"id": 3075820,
"productId": null,
"quantity": 1,
"provider_code": null,
"sku": "PIN-PAW5646",
"unit_price": 22999,
"unit_price_with_taxes": 22999,
"name": null,
"taxes": null,
"height": 0,
"width": 0,
"length": 0,
"weight": 0,
"packages": [

],
"discount": false,
"financial_cost_item": false,
"sku_associated": null,
"isParent": null,
"isCombo": null,
"tracking_id": null,
"merchant_external_id": null,
"cost": null,
"model": null,
"brand": null,
"provider": null,
"category": null,
"thumbnail": null,
"detailReference": null,
"productsCombo": null
}
],
"invoice": {
"number": null,
"url": null,
"sent_to_marketplace": false
},
"dispatch": null,
"documents": [

],
"financialCost": null,
"observations": null,
"selectedCarrierName": null,
"deliveryDaysDelay": null,
"deliveryServiceName": null,
"deliveryCost": null
},
"state_from": null,
"state_to": "APRO",
"author": "api"
}
}

🔹 Índice de webhooks

Consulta: GET /v1/{marketplace_code}/webhooks

Respuesta:

Código HTTP: 200

[
{
"code": "status_change_to_apro",
"name": "Ventas: Cambio de estado a pago aprobado",
"topic": "order/status_change/entered_APRO",
"callback_url": "https://api.acme.com/notifications",
"headers": {
"User-Agent": "Fulljaus-Marketplace-API"
}
},
// ...
]

🔹 Obtener un webhook

Consulta: GET /v1/{marketplace_code}/webhooks/{code}

Respuesta:

Código HTTP: 200

{
"code": "status_change_to_apro",
"name": "Ventas: Cambio de estado a pago aprobado",
"topic": "order/status_change/entered_APRO",
"seller_id": "345",
"callback_url": "https://api.acme.com/notifications",
"headers": {
"User-Agent": "Fulljaus-Marketplace-API"
}
}

🔹 Actualizar un webhook

Consulta: PATCH /v1/{marketplace_code}/webhooks/{code}

Campos actualizables:

NombreDescripciónTipo de datoObligatorio
nameNombreString
callback_urlURL a la cual enviar las notificacionesString
seller_idID del vendedorString
headersHeaders a enviar en la notificaciónObject<String, String>

Ejemplo de payload para la consulta:

{
"name": "Ventas: Cambio de estado a pago aprobado",
"callback_url": "https://api.acme.com/notifications/orders",
"seller_id": "345",
"headers": {
"User-Agent": "Fulljaus-Marketplace-API",
"Otro-Header": "1234"
}
}

Respuesta:

Código HTTP: 200

Devuelve la entidad actualizada.

🔹 Eliminar un webhook

Consulta: DELETE /v1/{marketplace_code}/webhooks/{code}

Respuesta:

Código HTTP: 204

Sin contenido.