Closed yusjacobs closed 3 years ago
Hola @yusjacobs !
He agregado un ejemplo para crear un cargo para los customer, aquí abajo te dejo el fragmento...
`customer = openpay.Customer.retrieve('amce5ycvwycfzyarjf8l') print "customer: ", customer
card = customer.cards.create( card_number="4111111111111111", holder_name="Juan Perez Ramirez", expiration_year="20", expiration_month="12", cvv2="110", address={ "city":"Querétaro", "country_code":"MX", "postal_code":"76900", "line1":"Av 5 de Febrero", "line2":"Roble 207", "line3":"col carrillo", "state":"Queretaro" })
print "Card: ", card
print "Creating card as customer" charge = customer.charges.create(source_id=card.id, method="card", amount=100, description="Charge", capture=False)
print "charge: ", charge
print charge.refund()`
Saludos!
Gracias @marcosAlvarado ,
Otra duda, si el cargo se hace con un token_id de tarjeta en lugar de una tarjeta previamente creada, pero se quiere hacer el cargo a nivel customer. Hay que pasar el customer_id?
Saludos,
@marcosAlvarado ya vi que primero definiste la variable customer a un cliente en específico y con eso referencias el cargo. Gracias!
Hola de nuevo @yusjacobs!
Si lo que deseas hacer es un cargo con una tarjeta que no se creo para el Customer, debes ejecutar el cargo de la misma forma por ejemplo
customer = openpay.Customer.retrieve('{customerId}') charge = customer.charges.create(source_id={tokenId}, method="card", amount=100, description="Charge", capture=False)
de esta forma la petición será la siguiente
POST https://sandbox-api.openpay.mx/v1/merchants/{merchantId}/customers/{customerId}/charges { "source_id": "{tokenId}", "method": "card", "amount":"100", "description":"Charge", "capture":false }
Saludos!
Gracias,
No es necesario pasar también el deviceSessionId?
Hola! Buen día! Si es necesario el deviceSessionId. Saludos!
Hola, buenas tardes, podrías ser más claro donde va el deviceSessionId, ya que no puedo hacer cargos porque me dice que en el mensaje de error que no lo esta recibiendo., pero en el ejemplo de la documentación no viene donde se supone que está o se usa. Que tengas buen día.
Hola en el ambiente sandbox todo mi código funciona bien. Cuando pase a productivo obtengo este error Invalid usage use_3d_secure:true and capture:false, error code: 1003. Alguna sugerencia?
Ejemplo de consulta: charge = customer.charges.create(source_id='esvpngcg0o73icqzrjla', method="card", amount=amount, description='Cargo de Prueba' capture=False, redirect_url='http://www.openpay.mx/index.html', device_session_id="cs345ds32dFdfgE43Sa", use_3d_secure=True)
Podrian Apoyarme a integrar un pago en Angular
El tema principal ya se atendió.
Podrian Apoyarme a integrar un pago en Angular
@maraleronavaa puedes dejar tus dudas en el repositorio correspondiente por favor
Hola @marcosAlvarado,
Gracias por actualizar la documentación. Era muy necesario desde hace tiempo. Tengo una duda con respecto al ejemplo de charges. Incluiste un ejemplo de cómo generar un charge a nivel merchant (comercio). Si no me equivoco, la única diferencia para crear el charge a nivel de cliente sería que debemos pasar el String customer_id a la hora de crear el charge, correcto? La sintaxis sería la siguiente?
charge = openpay.Charge.create_as_customer( source_id="k2trvya1nxpcytgww4rt", customer_id="cz4nkhrlcu9k7qd4lwqx", method="card", amount=100, description="Fourth charge", )
Saludos,