Skip to main content

API PAY-IN TRANSACTION

smilepayz teamsAbout 5 min

Request

The Pay-In API enables merchants to initiate payment collection transactions from customers. This API supports various payment methods for secure and efficient money collection in the Philippine market.

Request Path:

sandbox: https://sandbox-gateway.smilepayz.com/v2.0/transaction/pay-in
production: https://gateway.smilepayz.com/v2.0/transaction/pay-in

Header Parameters

FieldRequiredTypeDescription
Content-TypeMStringHTTP content type specification
Fixed value: application/json
Required for proper request parsing
X-TIMESTAMPMStringISO 8601 datetime format with timezone offset
Format: yyyy-MM-ddTHH:mm:ss±HH:mm
Example: 2020-12-17T10:55:00+08:00
Note: Must be current server time within ±5 minutes
X-SIGNATUREMStringDigital signature for request authentication
See Signature Generation
X-PARTNER-IDMStringUnique merchant identifier assigned by the platform
Format: Alphanumeric string
Used for merchant authentication and transaction routing
Please enter merchantID

Body Parameters

FieldRequiredTypeDescription
orderNoMString(32)Unique transaction identifier
Format: Alphanumeric string (numbers and letters only)
Length: 6-32 characters
Used for transaction tracking and reference
purposeMString(64)Transaction purpose or description
Format: UTF-8 encoded string
Maximum length: 64 characters
Used for transaction identification and reporting
merchantMObjectMerchant information container
Contains merchant identification and business details
See Merchant Model
    merchantIdMStringUnique merchant identifier assigned by the platform
Format: Alphanumeric string
Used for merchant authentication and transaction routing
    merchantNameOStringMerchant business name or display name
Format: UTF-8 encoded string
Used for merchant identification and reporting
    subMerchantIdOStringSub-merchant identifier for multi-level merchant structures
Format: Alphanumeric string
Used for sub-merchant identification and reporting
    subMerchantNameOStringSub-merchant business name or display name
Format: UTF-8 encoded string
Used for sub-merchant identification and reporting
moneyMObjectTransaction amount details with currency specification
Contains transaction amount and currency information
See Money Model
    currencyMStringISO 4217 currency code specification
Fixed value: PHP (Philippine Peso)
Determines payment processing rules and settlement currency
    amountMNumberTransaction amount in smallest currency unit
Format: Integer value
Example: 20000 represents PHP 20000
Range: 100-999999999
paymentMethodOStringPayment method used for transaction processing
Format: Predefined payment method codes
Examples: GCASH, PAY_MAYA, BPI_BANK
Indicates the actual payment channel used
See Payment Method List
expiryPeriodONumberTransaction expiration time in seconds
Format: Integer value
Default: 3600 (1 hour)
Maximum: 86400 (24 hours)
Used to set transaction validity period
redirectUrlOString(256)Customer redirect URL after payment completion
Format: Valid HTTP/HTTPS URL
Maximum length: 256 characters
Used to redirect customers after payment processing
callbackUrlOString(256)Webhook notification URL for transaction status updates
Format: Valid HTTP/HTTPS URL
Maximum length: 256 characters
Used for real-time transaction status notifications

Example Body – Transaction Request:

Content-type: application/json
X-TIMESTAMP: 2020-12-17T10:55:00+08:00
X-SIGNATURE: 7MHd9v5/m9JeqmDZVwWBZUZ5J5...7120QnFEny7Qm7uQR1G0TWCh10fsU6nVxiRoeoQ==
X-PARTNER-ID: 20001

Response

HTTP Response

FieldRequiredTypeDescription
Content-TypeMStringHTTP response content type specification
Fixed value: application/json
Indicates JSON response format
X-TIMESTAMPMStringISO 8601 datetime format with timezone offset
Format: yyyy-MM-ddTHH:mm:ss±HH:mm
Example: 2020-12-17T10:55:00+08:00

Body Parameters

FieldRequiredTypeDescription
codeMStringAPI response status code indicating operation result
Format: Two-digit string
Success: "00", Error: Other codes
Used for programmatic response handling
messageMStringHuman-readable response status description
Format: UTF-8 encoded string
Provides detailed information about the operation result
Localized based on request language
tradeNoOStringInternal transaction reference number for system tracking
Format: System-generated alphanumeric string
Used for internal transaction management and support
orderNoMStringUnique transaction identifier provided in the request
Format: Alphanumeric string
Same as the orderNo provided in the request
Used for transaction tracking and reference
merchantMObjectMerchant information container
Contains merchant identification and business details
See Merchant Model
    merchantIdMStringUnique merchant identifier assigned by the platform
