# Transfiya

## Payin by Transfiya

<mark style="color:green;">`POST`</mark> `https://gateway-test.pagsmile.com/trade/pay`

This endpoint allows you to submit a payin by Transfiya in Colombia.

#### Headers

| Name                                            | Type   | Description                                |
| ----------------------------------------------- | ------ | ------------------------------------------ |
| Content-Type<mark style="color:red;">\*</mark>  | string | application/json; chartset=UTF-8           |
| Authorization<mark style="color:red;">\*</mark> | string | Basic Base($app\_*id:$security\_*&#x6B;ey) |

#### Request Body

| Name                                              | Type   | Description                                                                                            |
| ------------------------------------------------- | ------ | ------------------------------------------------------------------------------------------------------ |
| app\_id<mark style="color:red;">\*</mark>         | string | <p>created app's id at dashboard</p><p>- Max. 32 chars -</p>                                           |
| out\_trade\_no<mark style="color:red;">\*</mark>  | string | <p>ID given by the merchant in their system<br>- Max. 64 chars - </p>                                  |
| timestamp<mark style="color:red;">\*</mark>       | string | <p>yyyy-MM-dd HH:mm:ss<br>- Max. 19 chars -</p>                                                        |
| notify\_url<mark style="color:red;">\*</mark>     | string | Where Pagsmile will send notification to                                                               |
| method<mark style="color:red;">\*</mark>          | string | Fixed value: Transfiya                                                                                 |
| order\_amount<mark style="color:red;">\*</mark>   | string | <p>payment amount<br>- check <a href="../../../data/payment-method#colombia">here</a> for limits -</p> |
| order\_currency<mark style="color:red;">\*</mark> | string | Fixed value: COP                                                                                       |
| buyer\_id<mark style="color:red;">\*</mark>       | string | merchant user's id                                                                                     |
| subject<mark style="color:red;">\*</mark>         | string | <p>payment reason or item title</p><p>- Max. 128 chars -</p>                                           |
| content                                           | string | <p>payment reason detail or item detail</p><p>- Max. 255 chars -</p>                                   |
| return\_url                                       | string | Redirect to Merchant's url when user finished checkout. **Doesn't work on provider's page.**           |
| customer.name<mark style="color:red;">\*</mark>   | string | User's name                                                                                            |
| customer.email<mark style="color:red;">\*</mark>  | string | User's email                                                                                           |
| customer.phone<mark style="color:red;">\*</mark>  | string | User's phone. **Must start with "57"**. A text message will be sent to this phone number.              |

{% tabs %}
{% tab title="200 submit successfully" %}

```
{
    "code": "10000",
    "msg": "Success",
    "trade_no": "2022010110293900083",
    "out_trade_no": "202201010354005",
    "web_url": "",
    "trade_status": "PROCESSING",
    "prepay_id": ""
}
```

{% endtab %}

{% tab title="400 duplicate out\_trade\_no" %}

```
{
    "code": "40002",
    "msg": "Business Failed",
    "sub_code": "duplicate-out_trade_no",
    "sub_msg": "out_trade_no is duplicate"
}
```

{% endtab %}
{% endtabs %}

{% hint style="warning" %}
**User payment tips:**

* The user needs to activate Transfiya in the bank app first.
* When the transaction is created, the user will receive a text message indicating that a payment has been accepted through Transfiya. If the user has not received the message, check directly in the app of the bank where the user has Transfiya active.
  {% endhint %}

## Example

```
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": "202201010354005",
    * "method": "Transfiya",
    * "order_amount": "3000",
    * "order_currency": "COP",
    * "subject": "trade pay test",
      "content": "trade pay test content",
    * "notify_url": "http://merchant/callback/success",
      "return_url": "https://www.merchant.com",
    * "buyer_id": "buyer_0101_0001",
    * "timestamp": "2022-01-01 03:54:01",
    * "customer": {
    *     "name": "Test User Name",
    *     "email": "test@pagsmile.com",
    *     "phone": "57468****068" //The phone number must include "57" to receive the text message.
      }
      }'
```

{% hint style="info" %}
Note:  **162\*\*\*\*\*\*\*\*\*\*\*\*38** is pagsmile's test app id for sandbox, and **MTYyNTgyOTIxNDUzMTY2Mzg6UGFnc21pbGVfc2tfZDUwMWQ1ZGNkNTI5OGQ5N2MwNmUzYjI4YjA2OWZjZmY3NDU5ZjY2NzNiMjFjMTFlYTY3NDM5MDgzOTZkOTYxNQ==** is authorization token associated with the test app id.&#x20;
{% endhint %}

{% hint style="danger" %}
Please use your own **app\_id** and generate your own **authorization token** when testing.
{% endhint %}

## How to Activate Transfiya in Colombia

Although each bank has its own specific process, here’s a general step-by-step guide that most banks follow:

1. Download or update your bank’s app

Make sure you have your bank’s mobile application installed and updated.

2. Log in to the banking app

Use your credentials (username and password) to access the app.

3. Look for the Transfiya option

This option is usually found in the “Transfers,” “Payments,” or “Special Services” sections.

4. Link your mobile number

• Select the option to register or activate Transfiya.

• Enter your mobile phone number (it must be the one registered with the bank).

• Some banks may require you to confirm the link using a code sent via SMS.

\_\_\_\_\_

In this link, you can find step-by-step instructions on how to send and receive money through Transfiya.

<https://heyzine.com/flip-book/1a15ffd4bc.html#page/1>
