收款(Pay-In · 秘鲁)
秘鲁收款(PEN),托管收银台 CASHIER_PE;详见 支付方式。paymentMethod 必填;payer 及其子字段按产品可选。金额为 整数 céntimos(100 céntimos = 1.00 PEN)。
Request
POST/v2.0/transaction/pay-in
Request Path:
sandbox: https://sandbox-gateway.smilepayz.com/v2.0/transaction/pay-in
production: https://gateway.smilepayz.com/v2.0/transaction/pay-in
| Field | Required | Type | Description |
|---|
Content-Type | M | String | application/json |
X-TIMESTAMP | M | String | Format: yyyy-MM-ddTHH:mm:ss±HH:mm (e.g. Peru PET −05:00). |
X-SIGNATURE | M | String | Request signature; Signature Generation. |
X-PARTNER-ID | M | String | merchantID (alphanumeric). |
Body Parameters
| Field | Required | Type | Description |
|---|
orderNo | M | String(32) | 6–32 alphanumeric; unique per merchant. |
purpose | M | String(64) | UTF-8; length 1–64. |
merchant | M | Object | Merchant routing and settlement. |
merchantId | M | String | Platform merchant ID. |
merchantName | O | String | UTF-8 display name. |
subMerchantId | O | String | Sub-merchant ID. |
subMerchantName | O | String | Sub-merchant name (UTF-8). |
money | M | Object | Amount and currency. |
currency | M | String | PEN only. |
amount | M | Number | Integer céntimos (e.g. 20000 = PEN 200.00). |
payer | O | Object | Payer Model when used. |
name | O | String | Payer name (UTF-8). |
idType | O | String | e.g. DNI when returned / collected. |
identity | O | String | Document number when collected. |
phone | O | String | Contact phone (e.g. 51987654321). |
email | O | String | Contact email. |
paymentMethod | M | String | CASHIER_PE; Payment methods. |
expiryPeriod | O | Number | Session TTL (seconds); default 3600; range 300–86400. |
redirectUrl | O | String(256) | Post-pay redirect URL; HTTP(S); max 256. |
callbackUrl | O | String(256) | Status webhook URL; HTTP(S); max 256. |
Example Body – Transaction Request:
Content-type: application/json
X-TIMESTAMP: 2020-12-17T10:55:00-05:00
X-SIGNATURE: 7MHd9v5/m9JeqmDZVwWBZUZ5J5...7120QnFEny7Qm7uQR1G0TWCh10fsU6nVxiRoeoQ==
X-PARTNER-ID: 20001
{
"merchant": {
"merchantId": "20011"
},
"payer": {
"idType": "DNI",
"identity": "48982488880",
"name": "Carlos Rodriguez Mendoza",
"phone": "51987654321",
"email": "[email protected]"
},
"money": {
"amount": 20000,
"currency": "PEN"
},
"orderNo": "200110edbb466abb04682968b40",
"paymentMethod": "CASHIER_PE",
"purpose": "Payment for online purchase",
"redirectUrl": "https://www.example.com/success"
}
Responses
HTTP Request
| Field | Required | Type | Description |
|---|
Content-Type | M | String | application/json |
X-TIMESTAMP | M | String | Format: yyyy-MM-ddTHH:mm:ss±HH:mm |
Body Parameters
| Field | Required | Type | Description |
|---|
code | M | String | 00 = success; other codes = error. |
message | M | String | Result text (UTF-8). |
orderNo | M | String | Echo of orderNo. |
merchant | M | Object | Merchant Model. |
merchantId | M | String | Merchant ID. |
merchantName | O | String | Display name. |
subMerchantId | O | String | Sub-merchant ID. |
subMerchantName | O | String | Sub-merchant name. |
accountNo | O | String | Settlement account when returned. |
money | M | Object | Money Model. |
currency | M | String | PEN. |
amount | M | Number | Integer céntimos. |
transactionTime | M | String | yyyy-MM-ddTHH:mm:ss±HH:mm (e.g. PET −05:00). |
channel | M | Object | Channel Model. |
paymentMethod | M | String | CASHIER_PE. |
paymentUrl | M | String | Cashier URL for the payer. |
additionalInfo | O | Object | Extra channel data (e.g. nested paymentUrl). |
tradeNo | O | String | Platform trade ID. |
status | O | String | Status Model. |
Content-type: application/json
X-TIMESTAMP: 2020-12-17T10:55:00-05:00
{
"channel": {
"additionalInfo": {
"paymentUrl": "https://pay-met.pe:8080/#/metodo-pago/VE9LRU4gR0VORVJBIFJFQ1VETzg5OTc0MA=="
},
"paymentMethod": "CASHIER_PE",
"paymentUrl": "https://gateway.smilepayz.com/cashier/#/loading?tradeNo=1512001125042115424463245"
},
"code": "00",
"merchant": {
"accountNo": "11520011202402290943",
"merchantId": "20011",
"merchantName": "bradytest123www"
},
"message": "Successful",
"money": {
"amount": 20000,
"currency": "PEN"
},
"orderNo": "20011563d9094aa7d4d9e9b933bb",
"status": "PROCESSING",
"tradeNo": "1512001125042115424463245",
"transactionTime": "2025-04-21T03:42:47-05:00"
}
Notification/Callback
HTTP Request
| Field | Required | Type | Description |
|---|
Content-Type | M | String | application/json |
X-TIMESTAMP | M | String | Format: yyyy-MM-ddTHH:mm:ss±HH:mm |
X-SIGNATURE | M | String | Callback signature; verify. |
Body Parameters
| Field | Required | Type | Description |
|---|
orderNo | M | String | Same orderNo as pay-in. |
tradeNo | M | String | Platform tradeNo. |
merchantId | M | String | Merchant ID. |
merchantName | M | String | Display name. |
subMerchantId | O | String | Sub-merchant ID. |
subMerchantName | O | String | Sub-merchant name. |
paymentMethod | M | String | Settled channel (CASHIER_PE for hosted pay-in). |
transactionTime | M | String | Completion time. |
status | M | String | Status Model. |
money | M | Object | Final amount; Money Model. |
currency | M | String | PEN. |
amount | M | Number | Integer céntimos. Note: notification amount may differ from the original request; use it for reconciliation. |
payer | O | Object | Payer snapshot when returned; Payer Model. |
Return
Important
Respond with the string SUCCESS only.
{
"orderNo": "2000102900000000000001",
"tradeNo": "151200012410241325417215",
"merchantId": "20001",
"merchantName": "test",
"subMerchantId": "",
"subMerchantName": "",
"paymentMethod": "CASHIER_PE",
"transactionTime": "2024-12-17T10:55:00-05:00",
"money": {
"currency": "PEN",
"amount": 20000
},
"status": "SUCCESS",
"payer": {
"name": "Carlos Rodriguez Mendoza"
}
}