Skip to main content
Glama

vaultix_create_payout

Create payouts via PIX or bank transfer to withdraw funds from the Vaultix payment system. Specify amount in cents and recipient details for secure transactions.

Instructions

Create a payout (withdrawal) via PIX or bank transfer. Amount in cents.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
amountYesAmount in cents (minimum 100)
pix_keyNoPIX key (for PIX payout)
bank_codeNoBank code (for bank transfer)
branchNoBranch number
accountNoAccount number
account_typeNoAccount type
holder_nameNoAccount holder name
holder_documentNoHolder CPF/CNPJ
descriptionNoPayout description

Implementation Reference

  • The handler logic for the 'vaultix_create_payout' tool. It builds a destination object for PIX or bank transfer based on input arguments and makes a POST request to the /payouts endpoint using the VaultixClient.
    case 'vaultix_create_payout': const destination: any = {} if (args.pix_key) { destination.pix_key = args.pix_key } else { destination.bank_code = args.bank_code destination.branch = args.branch destination.account = args.account destination.account_type = args.account_type } destination.holder_name = args.holder_name destination.holder_document = args.holder_document return client.post('/payouts', { amount: args.amount, destination, description: args.description, })
  • The tool schema definition for 'vaultix_create_payout', including name, description, and inputSchema specifying parameters for payout creation.
    { name: 'vaultix_create_payout', description: 'Create a payout (withdrawal) via PIX or bank transfer. Amount in cents.', inputSchema: { type: 'object', properties: { amount: { type: 'number', description: 'Amount in cents (minimum 100)' }, pix_key: { type: 'string', description: 'PIX key (for PIX payout)' }, bank_code: { type: 'string', description: 'Bank code (for bank transfer)' }, branch: { type: 'string', description: 'Branch number' }, account: { type: 'string', description: 'Account number' }, account_type: { type: 'string', enum: ['checking', 'savings'], description: 'Account type' }, holder_name: { type: 'string', description: 'Account holder name' }, holder_document: { type: 'string', description: 'Holder CPF/CNPJ' }, description: { type: 'string', description: 'Payout description' }, }, required: ['amount'], }, },
  • The exported tools array where 'vaultix_create_payout' is registered as one of the available MCP tools.
    export const tools: Tool[] = [ // ==================== CHARGES ==================== { name: 'vaultix_create_charge', description: 'Create a new payment charge (PIX, Credit Card, or Boleto). Amount is in cents (e.g., 5000 = R$ 50,00)', inputSchema: { type: 'object', properties: { amount: { type: 'number', description: 'Amount in cents (minimum 100 = R$ 1,00)' }, payment_method: { type: 'string', enum: ['pix', 'credit_card', 'boleto'], description: 'Payment method' }, customer_name: { type: 'string', description: 'Customer name' }, customer_email: { type: 'string', description: 'Customer email' }, customer_document: { type: 'string', description: 'Customer CPF/CNPJ' }, description: { type: 'string', description: 'Charge description' }, }, required: ['amount', 'payment_method', 'customer_name', 'customer_email'], }, }, { name: 'vaultix_get_charge', description: 'Retrieve a charge by ID', inputSchema: { type: 'object', properties: { id: { type: 'string', description: 'Charge ID (ch_...)' }, }, required: ['id'], }, }, { name: 'vaultix_list_charges', description: 'List all charges with optional filters', inputSchema: { type: 'object', properties: { limit: { type: 'number', description: 'Maximum results (1-100)' }, status: { type: 'string', enum: ['pending', 'paid', 'failed', 'canceled', 'refunded'], description: 'Filter by status' }, payment_method: { type: 'string', enum: ['pix', 'credit_card', 'boleto'], description: 'Filter by payment method' }, }, }, }, { name: 'vaultix_cancel_charge', description: 'Cancel a pending or authorized charge', inputSchema: { type: 'object', properties: { id: { type: 'string', description: 'Charge ID to cancel' }, }, required: ['id'], }, }, // ==================== CUSTOMERS ==================== { name: 'vaultix_create_customer', description: 'Create a new customer', inputSchema: { type: 'object', properties: { name: { type: 'string', description: 'Customer name' }, email: { type: 'string', description: 'Customer email' }, document: { type: 'string', description: 'CPF/CNPJ' }, phone: { type: 'string', description: 'Phone number' }, }, required: ['name'], }, }, { name: 'vaultix_get_customer', description: 'Retrieve a customer by ID', inputSchema: { type: 'object', properties: { id: { type: 'string', description: 'Customer ID (cus_...)' }, }, required: ['id'], }, }, { name: 'vaultix_list_customers', description: 'List all customers', inputSchema: { type: 'object', properties: { limit: { type: 'number', description: 'Maximum results (1-100)' }, email: { type: 'string', description: 'Filter by email' }, }, }, }, { name: 'vaultix_update_customer', description: 'Update a customer', inputSchema: { type: 'object', properties: { id: { type: 'string', description: 'Customer ID' }, name: { type: 'string', description: 'New name' }, email: { type: 'string', description: 'New email' }, phone: { type: 'string', description: 'New phone' }, }, required: ['id'], }, }, { name: 'vaultix_delete_customer', description: 'Delete a customer', inputSchema: { type: 'object', properties: { id: { type: 'string', description: 'Customer ID to delete' }, }, required: ['id'], }, }, // ==================== REFUNDS ==================== { name: 'vaultix_create_refund', description: 'Create a refund for a paid charge. Amount in cents for partial refund.', inputSchema: { type: 'object', properties: { charge: { type: 'string', description: 'Charge ID to refund' }, amount: { type: 'number', description: 'Amount in cents (optional, for partial refund)' }, reason: { type: 'string', description: 'Reason for refund' }, }, required: ['charge'], }, }, { name: 'vaultix_get_refund', description: 'Retrieve a refund by ID', inputSchema: { type: 'object', properties: { id: { type: 'string', description: 'Refund ID (re_...)' }, }, required: ['id'], }, }, { name: 'vaultix_list_refunds', description: 'List all refunds', inputSchema: { type: 'object', properties: { limit: { type: 'number', description: 'Maximum results (1-100)' }, charge: { type: 'string', description: 'Filter by charge ID' }, }, }, }, // ==================== BALANCE ==================== { name: 'vaultix_get_balance', description: 'Get current account balance (available and pending)', inputSchema: { type: 'object', properties: {}, }, }, { name: 'vaultix_list_balance_transactions', description: 'List balance transactions (statement)', inputSchema: { type: 'object', properties: { limit: { type: 'number', description: 'Maximum results (1-100)' }, type: { type: 'string', enum: ['charge', 'refund'], description: 'Filter by type' }, }, }, }, // ==================== PRODUCTS ==================== { name: 'vaultix_create_product', description: 'Create a new product in the catalog. Price is in cents.', inputSchema: { type: 'object', properties: { name: { type: 'string', description: 'Product name' }, price: { type: 'number', description: 'Price in cents' }, description: { type: 'string', description: 'Product description' }, stock_quantity: { type: 'number', description: 'Stock quantity' }, sku: { type: 'string', description: 'SKU code' }, }, required: ['name', 'price'], }, }, { name: 'vaultix_get_product', description: 'Retrieve a product by ID', inputSchema: { type: 'object', properties: { id: { type: 'string', description: 'Product ID (prod_...)' }, }, required: ['id'], }, }, { name: 'vaultix_list_products', description: 'List all products', inputSchema: { type: 'object', properties: { limit: { type: 'number', description: 'Maximum results (1-100)' }, status: { type: 'string', enum: ['active', 'draft', 'archived'], description: 'Filter by status' }, search: { type: 'string', description: 'Search by name or SKU' }, }, }, }, { name: 'vaultix_update_product', description: 'Update a product', inputSchema: { type: 'object', properties: { id: { type: 'string', description: 'Product ID' }, name: { type: 'string', description: 'New name' }, price: { type: 'number', description: 'New price in cents' }, stock_quantity: { type: 'number', description: 'New stock quantity' }, }, required: ['id'], }, }, { name: 'vaultix_delete_product', description: 'Delete a product', inputSchema: { type: 'object', properties: { id: { type: 'string', description: 'Product ID to delete' }, }, required: ['id'], }, }, // ==================== ORDERS ==================== { name: 'vaultix_get_order', description: 'Retrieve an order by ID', inputSchema: { type: 'object', properties: { id: { type: 'string', description: 'Order ID' }, expand: { type: 'string', enum: ['items'], description: 'Expand items' }, }, required: ['id'], }, }, { name: 'vaultix_list_orders', description: 'List all orders', inputSchema: { type: 'object', properties: { limit: { type: 'number', description: 'Maximum results (1-100)' }, status: { type: 'string', enum: ['pending', 'processing', 'completed', 'canceled'], description: 'Filter by status' }, payment_status: { type: 'string', enum: ['pending', 'paid', 'failed'], description: 'Filter by payment status' }, }, }, }, // ==================== TRANSACTIONS ==================== { name: 'vaultix_get_transaction', description: 'Retrieve a transaction by ID', inputSchema: { type: 'object', properties: { id: { type: 'string', description: 'Transaction ID' }, }, required: ['id'], }, }, { name: 'vaultix_list_transactions', description: 'List all transactions (unified view of charges, refunds, payouts)', inputSchema: { type: 'object', properties: { limit: { type: 'number', description: 'Maximum results (1-100)' }, type: { type: 'string', enum: ['charge', 'refund', 'payout'], description: 'Filter by type' }, source: { type: 'string', enum: ['charge', 'refund', 'payout'], description: 'Filter by source' }, }, }, }, { name: 'vaultix_get_transactions_summary', description: 'Get transaction summary for a period', inputSchema: { type: 'object', properties: { period: { type: 'string', enum: ['24h', '7d', '30d', '90d'], description: 'Period for summary (default: 30d)' }, }, }, }, // ==================== PAYMENT LINKS ==================== { name: 'vaultix_create_payment_link', description: 'Create a shareable payment link. Amount in cents.', inputSchema: { type: 'object', properties: { amount: { type: 'number', description: 'Amount in cents (minimum 100)' }, description: { type: 'string', description: 'Link description' }, payment_methods: { type: 'array', items: { type: 'string' }, description: 'Allowed methods: pix, credit_card' }, success_url: { type: 'string', description: 'Redirect URL after payment' }, max_uses: { type: 'number', description: 'Maximum number of uses' }, }, required: ['amount'], }, }, { name: 'vaultix_get_payment_link', description: 'Retrieve a payment link by ID', inputSchema: { type: 'object', properties: { id: { type: 'string', description: 'Payment Link ID (plink_...)' }, }, required: ['id'], }, }, { name: 'vaultix_list_payment_links', description: 'List all payment links', inputSchema: { type: 'object', properties: { limit: { type: 'number', description: 'Maximum results (1-100)' }, status: { type: 'string', enum: ['active', 'inactive'], description: 'Filter by status' }, }, }, }, { name: 'vaultix_deactivate_payment_link', description: 'Deactivate a payment link', inputSchema: { type: 'object', properties: { id: { type: 'string', description: 'Payment Link ID to deactivate' }, }, required: ['id'], }, }, // ==================== PAYOUTS ==================== { name: 'vaultix_create_payout', description: 'Create a payout (withdrawal) via PIX or bank transfer. Amount in cents.', inputSchema: { type: 'object', properties: { amount: { type: 'number', description: 'Amount in cents (minimum 100)' }, pix_key: { type: 'string', description: 'PIX key (for PIX payout)' }, bank_code: { type: 'string', description: 'Bank code (for bank transfer)' }, branch: { type: 'string', description: 'Branch number' }, account: { type: 'string', description: 'Account number' }, account_type: { type: 'string', enum: ['checking', 'savings'], description: 'Account type' }, holder_name: { type: 'string', description: 'Account holder name' }, holder_document: { type: 'string', description: 'Holder CPF/CNPJ' }, description: { type: 'string', description: 'Payout description' }, }, required: ['amount'], }, }, { name: 'vaultix_get_payout', description: 'Retrieve a payout by ID', inputSchema: { type: 'object', properties: { id: { type: 'string', description: 'Payout ID (po_...)' }, }, required: ['id'], }, }, { name: 'vaultix_list_payouts', description: 'List all payouts', inputSchema: { type: 'object', properties: { limit: { type: 'number', description: 'Maximum results (1-100)' }, status: { type: 'string', enum: ['pending', 'in_transit', 'completed', 'failed', 'canceled'], description: 'Filter by status' }, }, }, }, { name: 'vaultix_cancel_payout', description: 'Cancel a pending payout', inputSchema: { type: 'object', properties: { id: { type: 'string', description: 'Payout ID to cancel' }, }, required: ['id'], }, }, ]

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/VautlixDevelopment/mcpVaultix'

If you have feedback or need assistance with the MCP directory API, please join our Discord server