Subscribe Request
Request
API URL: /merchant/v2.1/{GUID}/subscribe
Note
{GUID} Obtained from the merchant backend (API Docking -> GUID)
✅ Required ⭕ Optional ❌ Not used
| Header | Content | Description |
|---|---|---|
| Content-Type | text/plain | |
| X-Transaction-Signature | {transaction_signature} | Please refer to Transaction Signature |
| Param | Type | Required | Sign | Description |
|---|---|---|---|---|
| user_id | String | ✅ | ✅ | Merchant identification |
| order_id | String | ✅ | ✅ | Payment order Id of merchant system. The order id should be unique. |
| amount | String | ✅ | ✅ | Transaction amount (Support up to 6 decimal places) |
| currency | String | ✅ | ✅ | Please refer to Support Channel |
| channel | String | ✅ | ✅ | Please refer to Support Channel |
| card_number | String | ✅ | ✅ | Credit card number |
| card_exp_month | String | ✅ | ✅ | Credit card expiration month |
| card_exp_year | String | ✅ | ✅ | Credit card expiration year |
| card_cvc | String | ✅ | ✅ | Credit card CVC |
| first_name | String | ✅ | ✅ | Client's first name, cannot contain numbers. |
| middle_name | String | ⭕ | ❌ | Client's middle name, cannot contain numbers. |
| last_name | String | ✅ | ✅ | Client's last name, cannot contain numbers. |
| period_count | Integer | ✅ | ✅ | Payment cycle (count). Only 1-12 can be filled in. |
| period_unit | Integer | ✅ | ✅ | Payment cycle (unit). 1 = Week. 2 = Month. 3 = Year. |
| timestamp | Integer | ✅ | ✅ | Request timestamp (10 digits), If the time difference is allowed to be 5 seconds, it will fail. |
| details | Details | ⭕ | ❌ | Details object depends on channel |
| callback_url | URL | ⭕ | ❌ | The url to receive callback request from PTS when transaction complete. |
| remark | String | ⭕ | ❌ | Remark |
| sign | String | ✅ | ❌ | Signature string. Please refer to Data Signature and Verification |
Response
There are three types of subscribe response methods.
tip
You should notify FTIPH customer service to configure this for you to match actual usage situation.
| Param | Type | Required | Sign | Description |
|---|---|---|---|---|
| user_id | String | ✅ | ✅ | Merchant identification |
| order_id | String | ✅ | ✅ | Payment order Id of merchant system. The order id should be unique. |
| transaction_id | String | ✅ | ✅ | FTIPH transaction id |
| channel | String | ✅ | ✅ | Please refer to Support Channel |
| submit_currency | String | ✅ | ✅ | Submit currency |
| submit_amount | Float | ✅ | ✅ | Submit amount (Support up to 6 decimal places) |
| accept_currency | String | ✅ | ✅ | The currency real paid |
| accept_amount | Float | ✅ | ✅ | Paid amount of accept currency (Support up to 6 decimal places) |
| exchange_rate | Float | ✅ | ✅ | Exchange rate |
| period_count | Integer | ✅ | ✅ | Payment cycle (count). Only 1-12 can be filled in. |
| period_unit | Integer | ✅ | ✅ | Payment cycle (unit). 1 = Week. 2 = Month. 3 = Year. |
| verification_url | URL | ⭕ | ❌ | The webpage for verification |
| sign | String | ✅ | ❌ | Signature string. Please refer to Data Signature and Verification |
Response Example
{
"code": "1000",
"message": "Accepted",
"data": {
"user_id": "1",
"order_id": "TP20250110091712",
"transaction_id": "1062299068027506688",
"channel": "MAYA",
"submit_currency": "PHP",
"submit_amount": 125,
"accept_currency": "PHP",
"accept_amount": 125,
"exchange_rate": 1,
"verification_url": "https://......",
"sign": "hdFe+P0Qzjo4zcKqWiUeytWDB28Pc2x....."
}
}