CoDi

Cómo utilizar CoDi para realizar un payin en México.

Payin por CoDi

POST https://gateway-test.pagsmile.com/trade/pay

Este endpoint te permite usar CoDi para realizar un payin en Mexico.

Headers

NameTypeDescription

Content-Type*

string

application/json; chartset=UTF-8

Authorization*

string

Basic Base($app_id:$security_key)

Request Body

NameTypeDescription

app_id*

string

Id de app creado en dashboard

- Max. 32 chars -

customer.phone*

string

Teléfono de usuario

customer.email*

string

Correo de usuario

customer.identify.number*

string

Número de identificación de usuario

- 13 chars, ex: MAMB780915969 -

method*

string

Valor fijo: CoDi

out_trade_no*

string

ID dado por el merchant en su sistema

- Max. 64 chars -

notify_url*

string

Donde Pagsmile enviará la notificación

customer.identify.type*

string

Tipo de identificación de usuario

- RFC -

customer.name*

string

Nombre de usuario

timestamp*

string

yyyy-MM-dd HH:mm:ss - Max. 19 chars -

subject*

string

Razón de pago o título

- Max. 128 chars -

order_amount*

string

Monto de pago

- 0.1~8,000 MXN -

order_currency*

string

Valor fijo: MXN

content

string

Detalle de razón de pago o título.

- Max. 255 chars -

buyer_id*

string

Usuario id de merchant

address.zip_code*

string

zip code - 5 digitos -

website_url

string

URL de website de merchant

- Max. 128 chars -

address.street

string

calle

- Requerido si no hay zip_code -

address.street_number

string

Número de calle

- Requerido si no hay zip_code -

address.city

string

ciudad

- Requerido si no hay zip_code -

address.state

string

provincia-Requerido si no hay zip_code-

return_url

string

Redirigir a la URL del merchant cuando el usuario haya terminado checkout

{
    "code": "10000",
    "msg": "Success",
    "prepay_id":"QUVQM3ZrVHZhdGJU****VpK02mcHY1a1d23MVRDaz0=-D7a1a5B0",
    "trade_no": "2022010110293900084",
    "out_trade_no": "202201010354004",
    "web_url": "",
    "trade_status": "PROCESSING",
    "qr_code":"{\"TYP\":20,\"v\":{\"DEV\":\"00000161803500000000/0\"},\"ic\":{\"IDC\":\"2cee29d4ed\",\"SER\":7254764,\"ENC\":\"d6XHjV42clxs162KdoN+Md4yJlnoh3Rpj9L+/gM4QnqFt2I+qJrGIAIbi4oX743+xK7apETvIpn+IDQ2tbjTN8Zo4WiPwPaDBIndqrvEoZbixTFPvoqIU+Cb0YVrwR/BeZ2AcikYvNZjvU8SGT/4X4MmbOT/aubVvVse8//CNTCc****L0wG7E5cMSY2zXARRWLfkFSjwCt7xqjklPwxsV2Z0N25m0epbvXyhCr48w5rKTmmTIiSkJoBrQRHIJX45*****180BWsYs4nwNfQT65c//v2IfQxbb03NSwF*****hwpHkCszGzEO8xXHXNCQ/FjbNrcyT6bkSS0EK8L//AyX99oR4808V****FU+3lpL7xW6YBL+0Q30ogdFw==\"},\"CRY\":\"bPi7ICAIYZ+7klXLtfDvHdDSNa0dO0wazXtC9l8OaYM=\"}",
    "reference": "0000000",
}

Consejos de pago para el usuario

  • Los usuarios solo necesitan escanear el código QR para finalizar el pago. El código QR se puede generar con el valor qr_code.

Ejemplo

curl --location --request POST 'https://gateway-test.pagsmile.com/trade/pay' \
--header 'Authorization: Basic MTYyNTgyOTIxNDUzMTY2Mzg6UGFnc21pbGVfc2tfZDUwMWQ1ZGNkNTI5OGQ5N2MwNmUzYjI4YjA2OWZjZmY3NDU5ZjY2NzNiMjFjMTFlYTY3NDM5MDgzOTZkOTYxNQ==' \
--header 'Content-Type: application/json' \
--data-raw '{
    "app_id": "162************38",
    "out_trade_no": "202201010354004",
    "method": "CoDi",
    "order_amount": "12.01",
    "order_currency": "MXN",
    "subject": "trade pay test",
    "content": "trade pay test conent",
    "notify_url": "http://merchant/callback/success",
    "return_url": "https://www.merchant.com",
    "buyer_id": "buyer_0101_0001",
    "timestamp": "2022-01-01 03:54:01",
    "timeout_express":"1c",
    "customer" : {
        "identify": {
            "type": "RFC",
            "number": "MAMB780915969"
        },
        "name": "Test User Name",
        "email": "test@pagsmile.com",
        "phone": "523135759140"
    },
    "address" : {
        "zip_code": "37900",
    }'

Nota: 162************38 es el test ID de pagsmile para prueba en sandbox, y MTYyNTgyOTIxNDUzMTY2Mzg6UGFnc21pbGVfc2tfZDUwMWQ1ZGNkNTI5OGQ5N2MwNmUzYjI4YjA2OWZjZmY3NDU5ZjY2NzNiMjFjMTFlYTY3NDM5MDgzOTZkOTYxNQ== es el token de autorización asociado con el app ID de prueba.

Favor utilizar tu propio app_id y genera tu propio authorization token al realizar pruebas.

Last updated