PayCore PayCoreDeveloper Center

API catalog

Browse every verified API method by payment gateway.

This page lists only externally callable APIs that can be mapped to route, controller and driver code. Expand each gateway to view endpoints, parameters, gateway_credentials, responses, errors and test examples.

API CATALOG

PayCore public API catalog

This page provides PayCore integration flows, field definitions, request examples, response formats and payment notification specifications.

Replace the API key, order data and gateway credentials in each example, and never expose secrets in frontend or public source code. Last updated:2026-07-16
Public integration docs

Quickstart

Register and verify your email first, then create a PayCore API key from the member portal. Registration never creates a key automatically. After obtaining a key, choose Direct Gateway or an All-in-One project and call the create-payment API.

Create a PayCore account · Open the member portal

1. API authenticationX-API-KEY
2. gateway_credentialsGateway-specific merchant credentials
3. Create paymentPOST /api/paycore/pay/{gateway}/{method}
X-API-KEY

API authentication

PayCore APIs authenticate callers with the X-API-KEY header. A complete key is shown only once when it is created, so keep it on the server. Gateway merchant credentials are sent in gateway_credentials in the request body.

Direct / All-in-One

Integration modes

Direct Gateway lets merchants pass gateway credentials directly. All-in-One projects use a PayCore project API key to manage payment pages and methods centrally.

Webhook

Webhook concept

Gateway callbacks update PayCore payment status first. If payok_url is provided, PayCore notifies the merchant system after payment succeeds. Payment pages also poll status in the background to reduce manual refreshes.

FIELD DICTIONARY

PayCore field dictionary and gateway mapping

Names use the original PayCore public API fields. payer_ip, api_request_ip, payment_page_first_ip and provider_callback_first_ip represent different sources. The payment-page IP is recorded on the first valid payment-page visit; the gateway callback IP is recorded after notification validation. These IPs identify network sources and do not prove payer identity. When no dedicated gateway field exists, data remains in PayCore or is written to an allowed Remark/Metadata field.

Create-payment request

Field Source Type Required Description Example
merchant_order_no API body string|max:100 Yes Merchant order number; keep it unique under the same API key. ORDER202607130001
amount API body integer|min:1 Yes Payment amount; unit and currency constraints depend on the gateway. 980
currency API body string|max:10 No Currency code such as TWD or USD. TWD
payer_account API body string|max:100 No Payer/member identifier in the merchant system; not an identity number. member-001
payer_identity_no API body string|max:80 No Payer identity number; sent only to gateways with a confirmed matching field. A123456789
payer_ip API body IPv4|IPv6 No Actual payer/order-context IP supplied by the API integrator. 203.0.113.20
success_url API body URL No Merchant URL used after successful payment. https://merchant.example/success
return_url API body URL No Compatibility return URL; some gateways use it when success_url is omitted. https://merchant.example/return
cancel_url API body URL No Merchant URL used after cancellation or incomplete payment. https://merchant.example/cancel
payok_url API body URL No Merchant URL notified by PayCore after payment is confirmed. https://merchant.example/payok
locale API body string|max:20 No Preferred locale for the payment page. zh-tw
item_name API body string|max:200 No Item name; safely limited to the gateway constraint. 測試商品
description API body string|max:200 No Payment description; some gateways use it as the item name when item_name is omitted. 訂單付款
payer_name API body string|max:100 No Payer name; directly sent only when an official mapping exists. 王小明
payer_mobile API body string|max:30 No Payer mobile number. 0912345678
payer_tel API body string|max:30 No Payer telephone or landline. 02-12345678
payer_email API body email|max:150 No Payer email. [email protected]
merchant_custom_field_1 API body string|max:200 No Merchant custom field 1; mapped only to officially supported fields. campaign-A
merchant_custom_field_2 API body string|max:200 No Merchant custom field 2; mapped only to officially supported fields. note-B
credit_installment API body integer|0,3,6,12,18,24,30 No Card installment count; currently used only by GoMyPay credit. Use 0 or omit for a normal transaction. 0
expire_days API body integer|1..60 No Expiration days for offline payment. 7
expire_minutes API body integer|60..43200 No Expiration minutes for offline payment; generally takes precedence over expire_days. 1440
cvs_type API body enum No Convenience-store type. Accepted values depend on the gateway. ibon
bank_code API body string|max:10 No Generic bank-code field for ECPay background ATM. 007
atm_bank_code API body string|max:10 No Compatibility bank-code name for ECPay background ATM. 007
ecpay_atm_bank_code API body string|max:10 No ECPay-specific bank-code name for background ATM. 007
cvs_code API body enum No Generic store-code field for ECPay background CVS. FAMILY
ecpay_cvs_code API body enum No ECPay-specific store-code name for background CVS. FAMILY
desc_1 API body string|max:20 No ECPay background-payment description field 1.
desc_2 API body string|max:20 No ECPay background-payment description field 2.
desc_3 API body string|max:20 No ECPay background-payment description field 3.
desc_4 API body string|max:20 No ECPay background-payment description field 4.
gateway_credentials API body object Yes Gateway merchant credentials; see each endpoint for child fields. Never copy them to remarks or metadata. {...}

PayCore-generated fields

