px-ios icon indicating copy to clipboard operation
px-ios copied to clipboard

Métodos de pago Colombia.

Open FelipeMartinez10 opened this issue 6 years ago • 2 comments

Estuve revisando la documentación y no logro obtener que se muestren los otros medios de pago al iniciar el proceso de checkout. La preferencia la estoy creando en el servidor utilizando el SDK para NodeJS (https://github.com/mercadopago/dx-nodejs), con el siguiente código:

let preference = {
    items: [{
      title: 'Pago de saldo.',
      quantity: 1,
      currency_id: 'COP',
      unit_price: 20000.0
    }],
    payer: {
      email: "[email protected]"
    },
    payment_methods:{
      excluded_payment_methods: [],
      excluded_payment_types: [],
      default_payment_method_id: "pse"
    }
  }
  return mercadopago.preferences.create(preference);

Al crear la preferencia se obtiene la siguiente respuesta:

 "response": {
            "processing_modes": [],
            "binary_mode": false,
            "payment_methods": {
                "excluded_payment_methods": [
                    {
                        "id": ""
                    }
                ],
                "excluded_payment_types": [
                    {
                        "id": ""
                    }
                ],
                "installments": null,
                "default_payment_method_id": "pse",
                "default_installments": null
            },
            "collector_id": **********,
            "operation_type": "regular_payment",
            "items": [
                {
                    "id": "",
                    "picture_url": "",
                    "title": "Pago de saldo.",
                    "description": "",
                    "category_id": "",
                    "currency_id": "COP",
                    "quantity": 1,
                    "unit_price": 20000
                }
            ],
            "payer": {
                "name": "",
                "surname": "",
                "email": "[email protected]",
                "date_created": "",
                "phone": {
                    "area_code": "",
                    "number": ""
                },
                "identification": {
                    "type": "",
                    "number": ""
                },
                "address": {
                    "street_name": "",
                    "street_number": null,
                    "zip_code": ""
                }
            },
            "back_urls": {
                "success": "",
                "pending": "",
                "failure": ""
            },
            "auto_return": "",
            "client_id": "963",
            "marketplace": "NONE",
            "marketplace_fee": 0,
            "shipments": {
                "receiver_address": {
                    "zip_code": "",
                    "street_number": null,
                    "street_name": "",
                    "floor": "",
                    "apartment": ""
                }
            },
            "notification_url": null,
            "external_reference": "",
            "additional_info": "",
            "expires": false,
            "expiration_date_from": null,
            "expiration_date_to": null,
            "date_created": "2018-11-20T14:02:31.652-04:00",
            "id": "378925295-9b5d5210-21a6-470f-9593-72c93c1b782d",
            "init_point": "https://www.mercadopago.com/mco/checkout/start?pref_id=378925295-9b5d5210-21a6-470f-9593-72c93c1b782d",
            "sandbox_init_point": "https://sandbox.mercadopago.com/mco/checkout/pay?pref_id=378925295-9b5d5210-21a6-470f-9593-72c93c1b782d"
        },
        "status": 201,
        "idempotency": null,
        "pagination": null

Posteriormente, se procede a realizar el Mobile Checkout con el id de la preferencia:

  let checkout = MercadoPagoCheckout.init(builder: MercadoPagoCheckoutBuilder.init(publicKey: "TEST-**********", preferenceId: "378925295-9b5d5210-21a6-470f-9593-72c93c1b782d"))
        
        if let myNavigationController = navigationController {
            checkout.start(navigationController: myNavigationController)
        }

En la aplicación al ejecutar la función anterior lo primero que se muestra es la pantalla para ingresar la tarjeta:

Y si se intenta ingresar la tarjeta de prueba para Colombia (4013 5406 8274 6260) https://www.mercadopago.com.co/developers/es/guides/payments/api/testing/ se muestra este error: image

Al presionar "More Info":

image

Nota

Me di cuenta que si abro la url de sandbox_init_point (https://sandbox.mercadopago.com/mco/checkout/pay?pref_id=378925295-9b5d5210-21a6-470f-9593-72c93c1b782d) se ingresa directamente a pago por pse y permite seleccionar los otros medios de pago. Esto me hace creer que el problema no estaría en la preferencia si no en la integración con el SDK.

image

He intentado modificar los parámetros de la preferencia, agregando más información del comprador pero no ha servido. Espero puedan orientarme sobre lo que puede estar sucediendo.

Estuve leyendo en el foro de desarrolladores y encontré usuarios con el mismo problema pero ninguna solución.

https://www.mercadopago.com.ar/developers/es/community/forum/?place=msg%2Fmercadopago-developers%2FbrAtzQ2fg8c%2FXxpPIL5TBAAJ

Gracias.

Originally posted by @f-martinez11 in https://github.com/mercadopago/px-ios/issues/1731#issuecomment-440393256

FelipeMartinez10 avatar Nov 21 '18 22:11 FelipeMartinez10

Gracias por todo el detalle @f-martinez11 . Lo analizamos, y seguimos por este hilo.

juansanzone avatar Nov 23 '18 12:11 juansanzone

Algún avance al respecto? Tampoco me funciona los métodos de pago desde Colombia en modo Sandbox Gracias de antemano!

jdnichollsc avatar Jun 07 '20 05:06 jdnichollsc