- WooCommerce
- Magento
- Shopify Soon
Customer intelligence
Build profiles by attaching customer data. Gain insights, reduce fraud risk, and create personalized experiences.
Overview
Customer intelligence is a suite of tools that allow you to build detailed profiles for your customers. By attaching customer data to your transactions, you gain valuable insights, reduce fraud risk, and create more personalized experiences.
Reservepay's intelligence engine automatically correlates information across your account. Whether you provide a Customer ID, an email address, or a mobile phone number, we'll correctly identify and link the data to the same customer profile.
Managing contacts
Contacts are the core of customer intelligence in Reservepay. You can create, retrieve, update, and remove contacts using our API. Contacts support both payments and payouts, making it easy to manage the full lifecycle of your customer interactions.
Creating a contact
To create a new contact, use the add-contact endpoint. You must provide either an email address or a mobile number. You can also provide your own external_id to use as a Customer ID from your system.
await fetch('https://api.reservepay.com/merchants/add-contact', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_KEY',
'Api-Version': '2025-04-01',
'Content-Type': 'application/json'
},
body: JSON.stringify({
contact_email: 'customer@example.com',
contact_name: 'John Doe',
external_id: 'cust_987654' // Your own Customer ID
})
})
Linking transactions to contacts
When initiating a payment or a payout, you can link the transaction to a contact. Our system will automatically correlate the information even if you only provide an email or mobile number.
Payments
When initiating a payment flow, you can link the transaction to an existing contact by providing the customer_id (either our ctc_ ID or your external_id), customer_email, or customer_mobile.
await fetch('https://api.reservepay.com/merchants/initiate-payment-flow', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_KEY',
'Api-Version': '2025-04-01',
'Content-Type': 'application/json'
},
body: JSON.stringify({
amount: '10000',
currency: 'THB',
customer_email: 'customer@example.com', // We'll automatically correlate this to the right contact
payment_session_id: 'sess_1234567890',
capture: true,
return_url: 'https://example.com/return'
})
})
Payouts
You can also send payouts to your contacts. Use the send-payout-to-contact endpoint to send funds to a contact's primary bank account or via PromptPay using their mobile number or national ID.
Managing bank accounts for contacts
To send a payout to a contact's bank account, you can first link one or more bank accounts to the contact using the link-bank-account endpoint.
Once a bank account is linked, you can:
- Set a primary account: Use
set-primary-contact-bank-accountto specify which account should receive payouts by default. - Find accounts: Use
find-bank-accountto retrieve details of a specific bank account. - Unlink accounts: Use
unlink-bank-accountto remove a bank account from a contact's profile.
Saving cards for future use
You can securely save customer cards for future payments. This is useful for implementing one-click checkouts or subscription billing.
Tokenizing a card
First, tokenize the card details using the tokenize-card endpoint. Set usage: 'MULTIPLE' to create a reusable token.
Saving the card to a contact
Use the save-card endpoint to convert the token into a saved card associated with a contact.
await fetch('https://api.reservepay.com/merchants/save-card', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_KEY',
'Api-Version': '2025-04-01',
'Content-Type': 'application/json'
},
body: JSON.stringify({
token: 'tok_1234567890',
contact_id: 'ctc_1234567890',
default: true
})
})
Insights and analytics
By consistently linking payments to contacts, you can unlock powerful insights through our dashboard and API. You can see:
- Customer lifetime value (CLV): Total amount spent by a customer.
- Purchase frequency: How often a customer makes a purchase.
- Preferred payment methods: Which payment methods a customer uses most frequently.
Dive deeper into these advanced integration topics to unlock Reservepay's full potential with our in-depth guides.
Issue refunds, void transactions before they settle, and reverse authorizations when needed.
Read the guideSeparate authorization from capture to hold funds without charging. Perfect for pre-orders or reservations
Read the guideBuild your own POS, or work with our app by sending commands or using deep links.
Read the guideBuild profiles by attaching customer data. Gain insights, reduce fraud risk, and create experiences that drive loyalty.
Read the guideSend payouts to your primary bank account or to your contacts via bank account, mobile number or national ID.
Read the guideStay informed about payment events with real-time webhooks. Automate your order processing, and more...
Read the guideNo account yet?
Start integrating all these amazing features into your app or website by creating your own merchant account today. It's free to sign up and only takes a few minutes to get started.
