"description": "Valor total de la compra por cada una de las empresas",
"type": number,
"exclusiveMinimum": 0
},
"totalValue": {
"description": "Valor total de la compra, si es multi-sello o 2 tarjetas, aquí va el valor de toda la compra",
"type": number,
"exclusiveMinimum": 0
},
"orderCount": {
"description": "Es la cantidad de pedidos que conforman la compra",
"type": number,
"exclusiveMinimum": 0
"example": 2
}
},
"required": [
"orderId",
"consolidatorOrderId",
"totalValue",
"orderCount"
]
},
"paymentDate": {
"description": "Fecha en la que se realiza el pago",
"type": "string",
"format": "date-time"
},
"parentGuardian": {
"type": "object",
"properties": {
"refId": {
"description": "Id en BDC de la persona que está realizando el pago",
"type": "string",
"format": "uuid",
"maxLength": 36,
"minLength": 36
},
"document": {
"description": "Documento de identificación de la persona que está realizando el pago (CPF)",
"type": "string"
}
},
"required": [
"refId",
"document"
]
},
"paymentMethod": {
"description": "Identificador del método de pago, es el campo parametro en la tabla forma_pago",
"type": "string",
"minLength": 0,
"maxLength": 10
},
"conciliationAccount": {
"description": "Identificador del concentrador de pago, es el campo parametro en la tabla concentra_pago",
"type": "string",
"minLength": 0,
"maxLength": 6
},
"price": {
"description": "Precio final a pagar, después de markup, descuentos, impuestos y cargos",
"type": "number",
"exclusiveMinimum": 0
},
"originalPrice": {
"description": "Precio inicial a pagar, antes de markup, descuentos, impuestos y cargos",
"type": "number",
"exclusiveMinimum": 0
},
"discounts": {
"description": "Descuentos aplicados en la compra",
"type": "object",
"properties": {
"discountOne": {
"description": "Concentra el valor acumulado de los descuentos que no sean de tipo PARC",
"type": "object",
"properties": {
"amount": {
"description": "Es el valor acumulado de los descuentos que no sean de tipo PARC",
"type": "number",
"minimum": 0
}
},
"required": [
"amount"
]
},
"discountTwo": {
"description": "Concentra el valor del descuento de tipo PARC",
"type": "object",
"properties": {
"amount": {
"description": "Es el valor correspondiente al descuento de tipo PARC",
"type": "number",
"minimum": 0
}
},
"required": [
"amount"
]
}
]
},
"taxes": {
"description": "Valor total de los impuestos aplicados, correspondiente al porcentaje total de impuestos",
"type": "number",
"minimum": 0
},
"taxRate": {
"description": "Porcentaje total de impuestos aplicados",
"type": "number",
"minimum": 0
},
"itemList": {
"description": "Lista de paquetes vendidos",
"type": "array",
"uniqueItems": true,
"minItems": 1,
"items": [
{
"type": "object",
"properties": {
"articleRefId": {
"description": "Id en BDC del artículo/paquete",
"type": "string",
"format": "uuid",
"maxLength": 36,
"minLength": 36
},
"student": {
"type": "object",
"properties": {
"refId": {
"description": "Id en BDC del alumno",
"type": "string",
"format": "uuid",
"maxLength": 36,
"minLength": 36
},
"personRefId": {
"description": "Id en BDC de la persona asociada al alumno",
"type": "string",
"format": "uuid",
"maxLength": 36,
"minLength": 36
}
},
"required": [
"refId",
"personRefId"
]
},
"totalItem": {
"description": "Cantidad vendida del artículo/paquete",
"type": "integer",
"exclusiveMinimum": 0
},
"price": {
"description": "Precio final del artículo/paquete, después de markup, descuentos, impuestos y cargos",
"type": "number",
"exclusiveMinimum": 0
},
"originalPrice": {
"description": "Precio inicial del artículo/paquete, antes de markup, descuentos, impuestos y cargos",
"type": "number",
"exclusiveMinimum": 0
},
"discountList": {
"description": "Lista de descuentos aplicados al artículo/paquete, si hay un descuento comercial este debe ser informado siempre primero, es decir, en la primera posición del array, si hay más de 3 descuentos aplicados estos se acumulan en el tercer/último descuento",
"type": "array",
"uniqueItems": true,
"minItems": 1,
"maxItems": 3,
"items": [
{
"type": "object",
"properties": {
"rate": {
"description": "Indica el porcentaje del descuento",
"type": "number",
"exclusiveMinimum": 0
},
"reason": {
"description": "Identificador de la razón del descuento, es el campo parametro en la tabla razon",
"type": "string",
"minLength": 0,
"maxLength": 16
},
"amount": {
"description": "Indica el valor correspondiente al porcentaje del descuento",
"type": "number",
"exclusiveMinimum": 0
}
},
"required": [
"rate",
"reason",
"amount"
]
}
]
},
"taxes": {
"description": "Valor de los impuestos aplicados al artículo/paquete, correspondiente al porcentaje de impuestos",
"type": "integer",
"minimum": 0
},
"taxRate": {
"description": "Porcentaje de impuestos aplicados al artículo/paquete",
"type": "integer",
"minimum": 0
},
"salesType": {
"description": "Identificador del tipo de venta, es el campo parametro en la tabla tipo_venta",
"type": "string",
"minLength": 0,
"maxLength": 14
},
"salesChannel": {
"description": "Identificador del canal de venta, es el campo parametro en la tabla canal_venta",
"type": "string",
"minLength": 0,
"maxLength": 10
},
"salesOption": {
"description": "Identificador de la opción de venta, es el campo parametro en la tabla opcion_venta",
"type": "string",
"minLength": 0,
"maxLength": 3
},
"componentList": {
"description": "Lista de los artículos/componentes que forman parte del artículo/paquete vendidos, este atributo solo debe estar presente cuando es un pago de una venta fraccionada o cuando la empresa requiere desglose de componentes para la integración con el ERP, por ejemplo: Compartilha y TDL",
"type": "array",
"items": [
{
"type": "object",
"properties": {
"articleRefId": {
"description": "Id en BDC del artículo/componente",
"type": "string",
"format": "uuid",
"maxLength": 36,
"minLength": 36
},
"totalItem": {
"description": "Cantidad vendida del artículo/paquete",
"type": "integer",
"exclusiveMinimum": 0
},
"price": {
"description": "Precio final del artículo/componente, después de markup, descuentos, impuestos y cargos",
"type": "number",
"exclusiveMinimum": 0
},
"originalPrice": {
"description": "Precio inicial del artículo/componente, antes de markup, descuentos, impuestos y cargos",
"type": "number",
"exclusiveMinimum": 0
},
"markupRate": {
"description": "",
"type": "number",
"minimum": 0
},
"priceWithMarkup": {
"description": "Valor del precio inicial del articulo/componente, después del markup",
"type": "number",
"minimum": 0
},
"taxes": {
"description": "Valor de los impuestos aplicados al artículo/componente, correspondiente al porcentaje de impuestos",
"type": "number",
"minimum": 0
},
"taxRate": {
"description": "Porcentaje de impuestos aplicados al artículo/componente",
"type": "number",
"minimum": 0
},
"discountList": {
"description": "Lista de descuentos aplicados al artículo/componente, solo puede indicarse el tipo de descuento por venta fraccionada",
"type": "array",
"uniqueItems": true,
"minItems": 1,
"maxItems": 1,
"items": [
{
"type": "object",
"properties": {
"rate": {
"description": "Indica el porcentaje del descuento",
"type": "number",
"exclusiveMinimum": 0
},
"reason": {
"description": "Identificador de la razón del descuento, es el campo parametro en la tabla razon, para venta fraccionada solo se acepta el valor VEFR y si es venta por paquete solo se acepta el valor COM",
"type": "string",
"maxLength": 4,
"minLength": 4
},
"amount": {
"description": "Indica el valor correspondiente al porcentaje del descuento",
"type": "number",
"exclusiveMinimum": 0
}
},
"required": [
"rate",
"reason",
"amount"
]
}
]
},
"salesTerms": {
"type": "object",
"properties": {
"familyCode": {
"description": "Código da Família do Produto | Lista na plataforma | Código da categoria",
"type": "string",
"example": "idiomas"
},
"code": {
"description": "El indicador del tipo de artículo/componente, puede tener solo 3 valores posibles: 1 cuando el tipo articulo es LIB, 2 cuando el tipo de articulo es LIBD y 3 cuanto el tipo de articulo sea SERV",
"type": "number",
"example": 1
},
"group": {
"description": "1-Avulso, 2-Agrupado",
"type": "number",
"example": 1
},
"digitalCode": {
"description": "Código ERP do produto digital | Caso o group == 2",
"type": "string",
"example": "22006077"
},
"isExclusive": {
"description": "Item exclusivo: false - Não exclusivo, true - exclusivo",
"type": "boolean",
"example": true
}
},
"required": [
"familyCode",
"code",
"group",
"digitalCode",
"isExclusive"
]
}
},
"required": [
"articleRefId",
"totalItem",
"price",
"originalPrice",
"markupRate",
"priceWithMarkup",
"taxes",
"taxRate",
"discountList",
"salesTerms"
]
}
]
}
},
"required": [
"articleRefId",
"student",
"totalItem",
"price",
"originalPrice",
"taxes",
"taxRate",
"salesType",
"salesChannel",
"salesOption",
"componentList"
]
}
]
},
"freight": {
"type": "object",
"properties": {
"transportName": {
"type": "string"
},
"transportPhone": {
"type": "string"
},
"transportCode": {
"type": "string"
},
"orderNote": {
"type": "string"
},
"orderFreightValue": {
"type": "number"
},
"orderDeliveryForecast": {
"type": "string"
},
"orderEstablishment": {
"type": "string"
}
},
"required": [
"transportName",
"transportPhone",
"transportCode",
"orderNote",
"orderFreightValue",
"orderDeliveryForecast",
"orderEstablishment"
]
},
"addressList": {
"description": "Lista de domicilios asociados a la persona que realiza el pago",
"type": "array",
"uniqueItems": true,
"minItems": 2,
"maxItems": 3,
"items": [
{
"type": "object",
"properties": {
"address": {
"type": "object",
"properties": {
"addressType": {
"description": "Indicador del tipo de domicilio, solo puede tener 3 valores (Physical, Mailing, Shipping)",
"type": "string",
"maxLength": 7,
"minLength": 8
},
"street": {
"type": "string"
},
"outdoorNumber": {
"type": "string"
},
"interiorNumber": {
"type": "string"
},
"neighborhood": {
"type": "string"
},
"city": {
"type": "string"
},
"postalCode": {
"type": "string"
},
"county": {
"type": "object",
"properties": {
"refId": {
"type": "string",
"format": "uuid",
"maxLength": 36,
"minLength": 36
},
"countyCode": {
"type": "string"
}
},
"required": [
"refId",
"countyCode"
]
},
"contact": {
"type": "string"
},
"phone": {
"type": "string"
},
"phone2": {
"type": "string"
},
"position": {
"type": "string"
},
"officeHours": {
"type": "string"
},
"email": {
"type": "string",
"format": "email"
},
"timeZone": {
"type": "object",
"properties": {
"refId": {
"type": "string",
"format": "uuid",
"maxLength": 36,
"minLength": 36
}
},
"required": [
"refId"
]
},
"language": {
"type": "object",
"properties": {
"refId": {
"type": "string",
"format": "uuid",
"maxLength": 36,
"minLength": 36
}
},
"required": [
"refId"
]
},
"active": {
"type": "boolean"
}
},
"required": [
"addressType",
"street",
"outdoorNumber",
"interiorNumber",
"neighborhood",
"city",
"postalCode",
"county",
"contact",
"phone",
"phone2",
"position",
"officeHours",
"email",
"timeZone",
"language",
"active"
]
}
},
"required": [
"address"
]
}
]
},
"invoiceData": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"lastName": {
"type": "string"
},
"document": {
"type": "string"
},
"isLegalPerson": {
"type": "boolean"
}
},
"required": [
"name",
"document",
"isLegalPerson"
]
},
"transactions": {
"description": "Lista de formas de pago utilizadas en la compra. Ejemplo, si se realiza un pago con 2 tarjetas, se cada elemento tendrá la información relacionada a la compra realizada de cada tarjeta."
"type": "array",
"items": [
{
"type": "object",
"properties": {
"orderId": {
"description": "Identificador de la compra del lado del integrador (Venda Bem Pago)",
"type": "string"
},
"transactionId": {
"description": "Identificador de la transacción del lado del integrador (Transaçao Bem Pago)",
"type": "string"
},
"establishmentCode": {
"type": "integer"
},
"paymentMethodCode": {
"type": "integer"
},
"value": {
"type": "integer"
},
"valueDiscount": {
"type": "integer"
},
"installments": {
"type": "integer"
},
"status": {
"type": "integer"
},
"authorization": {
"type": "string"
},
"operatorTransactionCode": {
"type": "string"
},
"operatorApprovalDate": {
"type": "string"
},
"receipt": {
"type": "string"
},
"nsu": {
"type": "string"
},
"message": {
"type": "string"
},
"card": {
"description": "Datos de la tarjeta, este campo solo es obligatorio cuando el pago es con tarjeta",
"type": "object",
"properties": {
"cardHolder": {
"description": "Nombre del titular de la tarjeta",
"type": "string"
},
"cardNumber": {
"description": "Número de la tarjeta utilizada, tal cual la devuelve el integrador, con una mascara que solo muestra los primeros 6 dígitos, seguidos de 7 asteríscos y los últimos 4 dígitos",
"examples": ["123456*******7890"],
"type": "string"
},
"document": {
"description": "Documento de identificación de la persona titular de la tarjeta (CPF)",
"type":"string"
}
},
"required": [
"cardHolder",
"cardNumber",
"document"
]
},
"paymentUrl": {
"description": "Este campo es obligatorio cuando es un pago fraccionado",
"type": "string"
},
"paymentValue": {
"type": "integer"
},
"interest": {
"description": "Es la diferencia entre paymentValue menos value",
"type": "integer"
}
},
"required": [
"orderId",
"transactionId",
"establishmentCode",
"paymentMethodCode",
"value",
"valueDiscount",
"installments",
"status",
"authorization",
"operatorTransactionCode",
"operatorApprovalDate",
"receipt",
"nsu",
"paymentUrl"
]
}
]
},
"splitPayment": {
"description": "Indicador de que la información es parte de un pago realizado con 2 tarjetas",
"type": boolean,
"example": true
},
"mixedBundling": {
"description": "Indicador de que el pago es fraccionado",
"type": boolean,
"example": true
},
"multipleBusinesses": {
"description": "Indicador de que el pago es parte de una compra multi-sello",
"type": boolean,
"example": false
}
},
"required": [
"external",
"paymentDate",
"parentGuardian",
"paymentMethod",
"price",
"originalPrice",
"taxes",
"taxRate",
"itemList",
"freight",
"addressList",
"invoiceData",
"transaction",
"splitPayment",
"mixedBundling",
"multipleBusinesses"
]
} |