Format: Alphanumeric string
Used for merchant authentication and transaction routing
    merchantNameOStringMerchant business name or display name
Format: UTF-8 encoded string
Used for merchant identification and reporting
    subMerchantIdOStringSub-merchant identifier for multi-level merchant structures
Format: Alphanumeric string
Used for sub-merchant identification and reporting
    subMerchantNameOStringSub-merchant business name or display name
Format: UTF-8 encoded string
Used for sub-merchant identification and reporting
moneyMObjectTransaction amount details with currency specification
Contains confirmed transaction amount and currency
See Money Model
    currencyMStringISO 4217 currency code specification
Fixed value: PHP (Philippine Peso)
Determines payment processing rules and settlement currency
    amountMNumberTransaction amount in smallest currency unit
Format: Integer value
Example: 20000 represents PHP 20000
Range: 100-999999999
transactionTimeMStringTransaction completion timestamp
Format: yyyy-MM-ddTHH:mm:ss
Example: 2020-12-17T10:55:00+08:00
Used for transaction timing and audit
channelMObjectPayment channel information container
Contains payment method and processing details
See Channel Model
statusOStringCurrent transaction processing status
Format: Predefined status codes
Examples: PROCESSING, SUCCESS, FAILED, CANCELLED
Indicates the current state of the transaction
See Status Model
Content-type: application/json
X-TIMESTAMP: 2020-12-17T10:55:00+08:00

Notification

HTTP Request

FieldRequiredTypeDescription
Content-TypeMStringHTTP request content type specification
Fixed value: application/json
Indicates JSON request format
X-TIMESTAMPMStringISO 8601 datetime format with timezone offset
Format: yyyy-MM-ddTHH:mm:ss±HH:mm
Example: 2020-12-17T10:55:00+08:00
X-SIGNATUREMStringDigital signature for notification authentication
See Callback Signature Verification

Body Parameters

FieldRequiredTypeDescription
orderNoMStringMerchant transaction identifier
Format: Alphanumeric string
Same as the orderNo provided in the original request
Used for transaction identification and verification
tradeNoMStringInternal transaction reference number for system tracking
Format: System-generated alphanumeric string
Used for internal transaction management and support
merchantIdMStringUnique merchant identifier assigned by the platform
Format: Alphanumeric string
Used for merchant authentication and transaction routing
merchantNameMStringMerchant business name or display name
Format: UTF-8 encoded string
Used for merchant identification and reporting
subMerchantIdOStringSub-merchant identifier for multi-level merchant structures
Format: Alphanumeric string
Used for sub-merchant identification and reporting
subMerchantNameOStringSub-merchant business name or display name
Format: UTF-8 encoded string
Used for sub-merchant identification and reporting
paymentMethodMStringPayment method used for transaction processing
Format: Predefined payment method codes
Examples: GCASH, PAY_MAYA, BPI_BANK
Indicates the actual payment channel used
transactionTimeMStringTransaction completion timestamp
Format: yyyy-MM-ddTHH:mm:ss
Example: 2020-12-17T10:55:00+08:00
Used for transaction timing and audit
moneyMObjectTransaction amount details with currency specification
Contains confirmed transaction amount and currency
See Money Model
    currencyMStringISO 4217 currency code specification
Fixed value: PHP (Philippine Peso)
Determines payment processing rules and settlement currency
    amountMNumberTransaction amount in smallest currency unit
Format: Integer value
Example: 20000 represents PHP 20000
Range: 100-999999999
statusMStringFinal transaction processing status
Format: Predefined status codes
Examples: SUCCESS, FAILED, CANCELLED
Indicates the final state of the transaction
See Status Model

Return

Important Response

Notification Response: Please return only the string SUCCESS to acknowledge receipt of the notification

{
  "merchantId": "20001",
  "merchantName": "test",
  "money": {
    "amount": 100000,
    "currency": "PHP"
  },
  "orderNo": "2000102900000000000001",
  "status": "SUCCESS",
  "tradeNo": "181200012410241325417215",
  "transactionTime": "2020-12-17T10:55:00+08:00"
}
Last update: