Integración Directa

API Pago Directo

Solicitud Base URL

  Test Environment : https://gateway-test.pagsmile.com
  Prod Environment : https://gateway.pagsmile.com

EndPoints

  /trade/pay

Request Header

ParametroRequeridoDescripción

Tipo-Contenido

recomendado

application/json

Autorización

si

Básica Base64(app_id:security_key)

Request Body (JSON format)

ParametroTipoRequeridoMax longitud(o valor defecto)Descripción

app_id

string

si

32

App Id creada en dashboard

timestamp

string

si

19

yyyy-MM-dd HH:mm:ss

out_trade_no

string

si

64

ID dada por el merchant en su sistema

method

string

no

32

channel

string

no

32

sub canal (sólo usar en método 'Wallet')

order_currency

string

si

3

BRL for brasil

order_amount

decimal

si

0.01 ~ 99999999999999.99

Monto solicitado de pago

subject

string

si

128

Razón de pago o título de item

content

string

si

255

Detalle de razón de pago o detalle de item. Se mostrará en la factura bancaria.

notify_url

string

si

IPN URL al merchant(empieza con http

buyer_id

string

si

merchant id de usuario

timeout_express

string

no

90m

m(minutos), h(horas), d(días), c(siempre termina en día actual)

token

string

no

requerido para tarjeta de crédito

fingerprint

string

no

requerido para tarjeta de crédito

issuer

string

no

Emisor de tarjeta de crédito(requerido para tarjeta de crédito)

installments

integer

no

1

Cuotas para tarjeta de crédito

bank

string

no

Código de banco, requerido para

DepositExpress (itau,santander,bradesco,banco-do-brasil,caixa) Efectivo (Usar bank_id desde Bank Query); Transferenciabancaria (Use bank_id desde Bank Query); Khipu (Use bank_id desde Bank Query);

language_code

string

no

Código de idioma, requerido para Efectivo, Transferenciabancaria . (Use language_code desde Bank query)

customer.name

string

si

Nombre de usuario

customer.email

string

si

Correo de usuario

customer.phone

string

si

Teléfono celular del usuario

customer.identify.number

string

si

Número ID del usuario

customer.identify.type

string

si

Tipo de ID del usuario

address.zip_code

string

si

zip code

address.state

string

si

Estado

address.city

string

si

Ciudad

address.street_number

string

si

street1 number

address.street

string

si

street1

address.neighborhood

string

no

street2

user_ip

string

no

Dirección IP de usuario(requerido por Tarjeta de crédito)

website_url

string

no

128

URL de website del merchant

Ejemplo de solicitud

curl --location --request POST 'https://gateway.pagsmile.com/trade/create' \
--header 'Authorization: Basic Base64(appid:security_key)' \
--header 'Content-Type: application/json' \
--data-raw '{
    "app_id": "app_id",
    "content": "content",
    "method": "Boleto",
    "notify_url": "notify_url",
    "order_amount": 10,
    "order_currency": "BRL",
    "out_trade_no": "{{$randomUUID}}",
    "subject": "subject",
    "timeout_express": "1h",
    "timestamp": "{{datetime}}",
    "customer": {
      "name": "name",
      "email": "email",
	  "phone": "phone",
	  "identify": {
		"number":"number",
		"type":"type“,
	  }
      ...
    },
    "address": {
      "zip_code": "84043450",
      "state": "Parana",
      "city": "Ponta Grossa",
      "street"; "Colônia Dona Luíza",
      "street_number": "18",
    },
    "user_ip": "127.0.0.1"
}'

Http Response (formato JSON )

ParametroTipoDescripción

code

string

código retornado

msg

string

retornado msg

sub_code

string

retornado sub code(sólo error)

sub_msg

string

retornado sub msg(sólo error)

out_trade_no

string

request out_trade_no

trade_no

string

Pagsmile NO. de transacción

trade_status

string

pay_url

string

pay URL; sólo en Boleto、Lottery、DepositExpress

barcode

string

Boleto barcode;o en Boleto

qr_code

string

Sólo en PIX

provider_owner

string

banco info : dueño de cuenta; sólo en DepositExpress

provider_owner_document

string

banco info : documento de dueño de cuenta; sólo en DepositExpress

provider_agency

string

banco info : agencia de banco; sólo en DepositExpress

provider_number

string

banco info : número de cuenta; sólo en DepositExpress

bank_name

string

banco info : nombre de banco; sólo en DepositExpress

wallet_url

string

Sólo en Wallet

app_link_url

string

Sólo en Wallet (para uso de APP)

Return Code (Exitoso)

{
    "code": "10000",
    "msg": "Success",
    "out_trade_no": "{out_trade_no}",
    "trade_no": "{trade_no}",
    "trade_status": "PROCESSING",
    "pay_url": "https://checkout-testv2.pagsmile.com/checkout?prepay_id=XX",
    "barcode": "{barcode}",
    "qr_code": "{qr_code}",
    "provider_owner": "{provider_owner}",
    "provider_owner_document": "{provider_owner_document}",
    "provider_agency": "{provider_agency}",
    "provider_number": "{provider_number}",
    "wallet_url": "{wallet_url}",
    "app_link_url": "{app_link_url}"
}

Return Code (Fallido)

{
    "code": "40002",
    "msg": "Business Failed",
    "sub_code": "invalid-signature",
    "sub_msg": "invalid signature"
}

Atención

Return_url no es necesario en los parámetros de solicitud, también puede anexar el return_url después de la web_url cuando se redirige:

http://checkout.pagsmile.com?prepay_id={$prepay_id}

↓↓↓

http://checkout.pagsmile.com?prepay_id={$prepay_id}&return_url={$return_url}

Last updated