Field Source Type Required Description Example
api_request_ip PayCore IPv4|IPv6|null No Caller IP observed automatically by PayCore when the API order is created; integrators cannot override it. 198.51.100.10
payment_page_first_ip PayCore IPv4|IPv6|null No Source IP observed on the first valid-token HTML visit to a PayCore show, processing, or result page. It does not prove a verified human identity. 203.0.113.30
payment_page_first_seen_at PayCore datetime|null No Timestamp atomically recorded with payment_page_first_ip. Refreshes and status polling do not overwrite it. 2026-07-13T10:30:00+08:00
provider_callback_first_ip PayCore IPv4|IPv6|null No Source IP of the first verified server callback from a gateway to PayCore. Browser returns, outbound PayOK notifications, and rejected callbacks are excluded. 192.0.2.40
provider_callback_first_seen_at PayCore datetime|null No Timestamp atomically recorded with provider_callback_first_ip. Gateway retries do not overwrite it. 2026-07-13T10:35:00+08:00
payment_no PayCore string Yes PayCore payment number. PAY202607130001ABCDEFGH
gateway URL / PayCore string Yes Gateway key such as stripe, plus, pfun, gomypay, or funpoint. stripe
method URL / PayCore string Yes Payment-method key under the gateway. credit
api_key_id PayCore integer Yes Read-only relation resolved automatically from X-API-KEY; not accepted from the API body.
preferred_locale PayCore string|null No Normalized payment-page locale derived from locale or Accept-Language. zh-tw

Common response

Field Source Type Required Description Example
success API response boolean Yes Whether the API request succeeded. true
message API response string Yes Human-readable result message. Payment created successfully
data.payment_no API response string Yes PayCore payment number.
data.merchant_order_no API response string Yes Merchant order number.
data.gateway API response string Yes Gateway key.
data.method API response string Yes Payment-method key.
data.amount API response integer Yes Payment amount.
data.currency API response string Yes Payment currency.
data.status API response string Yes PayCore payment status. pending
data.payment_method API response string|null No PayCore payment-flow classification.
data.payment_url API response URL|null No PayCore payment page or gateway redirect URL.
data.payment_info API response object No Gateway payment instructions or frontend initialization data; content varies by gateway.
data.created API response boolean No Whether this call created a new transaction; false when an existing active payment is returned.
data.paid_at API response datetime|null No Time when PayCore confirmed payment success.
data.created_at API response datetime|null No PayCore transaction creation time.
error API response object|string|null No Error code, validation fields, or context returned on failure.

Gateway field mappings

Stored in PayCore means the value remains in the PayCore transaction record and is not sent to that gateway. Fallback fields are used only when the primary mapped value is unavailable.

PayCore fieldECPaySmilePayStripePayPalPLUSPFunJunding Technology GoMyPayFunPoint
api_request_ip Stored in PayCore Remark metadata.api_request_ip Stored in PayCore Stored in PayCore ClientIP fallback; payer_ip is also written to Remark Buyer_Memo fallback Remark fallback
payer_ip Stored in PayCore Remark metadata.payer_ip Stored in PayCore Stored in PayCore ClientIP (primary) Buyer_Memo fallback Remark fallback
payment_page_first_ip Stored in PayCore Stored in PayCore Stored in PayCore Stored in PayCore Stored in PayCore Stored in PayCore Stored in PayCore Stored in PayCore
provider_callback_first_ip verified callback source verified callback source verified signature source verified webhook source verified callback source validated callback source verified str_check source verified CheckMacValue source
payer_account Stored in PayCore Pur_name fallback metadata.payer_account Stored in PayCore Used to build payName Stored in PayCore Buyer_Memo fallback Remark fallback
payer_name Stored in PayCore Pur_name Stored in PayCore Stored in PayCore Stored in PayCore ReceiverName Buyer_Name Remark fallback
payer_mobile Stored in PayCore Mobile_number Stored in PayCore Stored in PayCore Stored in PayCore ReceiverTel (primary) Buyer_Telm (primary) Remark fallback
payer_tel Stored in PayCore Tel_number Stored in PayCore Stored in PayCore Stored in PayCore ReceiverTel fallback Buyer_Telm fallback Remark fallback
payer_email Stored in PayCore Email receipt_email Stored in PayCore Stored in PayCore ReceiverEmail Buyer_Mail Remark fallback
payer_identity_no Stored in PayCore Stored in PayCore Stored in PayCore Stored in PayCore Stored in PayCore ReceiverID Stored in PayCore Stored in PayCore
item_name ItemName Od_sob PaymentIntent description fallback purchase item name Stored in PayCore TradeTitle Buyer_Memo fallback ItemName
description TradeDesc / ItemName fallback Od_sob fallback PaymentIntent.description purchase description Stored in PayCore OrderInfo / TradeTitle fallback Buyer_Memo TradeDesc / ItemName fallback
merchant_custom_field_1 Stored in PayCore Stored in PayCore Stored in PayCore Stored in PayCore Stored in PayCore CustomField1 Buyer_Memo fallback CustomField1
merchant_custom_field_2 Stored in PayCore Stored in PayCore Stored in PayCore Stored in PayCore Stored in PayCore CustomField2 Buyer_Memo fallback CustomField2
credit_installment Stored in PayCore Stored in PayCore Stored in PayCore Stored in PayCore Stored in PayCore Stored in PayCore TransMode / Installment Stored in PayCore
AJAX LAZY LOAD

Choose an API from the left to view details

To keep /developer/api fast, this page loads the catalog index first; full parameter tables and examples are loaded by AJAX only after an endpoint is selected.

1. Pick a gatewayThe left catalog keeps every gateway / method
2. Load detailsOnly the selected endpoint tables and examples are rendered
3. Shareable linkThe URL keeps the current API position
You have reached the end

Pico is here with you at the end.

Need to find another API, return to the catalog, or review the integration flow? Jump back to search or continue from the API catalog.

The PayCore Developer Center is public. We will keep expanding Direct Gateway API, All-in-One project checkout, webhook, and error-code examples.