Estoy refactorizando nuestra integración de compropago y cuando envió órdenes al modo de prueba en la respuesta de order = client.api.place_order(order_info) el parametro order.status en el cual esperaría el valor 'pending' está llegando con el valor nil, y el campo type no está en la estructura, el cual esperaría con el valor "charge.pending" como descrito en la respuesta aqui: https://panel.compropago.com/documentacion/api/crear-cargo ya que no especifican una respuesta diferente para el SDK de Ruby, ni muestran ejemplos en este repositorio.
Es un error? Hay otra forma de verificar el estado del cargo sin tener que esperar el webhook o hacer una segunda solicitud al API?
irb(main):006:0> order
#<NewOrderInfo:0x007fe2d8938b50 @order_info=#<OrderInfo:0x007fe2d8938a60 @exchange=#<Exchange:0x007fe2d8938a10 @rate=1, @request="4bddcefc-7804-4494-9987-6be5385c043f", @origin_amount="100.00", @final_amount="100.00", @origin_currency="MXN", @final_currency="MXN", @exchange_id=nil>, @order_id="3a30885b-ac91-47cb-81a6-df7c323aed35", @order_name="project_foobar-back_3a30885b-ac91-47cb-81a6-df7c323aed35", @order_price=100, @image_url="">, @fee_details=#<FeeDetails:0x007fe2d89389e8 @amount=5.9, @tax=0.94, @tax_percent=nil, @currency="MXN", @type="compropago_fee", @description=nil, @amount_refunded=0>, @instructions=#<Instructions:0x007fe2d89389c0 @details=#<InstructionDetails:0x007fe2d8938970 @payment_amount="100.00", @payment_store="Oxxo", @amount="100.00", @store="Oxxo", @bank_account_number="0000 0000 0000 0000", @company_reference_name="ComproPago", @company_reference_number="00000000000000", @company_bank_number="00000000000000", @order_reference_number="40E73632", @bank_account_holder_name="ComproPago SAPI de CV", @bank_reference="40E73632", @bank_name="Banco Pruebas">, @description="Para que el pago sea válido debes pagar la cantidad exacta de $ 100.00", @step_1="Ir a la caja OXXO de 8:00 am a 8:00 pm", @step_2="Solicitar depósito bancario al número: Banco Pruebas 0000 0000 0000 0000", @step_3="Deposite la cantidad exacta de: $ 100.00", @note_extra_comition="No incluye la comisión de $10.00 de Oxxo", @note_expiration_date="Orden válida antes de 07/10/2018 04:00, en caso de vencimiento genera una nueva compra.", @note_confirmation="Tu pago será confirmado a través de SMS y correo electronico. ¡Gracias por usar ComproPago!">, @id="ch_e19838ba-e966-4bbb-a295-2eb58fbe7a0b", @short_id="40E73632", @object="charge", @status=nil, @created=nil, @exp_date=nil, @live_mode=nil, @api_version="1.1">
Hola!
Estoy refactorizando nuestra integración de compropago y cuando envió órdenes al modo de prueba en la respuesta de
order = client.api.place_order(order_info)el parametroorder.statusen el cual esperaría el valor'pending'está llegando con el valornil, y el campotypeno está en la estructura, el cual esperaría con el valor"charge.pending"como descrito en la respuesta aqui: https://panel.compropago.com/documentacion/api/crear-cargo ya que no especifican una respuesta diferente para el SDK de Ruby, ni muestran ejemplos en este repositorio.Es un error? Hay otra forma de verificar el estado del cargo sin tener que esperar el webhook o hacer una segunda solicitud al API?
Aquí la respuesta que obtengo:
PD Los invitaria a checar el standard JSON_API http://jsonapi.org/