Quickstart
Vamos a crear un pago de transferencia bancaria, simular que el cliente sube el comprobante y verlo confirmado. Cinco minutos. Necesitás solamente un curl y tu API key test.
-
Conseguí tu API key test
Logueate al dashboard, andá a Configuración → API keys, creá una key. Va a verse así:
sk_test_a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6 -
Creá un pago de transferencia
Ventana de terminal curl -X POST https://api.pay.ingalca.com/v1/payments \-H "Authorization: Bearer sk_test_TU_KEY_ACA" \-H "Content-Type: application/json" \-d '{"provider": "transferencia","amount": 150000,"reference": "ORDEN-001","customer": {"customerId": "user_42","name": "Juan","lastname": "Pérez","email": "juan@example.com"}}'const res = await fetch('https://api.pay.ingalca.com/v1/payments', {method: 'POST',headers: {'Authorization': `Bearer ${process.env.INGALCA_API_KEY}`,'Content-Type': 'application/json',},body: JSON.stringify({provider: 'transferencia',amount: 150000,reference: 'ORDEN-001',customer: {customerId: 'user_42',name: 'Juan',lastname: 'Pérez',email: 'juan@example.com',},}),});const payment = await res.json();console.log(payment);$response = Http::withToken(env('INGALCA_API_KEY'))->post('https://api.pay.ingalca.com/v1/payments', ['provider' => 'transferencia','amount' => 150000,'reference' => 'ORDEN-001','customer' => ['customerId' => 'user_42','name' => 'Juan','lastname' => 'Pérez','email' => 'juan@example.com',],]);$payment = $response->json();La respuesta incluye el
public_iddel pago y los datos de la cuenta bancaria que tenés que mostrarle al cliente:{"data": {"id": "pay_abc123def456","status": "pending","amount": 150000,"currency": "PYG","reference": "ORDEN-001","provider": "transferencia","provider_data": {"bank_accounts": [{"bank_name": "BNF","account_type": "corriente","account_number": "123-456789-0","holder_name": "Tu Comercio S.A.","holder_ruc": "80012345-6"}]}}} -
Simulá la subida del comprobante
En producción, lo subiría tu cliente final desde tu app. Para probar, hacelo vos:
Ventana de terminal curl -X POST https://api.pay.ingalca.com/v1/payments/pay_abc123def456/receipt \-H "Authorization: Bearer sk_test_TU_KEY_ACA" \-F "file=@./comprobante.jpg" \-F "notes=Transferí desde BNF a las 14:30"El pago pasa de
pendingareceipt_uploaded. -
Aprobá el pago
Ventana de terminal curl -X POST https://api.pay.ingalca.com/v1/payments/pay_abc123def456/confirm \-H "Authorization: Bearer sk_test_TU_KEY_ACA" \-H "Content-Type: application/json" \-d '{"notes": "Verificado contra extracto bancario"}'El pago queda en
confirmedy disparamos el webhookpayment.confirmeda tu URL configurada.
¿Qué sigue?
- Configurar tu webhook para enterarte del cambio sin pollear.
- Pagos con tarjeta tokenizada si querés cobrar de forma recurrente.
- Reference completo de payments con todos los campos.