PayRetailers
Reimagine payments
Supports in this guide: Payments, Payouts
Provider website: payretailers.com
What you need to do for start processing transactions (brief summary)
- Choose account type
- Get your credentials (from PayRetailers)
- Connect in Dashboard
- Send an API request
Choose account type
PayRetailers has a single account type that covers both directions:
- Provider account -> used for both payments (bank transfer, cash vouchers, local wallets/fintechs across Latin America) and payouts
If you're not sure whether PayRetailers fits your use case, confirm with your Corefy account manager.
Prerequisites: get from PayRetailers
Contact your PayRetailers account manager to get your account verified and receive the following credentials.
- Shop ID -> Corefy field
shop_id. - Shop Secret -> Corefy field
shop_secret-> used to sign every request. - Subscription Key (optional) -> Corefy field
subscription_key.
Payments processing (connect Provider account, create payment-invoice)
Connect Provider account in Corefy Dashboard
Step 1 - Open connection form
Open PayRetailers in the provider directory and press Connect at PayRetailers Provider Overview page in the New connection section.
Step 2 - Fill in fields and select settings
- Shop ID
- Shop Secret
- Subscription Key (optional)
- Currencies -> multi-select from
USD,MXN,BRL,PEN,COP,CLP,CRC,GTQ - Test Mode -> (enable if you are using sandbox credentials)
Success
You have connected PayRetailers Provider account!
First request to Corefy API (MIN)
What it does: creates a payment-invoice and returns a redirect link to the chosen local method's payment page (or, for cash methods, a voucher/reference to pay at a physical location).
Payment - MIN
POST /api/payment-invoices
{
"data": {
"type": "payment-invoice",
"attributes": {
"reference_id": "8e3dbbb0-17af-4c9a-bedb-93bdac6900a2",
"service": "pix_brl_hpp",
"currency": "BRL",
"amount": 10
}
}
}
Payment - MAX
POST /api/payment-invoices
{
"data": {
"type": "payment-invoice",
"attributes": {
"reference_id": "6795502c-e27d-4d07-85e0-93245aab9a3f",
"service": "pix_brl_hpp",
"currency": "BRL",
"amount": 10,
"customer": {
"reference_id": "cus_123",
"name": "John Smith",
"email": "johnsmith@gmail.com",
"individual_tax_id": "70634982826",
"address": {
"country": "BR",
"city": "Rio de Janeiro",
"full_address": "1 Main street",
"post_code": "20000-000"
}
},
"fields": {
"phone": "+5511999999999"
}
}
}
}
customer is optional on every local method, but most of them need a local tax ID to actually complete (customer.individual_tax_id, or an override via fields.cpf_number/fields.personal_id/fields.document_id depending on the method). You can also override the payer's name specifically with fields.payer_first_name/fields.payer_last_name. This connector covers a very wide range of methods across 8 countries - see Additional info for the full breakdown by country.
Extended request (MAX)
Why add extra fields (typical reasons): - Provide additional customer details for compliance/reconciliation - Positively influence conversion rate - Include optional fields required by your specific flow
Options
Options are configured on the Corefy side and affect how Corefy builds provider requests or processes responses.
Currently available options (1)
finalize_after_minutes- automatically fails a payment that's still pending after the given number of minutes.
finalize_after_minutes
What it does: many local methods (cash vouchers, bank transfers) stay "pending" at PayRetailers until the customer actually completes them, sometimes for days. When set, Corefy automatically marks the payment as failed/expired once it's been pending longer than this many minutes, instead of leaving it open indefinitely.
When to use: set it if you want a predictable cutoff for stale pending payments rather than waiting on PayRetailers' own expiry.
Default: not set (payment stays pending until PayRetailers itself reports a final status)
Allowed values: any whole number of minutes
No Constants are configured for this flow.
Payouts processing (connect Provider account, create payout-invoice)
Connect Provider account in Corefy Dashboard
Uses the same Provider account connection as Payments above - one connection covers both directions, there's nothing extra to fill in for payouts specifically.
First request to Corefy API (MIN)
What it does: creates a payout-invoice and sends funds via a local bank transfer or instant-payment rail.
Payout - MIN (PIX, Brazil)
POST /api/payout-invoices
{
"data": {
"type": "payout-invoice",
"attributes": {
"reference_id": "0dde9e79-2c64-4703-adaf-93d710633401",
"service": "pix_brl",
"currency": "BRL",
"amount": 10,
"customer": {
"reference_id": "cus_123"
},
"fields": {
"pix_key": "recipient@example.com"
}
}
}
}
fields.pix_key alone is enough if you're paying out to a PIX key; otherwise send the full bank details instead (fields.beneficiary_name/beneficiary_lastname/cpf_number/bank_code/bank_agency_number/account_number).
Payout - MIN (SPEI, Mexico)
POST /api/payout-invoices
{
"data": {
"type": "payout-invoice",
"attributes": {
"reference_id": "3c6d2f8e-8a2a-4e7a-9b1a-2f6a7b9c0d1e",
"service": "spei_mxn",
"currency": "MXN",
"amount": 1000,
"customer": {
"reference_id": "cus_123",
"email": "johnsmith@gmail.com"
},
"fields": {
"beneficiary_name": "John",
"beneficiary_lastname": "Smith",
"document_id": "AAAA000101HDFRRL09",
"bank_code": "002",
"account_number": "012180001234567895"
}
}
}
}
This connector also supports bank_transfer_<ccy> payouts for BRL/CLP/MXN/COP/USD/PEN with a similar beneficiary/bank-details shape - ask your Corefy account manager for the exact field list for your destination country.
Extended request (MAX)
Why add extra fields (typical reasons): - Provide additional customer details for compliance/reconciliation - Positively influence conversion rate - Include optional fields required by your specific flow
No Options or Constants are configured for this flow.
Additional info
- Callback routing is automatic - Corefy generates the callback URL per transaction, nothing to configure in PayRetailers' own back-office.
-
Local payment methods available on the Payments (Provider account) flow (actual availability depends on what's enabled for your account) - PayRetailers covers over 80 service codes across:
Country Currency Examples Brazil BRL PIX, bank transfer Mexico MXN SPEI, OXXO (cash), BBVA Bancomer, Scotiabank, Banco Azteca (cash), Calimax/Soriana/Farmacias Santa Maria (cash) Peru PEN Banco de Credito, BBVA Continental, Interbank, Scotiabank, several Cajas (Arequipa/Huancayo/Tacna/Trujillo), Kasnet/Tambo/Ripley (cash) Colombia COP PSE Chile CLP WebPay, Khipu, Mach, Fintoc, Multicaja, several banks (BCI, de Chile, Estado, Falabella, Santander), Lider/Express Lider (cash) Costa Rica CRC Banco Nacional (online and cash) Guatemala GTQ Banco de Antigua, Caja de Desarrollo, Fundacion Genesis (all cash) USD-denominated USD Equivalents of most of the above banks/wallets, plus Western Union Panama, Pichincha Mi Vecino, Red Activa (cash) Ask your account manager for the exact list of service codes available to your account - many methods also have a
_cashvariant (returns a voucher/reference for the customer to pay at a physical location) alongside the online redirect version. -
Local payout methods: PIX (
BRL), SPEI (USD/MXN), and generic bank transfer (BRL/CLP/MXN/COP/USD/PEN).
FAQ / Troubleshooting
- Invalid credentials / auth error -> verify credentials for the selected environment
- Payment stuck pending for a long time -> normal for cash/bank-transfer methods until the customer completes it; set
finalize_after_minutesif you want an automatic cutoff - Local payment/payout rejected for missing tax ID -> most methods require the customer's/beneficiary's local tax ID - send it via
customer.individual_tax_idor the method-specificfields.*override - Currency or service is not supported -> confirm allowed currencies/features in your PayRetailers account and in Corefy
Question
Still looking for help connecting your PayRetailers account? Please contact our support team!