Panamerican Gateway
Panamerican Gateway Developers
API Integration Guide
Sandbox: https://dprocess.panamericangateway.com Live: https://process.panamericangateway.com

API Documentation

This API exchanges JSON over RESTful HTTP using HTTP POST. Integrators send requests to the corresponding endpoint and parse the JSON response.

Security note: Do not embed API credentials in client-side code (JavaScript/mobile apps). Always call the API from your server. Use sandbox credentials for testing only.

Overview

Every request is a JSON payload sent via POST. Responses are returned in JSON format. Some Sale transactions may require a 3DS redirect flow, in which case the API returns status=redirect and a redirect_url.

Headers

Each request must include the following headers:

Content-Type: application/json
Authorization: Bearer YOUR_BEARER_TOKEN

The bearer token is provided per merchant and must be included on every request.

Authentication

The credentials below are public sandbox credentials for testing only. Production credentials are issued after merchant approval.

Sandbox Credentials
API Key: YOUR_API_TOKEN
Secret: YOUR_API_SECRET
Keep the Secret server-side only. Never put it in frontend code.
Authorization Header
Authorization: Bearer <token>
Tokens are issued per merchant and must be sent on every API call.
Production credentials: issued after merchant approval. Do not reuse sandbox keys in production.

Endpoints

Sale
https://dprocess.panamericangateway.com/api/sale
Refund
https://dprocess.panamericangateway.com/api/refund
Status
https://dprocess.panamericangateway.com/api/status
Live Base
https://process.panamericangateway.com

Sale

Charges a cardholder account. If 3DS is required, the response returns status=redirect with a redirect_url.

Request (JSON)
{
  "date": "2026-02-11 10:15:00",
  "journal": "ORDER-10001",

  "first_name": "John",
  "last_name": "Doe",
  "company": "Example LLC",
  "address_1": "123 Main St",
  "address_2": "Apt 4B",
  "city": "Panama City",
  "region": "Panama",
  "postal_code": "0801",
  "country": "PA",
  "email": "john.doe@example.com",
  "phone": "+5073090100",

  "ip": "203.0.113.10",
  "user_agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64)",

  "accept_header": "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8",
  "language": "en-US",
  "color_depth": 24,
  "screen_height": 1080,
  "screen_width": 1920,
  "time_zone": -300,
  "date_of_birth": "1995-05-01",

  "description": "Online purchase",
  "currency": "usd",
  "amount": 49.99,
  "tax": 0,

  "cardholder_name": "JOHN DOE",
  "card_number": "4000056655665556",
  "card_exp_month": 12,
  "card_exp_year": 2028,
  "card_cvv": "123",

  "approval_return_url": "https://merchant.example.com/approved",
  "decline_return_url": "https://merchant.example.com/declined",
  "notification_url": "https://merchant.example.com/webhooks/panamerican"
}
Important: time_zone must be digits (e.g., -300). tax must be a numeric value.
Response (JSON)
{
  "server_date": "2026-02-11 10:15:03",
  "date": "2026-02-11 10:15:00",
  "journal": "ORDER-10001",
  "uuid": "89fab47e-c2d1-43c3-a604-ae0128d8b0ea",
  "processor_id": "PROC-12345",
  "currency": "usd",
  "amount": 49.99,
  "process_currency": "usd",
  "process_amount": 49.99,
  "descriptor": "PANAMERICAN GATEWAY",
  "status": "redirect",
  "authcode": null,
  "code": "00",
  "message": "3DS authentication required",
  "redirect_url": "https://acs.example.com/3ds/redirect/xxxx"
}
Status values: approved, declined, pending, rejected, error, redirect.

HTTP Request

POST https://dprocess.panamericangateway.com/api/sale
Content-Type: application/json
Authorization: Bearer YOUR_BEARER_TOKEN

Refund

Returns previously captured funds.

Request (JSON)
{ "uuid": "TRANSACTION_UUID" }
Response (JSON)
{
  "server_date": "2026-02-11 10:20:10",
  "uuid": "REF-xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
  "transaction_uuid": "TRANSACTION_UUID",
  "status": "approved",
  "currency": "usd",
  "amount": 49.99,
  "code": "00",
  "message": "Refund approved"
}

Status

Returns the current state of a transaction.

Request (JSON)
{ "uuid": "TRANSACTION_UUID" }
Response (JSON)
{
  "server_date": "2026-02-11 10:16:40",
  "uuid": "TRANSACTION_UUID",
  "status": "approved",
  "code": "00",
  "message": "Approved"
}

3DS redirect flow

  1. Send Sale request from your server.
  2. If response is redirect, redirect the user to redirect_url.
  3. User returns to approval_return_url or decline_return_url.
  4. Optionally confirm final result using /api/status and/or webhook notification.

Notifications (Webhook) + Signature

If you set notification_url, Panamerican Gateway can POST updates. Validate the signature.

Notification payload (JSON)
{
  "server_date": "2026-02-11 10:15:03",
  "uuid": "TRANSACTION_UUID",
  "currency": "usd",
  "amount": 49.99,
  "status": "approved",
  "signature": "sha256_hash_here"
}
Signature formula
signature = SHA256(secret + server_date + uuid + currency + amount + status)
Always recompute server-side and compare against the received signature.
Recommended: After webhook verification, call /api/status to confirm final state.

Test card numbers (Sandbox)

Approved (direct)
4059310181757001
Approved (3DS)
4000056655665556
Declined (direct)
4916012776136988
Declined (3DS)
4242424242424242

Quickstart (cURL)

curl -X POST "https://dprocess.panamericangateway.com/api/status" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_BEARER_TOKEN" \
  -d '{"uuid":"TRANSACTION_UUID"}'