# Create an order # OpenAPI definition ```json { "openapi": "3.0.0", "paths": { "/v2/orders": { "post": { "description": "Create an order by submitting a json payload.", "operationId": "OrdersController_postOrder", "parameters": [], "requestBody": { "required": true, "description": "Order data.", "content": { "application/json": { "schema": { "type": "object", "properties": { "buyerTaxId": { "type": "string", "description": "CNPJ do comprador.", "example": "65.413.430/0000-08" }, "sellerTaxId": { "type": "string", "description": "CNPJ do vendedor.", "example": "44.876.674/0000-49" }, "metadata": { "type": "object", "description": "Qualquer metadado que você queira anexar ao pedido.", "additionalProperties": true, "example": { "yourCustomFieldName": "yourCustomFieldValue" } }, "externalId": { "type": "string", "description": "ID interno do pedido do vendedor.", "default": "REF-10230456" }, "installments": { "description": "Parcelas", "type": "array", "items": { "type": "object", "properties": { "maturityDate": { "type": "string", "description": "A data de vencimento. Deve ser fornecida essa ou termDays, mas não ambos.", "example": "2024-02-10T00:00:00Z", "deprecated": true }, "termDays": { "type": "number", "description": "Número de dias até o vencimento. Deve ser fornecida essa ou maturityDate, mas não ambos.", "example": 30 }, "faceValueCents": { "type": "number", "description": "Valor nominal da parcela em centavos.", "example": 1020000 } }, "required": [ "faceValueCents" ], "x-readme-ref-name": "InstallmentsDto" } }, "items": { "description": "Itens do pedido.", "type": "array", "items": { "type": "object", "properties": { "productId": { "type": "string", "description": "Identificador único do produto.", "default": "7891910000197" }, "productName": { "type": "string", "description": "Nome do produto.", "default": "Cerveja Skol 350ml" }, "quantity": { "type": "number", "description": "Quantidade.", "default": 15 }, "unitPriceCents": { "type": "number", "description": "Preço unitário em centavos.", "default": 1020 } }, "required": [ "productId", "productName", "quantity", "unitPriceCents" ], "x-readme-ref-name": "OrderItemsDto" } }, "contactInformation": { "description": "Informações de Contato do comprador.", "allOf": [ { "type": "object", "properties": { "email": { "type": "string", "description": "E-mail do contato do comprador.", "example": "joaodasilva@example.com" }, "phone": { "type": "string", "description": "Número de telefone do contato do comprador.", "example": "+551243974164" }, "name": { "type": "string", "description": "Nome do contato do comprador.", "example": "Joao" }, "lastName": { "type": "string", "description": "Sobrenome do contato do comprador.", "default": "Da Silva" } }, "required": [ "email", "phone", "name", "lastName" ], "x-readme-ref-name": "ContactInformationDto" } ] }, "shippingLocation": { "description": "Endereço de Entrega.", "allOf": [ { "type": "object", "properties": { "address1": { "type": "string", "description": "Endereço linha 1.", "example": "Rua da Consolação, 930" }, "address2": { "type": "string", "description": "Endereço linha 2.", "example": "Apto 101" }, "city": { "type": "string", "description": "Cidade.", "example": "São Paulo" }, "region": { "type": "string", "description": "Estado.", "example": "São Paulo" }, "postalCode": { "type": "string", "description": "CEP.", "example": "01302000" }, "country": { "type": "string", "description": "País.", "example": "Brazil" } }, "required": [ "address1", "city", "region", "postalCode", "country" ], "x-readme-ref-name": "ShippingLocationDto" } ] }, "processingMode": { "type": "string", "description": "O modo de processamento da nota fiscal. 'DDF' significa que o vendedor faz o upload da nota fiscal para a plataforma antes da entrega das mercadorias. 'DDE' significa que o vendedor faz o upload da nota fiscal para a plataforma após a entrega das mercadorias.", "enum": [ "DDF", "DDE" ], "default": "DDF", "example": "DDF" } }, "required": [ "buyerTaxId", "sellerTaxId", "metadata", "installments", "items", "contactInformation", "shippingLocation", "processingMode" ], "x-readme-ref-name": "CreateOrderDto" } } } }, "responses": { "201": { "description": "Successful operation, order created.", "content": { "application/json": { "schema": { "type": "object", "properties": { "id": { "type": "string", "description": "ID interno do pedido no CrediPay. Formato UUID v4.", "example": "46dd63dd-1be4-4658-8deb-fa5dc578ad0b", "format": "uuid" }, "createdAt": { "type": "string", "description": "Data de criação do pedido.", "example": "2023-10-01T12:00:00Z", "format": "date-time" }, "updatedAt": { "type": "string", "description": "Data de atualização do pedido.", "example": "2023-10-01T12:00:00Z", "format": "date-time" }, "disbursedAt": { "type": "string", "description": "Data em que o pedido foi desembolsado para o vendedor.", "example": "2023-10-01T12:00:00Z", "format": "date-time" }, "externalId": { "type": "string", "description": "ID externo do pedido, se houver.", "example": "123456789" }, "status": { "type": "string", "description": "Status do pedido.", "example": "Accepted", "enum": [ "New", "Created", "Accepted", "Cancelled", "WaitingForInvoice", "Captured", "Expired", "Validating", "ValidationFailed", "PartiallyRefunded", "FullyRefunded" ] }, "invoice": { "description": "Nota fiscal do pedido.", "allOf": [ { "type": "object", "properties": { "id": { "type": "string", "description": "ID único da nota fiscal no sistema do CrediPay.", "example": "123e4567-e89b-12d3-a456-426614174000", "format": "uuid" }, "invoiceNumber": { "type": "string", "description": "Número da nota fiscal.", "example": "NFe00000000000000000000000001642012886703226971" }, "issuanceDate": { "type": "string", "description": "Data e hora de emissão da nota fiscal (ISO).", "example": "2023-10-02T15:30:00Z", "format": "date-time" }, "totalAmountCents": { "type": "number", "description": "Valor total da nota fiscal em centavos.", "example": 150000 } }, "required": [ "id", "invoiceNumber", "issuanceDate", "totalAmountCents" ], "x-readme-ref-name": "InvoiceResponseDto" } ] }, "buyer": { "description": "Comprador do pedido.", "allOf": [ { "type": "object", "properties": { "id": { "type": "string", "description": "ID do comprador.", "example": "a0eebc4b-1f3d-4b2a-8c5f-7e6d5f8e9b2f", "format": "uuid" }, "taxId": { "type": "string", "description": "CNPJ do comprador.", "example": "56596567000127" }, "name": { "type": "string", "description": "Nome do comprador.", "example": "Comprador Inexistente LTDA" } }, "required": [ "id", "taxId", "name" ], "x-readme-ref-name": "OrderBuyerDto" } ] }, "seller": { "description": "Vendedor do pedido.", "allOf": [ { "type": "object", "properties": { "id": { "type": "string", "description": "ID do vendedor.", "example": "a0eebc4b-1f3d-4b2a-8c5f-7e6d5f8e9b2f", "format": "uuid" }, "taxId": { "type": "string", "description": "CNPJ do vendedor.", "example": "56596567000127" }, "name": { "type": "string", "description": "Nome do vendedor.", "example": "Nome Fictício Distribuidora LTDA" } }, "required": [ "id", "taxId", "name" ], "x-readme-ref-name": "OrderSellerDto" } ] }, "repayments": { "description": "Informações de pagamento do pedido.", "type": "array", "items": { "type": "object", "properties": { "id": { "type": "string", "description": "ID único do pagamento.", "example": "e912ba21-d530-4982-aa92-a06d7518afa0", "format": "uuid" }, "pdfUrl": { "type": "string", "description": "URL para o arquivo PDF do pagamento (boleto).", "example": "https://api.starkbank.com/v2/invoice/fb1553149ff34c8db238f36dc64a8232.pdf" }, "status": { "type": "string", "description": "Status do pagamento.", "example": "Open", "enum": [ "Open", "ProcessingPayment", "Paid", "Canceled", "Expired", "Unknown", "Failed", "CancellationFailed", "Reversed" ] }, "totalAmountCents": { "type": "number", "description": "Valor total a ser pago em centavos.", "example": 100000 }, "createdAt": { "type": "string", "description": "Data e hora em que o pagamento foi criado.", "example": "2023-10-01T12:00:00Z", "format": "date-time" }, "dueDate": { "type": "string", "description": "Data de vencimento do pagamento.", "example": "2023-10-15T12:00:00Z", "format": "date-time" }, "paymentDate": { "type": "string", "description": "Data real em que o pagamento foi efetuado.", "example": "2023-10-10T12:00:00Z", "format": "date-time", "nullable": true }, "paidAmountCents": { "type": "number", "description": "Valor efetivamente pago em centavos.", "example": 50000 }, "parentId": { "type": "string", "description": "ID do pagamento pai, se aplicável (ex.: vinculado a outro pagamento). \t\t\tQuando um pedido é reembolsado, ou um pagamento é renegociado/estendido, o pagamento pai \t\t\tserá cancelado e um novo será criado.", "example": "3b27b131-7ab7-4a67-b88e-424c1d30b247", "format": "uuid", "nullable": true } }, "required": [ "id", "pdfUrl", "status", "totalAmountCents", "createdAt", "dueDate", "paymentDate", "paidAmountCents", "parentId" ], "x-readme-ref-name": "RepaymentResponseDto" } }, "errors": { "description": "Qualquer tipo de erro que pode ocorrer durante a vida útil de um pedido. \t\t\tTanto erros de reembolso quanto de validação de nota fiscal estão incluídos aqui. \t\t\tErros de validação anteriores não são incluídos após uma nova tentativa bem-sucedida de upload de nota fiscal.", "type": "array", "items": { "type": "object", "properties": { "code": { "type": "string", "description": "Código do erro.", "example": "INVALID_TAX_ID" }, "message": { "type": "string", "description": "Mensagem de erro.", "example": "O CNPJ fornecido é inválido." } }, "required": [ "code", "message" ], "x-readme-ref-name": "OrderErrorDto" } }, "refunds": { "description": "Reembolsos do pedido.", "type": "array", "items": { "type": "object", "properties": { "id": { "type": "string", "description": "ID único do reembolso.", "example": "e912ba21-d530-4982-aa92-a06d7518afa0", "format": "uuid" }, "amountCents": { "type": "number", "description": "Valor do reembolso em centavos.", "example": 50000 }, "status": { "type": "string", "description": "Status do reembolso.", "example": "Pending", "enum": [ "Pending", "Completed", "Failed" ] }, "createdAt": { "type": "string", "description": "Data e hora em que o reembolso foi criado.", "example": "2023-10-01T12:00:00Z", "format": "date-time" }, "error": { "type": "string", "description": "O erro que ocorreu durante o reembolso.", "example": "Invalid tax ID format.", "nullable": true } }, "required": [ "id", "amountCents", "status", "createdAt", "error" ], "x-readme-ref-name": "OrderRefundDto" } }, "metadata": { "type": "object", "description": "Metadados passados pelo vendedor na criação do pedido.", "additionalProperties": true, "example": { "yourCustomFieldName": "yourCustomFieldValue" } }, "totalAmountCents": { "type": "number", "description": "Valor total do pedido em centavos. \t\t \tSe o pedido tiver uma nota fiscal, este valor é retirado da nota fiscal;\n\t\t\tcaso contrário, é retirado do próprio pedido.", "example": 12345 } }, "required": [ "id", "createdAt", "updatedAt", "externalId", "status", "invoice", "buyer", "seller", "repayments", "errors", "refunds", "metadata", "totalAmountCents" ], "x-readme-ref-name": "GetOrderResponseDto" } } } } }, "summary": "Create an order", "tags": [ "Orders" ] } } }, "info": { "title": "Credipay API", "description": "", "version": "2.0", "contact": {} }, "servers": [ { "url": "https://api.pre.credix.finance", "description": "Sandbox" }, { "url": "https://api.credix.finance", "description": "Production" } ], "components": { "securitySchemes": { "api_key": { "type": "apiKey", "in": "header", "name": "X-CREDIPAY-API-KEY" } } }, "security": [ { "api_key": [] } ] } ```