Skip to content

Production Environment ​

NOTE

The production environment is NOT to be used with test data. Test data includes test transactions and test card numbers.

Prerequisites to using the PayNetWorx Hosted Payments production environment ​

Developer testing and certification efforts must have been completed and reviewed. At this point the production environment will be configured for live transaction traffic. It is advised that initial, low-value transactions be performed in order to confirm funding flows before turning on full transaction traffic to the gateway.

Purpose ​

The production environment is designed for:

  • Live transaction processing
  • Real customer payments
  • Production applications and websites
  • Processing actual card transactions

Environment URLs ​

API Base URL ​

text
https://api.hosted-payments.paynetworx.cloud

Session Creation Endpoint:

text
https://api.hosted-payments.paynetworx.cloud/v1/payments/sessions/create

Hosted Form URL ​

text
https://hosted-payments.paynetworx.cloud

The complete hosted form URL (including the session ID) will be returned in the payment_session_url field when you create a payment session.

Authentication ​

Use your production API credentials provided by PayNetWorx. These credentials are different from your QA credentials.

IMPORTANT

Never use production credentials in test/development environments, and never use QA credentials in production.

Security Best Practices ​

  1. Credential Protection: Store production API keys securely (e.g., environment variables, secrets manager)
  2. HTTPS Only: Always use HTTPS for all API requests and iframe embedding
  3. Origin Validation: Strictly validate postMessage origins to prevent security vulnerabilities
  4. Error Handling: Implement comprehensive error handling and logging
  5. PCI Compliance: Follow all PCI DSS requirements even when using tokenization

Example Session Creation Request ​

js
async function initializePaymentSession() {
  const headers = new Headers();
  headers.append("Content-Type", "application/json");
  headers.append("Authorization", "{{ YOUR_PRODUCTION_API_KEY }}");

  const api_response = await fetch(
    `https://api.hosted-payments.paynetworx.cloud/v1/payments/sessions/create`,
    {
      method: "POST",
      headers,
      body: JSON.stringify({
        payment_session: {
          payment_session_use: "TOKENIZE",
        },
      }),
    }
  );
  return await api_response.json();
}

Origin Validation ​

When implementing postMessage listeners for the production environment, use the following origin:

js
const allowedOrigin = "https://hosted-payments.paynetworx.cloud";

window.addEventListener("message", (event) => {
  if (event.origin !== allowedOrigin) {
    console.warn("Rejected message from unauthorized origin:", event.origin);
    return;
  }

  if (event.data?.type === "pnx-tokenized-payment-info") {
    // Handle tokenized data
    const tokenizedData = event.data.payload;
    // Process payment...
  }
});

Monitoring and Support ​

  • Monitor your application logs for errors and failed transactions
  • Implement alerting for payment processing issues
  • Contact PayNetWorx support if you encounter production issues
  • See contacts for support information

Initial Production Testing ​

When first deploying to production:

  1. Start with low-value test transactions using real cards
  2. Verify funding flows are working correctly
  3. Confirm all error handling is working as expected
  4. Monitor transaction logs closely
  5. Gradually increase transaction volume once confident in the integration