Ventas
Ventas con tarjeta de crédito/débito
Procesa una transacción de pago con un importe especificado. Esta es la operación principal para realizar cobros con tarjeta de crédito/débito.
Cuerpo de la Solicitud:
{
"object": "payments",
"locale": "es_ES",
"amount": 1000, // importe en céntimos (10.00 EUR)
"currency": "eur", // Código de moneda (ISO 4217)
"order": "ORDER-00001", // Identificador único del pedido
"token": { // Opcional: Gestión de tokens
"id": "token-1234", // ID del token
"expires_at": "2020-01-01T00:00:00Z", // Fecha de expiración
"type": "local", // Tipo de token (local/scheme)
"action": "store" // Acción (store para guardar, pay para pagar)
},
"order_summary": { // Opcional: Resumen del ticket de venta
"total": 1000, // Total final
"discount": 0, // Descuentos aplicados
"shipping": 0, // Gastos de envío
"subtotal": 1000, // Subtotal
"tip": 0 // Propina
},
"order_details": [ // Opcional: Detalles de los artículos
{
"product": "SKU000001", // SKU del producto
"quantity": 1, // Cantidad
"amount": 100, // Precio unitario
"tax": 9, // Impuestos
"discount": 0, // Descuento del artículo
"total": 109 // Total del artículo
}
],
"callback_url": "https://example.com/callback" // URL para notificaciones
}
Respuesta (200) - Éxito:
{
"request_id": "unique-id",
"object": "payments",
"locale": "es_ES",
"order": "ORDER-00001",
"amount": 1000,
"currency": "eur",
"payment_method": "card",
"token": { // Presente si se solicitó tokenización
"id": "token-1234",
"expires_at": "2020-01-01T00:00:00Z",
"type": "local"
},
"payment_details": {
"card_authorization_code": "123456", // Código de autorización
"card_processor_center": "REDSYS", // Centro procesador
"card_bin": "543200", // BIN de la tarjeta (primeros 6 dígitos)
"card_masked": "543200*****1234", // Tarjeta enmascarada
"card_subtype": "corporate", // Subtipo (corporate/consumer)
"card_brand": "VISA", // Marca de la tarjeta
"card_type": "credit", // Tipo (credit/debit)
"card_issuer": "Caixabank", // Emisor de la tarjeta
"card_issuer_code": 2100, // Código del emisor
"card_authorization_mode": "D" // Modo de autorización (D=Online, O=Offline)
},
"printing_details": {
"printable_data_encoded": "base64-encoded-data", // Datos codificados para impresión
"printable_data": { // Datos estructurados para impresión
"elemento_1": "value1",
"elemento_n": "valueN"
}
}
}
Respuesta (402) - Pago Denegado:
{
"request_id": "unique-id",
"object": "payments",
"locale": "es_ES",
"order": "ORDER-00001",
"amount": 1000,
"currency": "eur",
"payment_method": "card",
"payment_details": {
"card_declined_code": "190", // Código de denegación
"card_declined_message": "DENEGADA POR MOTIVOS DIVERSOS", // Mensaje de denegación
"card_processor_center": "REDSYS",
"card_bin": "543200",
"card_masked": "543200*****1234",
"card_subtype": "corporate",
"card_brand": "VISA",
"card_type": "credit",
"card_issuer": "Caixabank",
"card_issuer_code": 2100
},
"error": {
"code": "190",
"message": "denegada por motivos diversos"
}
}
Ventas con tokenización
POST /payments
{
"object": "payments",
"locale": "es_ES",
"amount": 1500,
"currency": "eur",
"order": "ORDER-002",
"token": {
"action": "store"
}
}