Checkout Page (General)

How to use Pagsmile Checkoutpage to submit a payin.

Payin by using Pagsmile checkout page

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

This endpoint allows you to submit a payin by using Pagsmile checkout page

Headers

NameTypeDescription

Content-Type*

string

application/json; chartset=UTF-8

Authorization*

string

Basic Base($app_id:$security_key)

Request Body

NameTypeDescription

app_id*

string

created app's id at dashboard

- Max. 32 chars -

method

string

Add this object to show only the selected method. For instance, “method”: “PIX” will only show the PIX method. To show all the methods do not add this object in the request body. Check here for all methods

out_trade_no*

string

ID given by the merchant in their system - Max. 64 chars -

notify_url*

string

Where Pagsmile will send notification to

timestamp*

string

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

subject*

string

payment reason or item title

- Max. 128 chars -

order_amount*

string

order amount - 0.01 ~ 999999999 -

(refer to amount limit for different methods)

order_currency*

string

order currency - Max. 3 chars - Check here for all methods.

content*

string

payment reason detail or item detail. This will be shown on the bank bill.

- Max. 255 chars -

buyer_id*

string

merchant user's id

channel

string

only use when method = Wallet

trade_type*

string

fixed value: WEB

return_url

sring

web redirect url when payment is finish

timeout_express

string

m(minutes), h(hours), d(days), c(always end in current day).

Used to control the expiration time of submitting an order (from initial to processing). (90m in default, max 15d)

version*

string

fixed value: 2.0

cancellation_express

string

m(minutes), h(hours), d(days). The value must be an integer.

Used to cancel an order. Ex: 90m Used to control the expiration time of a processing order.

customer.name

string

User's name

- Will be pre-filled on the checkout page -

customer.phone

string

User's phone

- Will be pre-filled on the checkout page -

customer.email

string

User's email

- Will be pre-filled on the checkout page -

customer.identify.number

string

User's identification number

- Will be pre-filled on the checkout page -

customer.identify.type

string

User's identification type

- Will be pre-filled on the checkout page -

address.zip_code

string

zip code

- Will be pre-filled on the checkout page -

regions

array

regions of the payment. The format is ISO 3166-1 alpha-3 - ARG, BRA, etc. Check here -

{
    "code": "10000",
    "msg": "Success",
    "trade_no": "2022010110293900083",
    "out_trade_no": "202201010354003",
    "web_url": "http://checkout-testv2.pagsmile.com?prepay_id=123456",
    "prepay_id":"123456"
}

Check here for supported methods.

  • If not passing the parameter "method" or pass "method": "", all enabled methods will be shown to the user on the checkout page.

  • If passing "method": "PIX", only PIX will be shown to the user on the checkout page.

Example

curl --location --request POST 'https://gateway-test.pagsmile.com/trade/create' \
--header 'Authorization: Basic MTYyNTgyOTIxNDUzMTY2Mzg6UGFnc21pbGVfc2tfZDUwMWQ1ZGNkNTI5OGQ5N2MwNmUzYjI4YjA2OWZjZmY3NDU5ZjY2NzNiMjFjMTFlYTY3NDM5MDgzOTZkOTYxNQ==' \
--header 'Content-Type: application/json' \
--data-raw '{
      "charset": "UTF-8",
    * "app_id": "162************38",
    * "out_trade_no": "202201010354002",
    * "order_currency": "BRL",
    * "order_amount": "12.01",
    * "subject": "item name",
    * "content": "item description",
    * "trade_type": "WEB",
      "timeout_express": "1d",
    * "timestamp": "2022-01-01 03:54:01",
    * "notify_url": "http://merchant/callback/success",
    * "buyer_id": "buyer_0101_0001",
    * "version": "2.0",
      "customer": {
          "identify": {
              "type": "CPF",
              "number": "50284414727"
          },
      "name": "Test User Name",
      "email": "test@pagsmile.com"
      },
      "regions": ["BRA"],
      "address": {
          "zip_code": "38082365"
      }
}'

Returnurl is not required in the request parameters. However if needed, you can overwrite it by appending the return_url after the web_url when redirect.

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

↓↓↓

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

Note: 162************38 is pagsmile's test app id for sandbox, and MTYyNTgyOTIxNDUzMTY2Mzg6UGFnc21pbGVfc2tfZDUwMWQ1ZGNkNTI5OGQ5N2MwNmUzYjI4YjA2OWZjZmY3NDU5ZjY2NzNiMjFjMTFlYTY3NDM5MDgzOTZkOTYxNQ== is authorization token associated with the test app id.

Please use your own app_id and generate your own authorization token when testing.

Last updated