# Payments API

The Payments API provides a single, secure interface for accepting and managing payments across credit cards, ACH transfers, Apple Pay, and PayPal. It is designed to simplify integration, reduce risk, and give your team consistent tools for handling every stage of the payment lifecycle.

The Payments API follows modern REST conventions and uses JSON for requests and responses, making it straightforward to integrate from any language or platform. A single endpoint and a shared field model mean you can start with one payment type and expand to others with minimal additional development.

**Built-In Security and Compliance**

Security and compliance are built in. Tokenization protects sensitive data and aligns with the latest PCI DSS and Nacha security standards. Because payment details never touch your servers, a merchant’s compliance scope is reduced, and cardholder or account data is safeguarded.

**Key Features**

- Data masking to protect sensitive information during processing and storage.
- Rate limiting to ensure reliability, control usage, and mitigate fraud.
- Field-level validation to catch errors in real time, reduce declines, and improve the user experience.


Version: 1.2.11

## Servers

UAT
```
https://api.uat.nelnetpay.com/payments
```

Production
```
https://api.nelnetpay.com/payments
```

## Security

### bearerAuth

Bearer Authentication Token for /payments endpoint

Type: http
Scheme: bearer
Bearer Format: JWT

## Download OpenAPI description

[Payments API](https://docs.nelnetpay.com/_bundle/apis/osi-payments-api.yaml)

## Other

### Process a Payment Request

 - [POST /](https://docs.nelnetpay.com/apis/osi-payments-api/other/processpaymentrequest.md): Perform a request to process a payment. 

This endpoint uses a valid Bearer Authentication API Key ID and HMAC Key for authentication.

### Get Payment by paymentTransactionId

 - [GET /{paymentTransactionId}](https://docs.nelnetpay.com/apis/osi-payments-api/other/getpayment.md): Retrieve a previously-processed payment by its NPS paymentTransactionId (UUID). If no transaction is found, returns responseCode = E402 (DATA_NOT_FOUND) and a descriptive responseMessage.

