# API reference
source: https://developer.mastercard.com/mastercard-supplier-payment-agent/documentation/api-reference/index.md

Note: For more information on how to generate a client library using OpenAPI, refer to the [Using OpenAPI](https://developer.mastercard.com/mastercard-supplier-payment-agent/documentation/tutorials_guides/tutorials/connect-to-the-bps-using-open-api/index.md) section. All inbound endpoints are secured using OAuth1.0a. All outbound endpoints are secured using Mutual TLS (MTLS). For more information on fields to decrypt, refer to the [Encryption](https://developer.mastercard.com/mastercard-supplier-payment-agent/documentation/api-basics/index.md#encryption) section.

## Environment domains {#environment-domains}

### Mastercard Commercial Direct Payments {#mastercard-commercial-direct-payments}

* MTF
* Production

```MTF
https://sandbox.api.mastercard.com/commercial/payments
```

```Production
https://api.mastercard.com/commercial/payments
```

### Mastercard Track Business Payment Service {#mastercard-track-business-payment-service}

* MTF
* Production

```MTF
https://sandbox.api.mastercard.com/track/bps
```

```Production
https://api.mastercard.com/track/bps
```

## APIs {#apis}

Note: All dates and times are listed in Universal Time Coordinated (UTC).

|                  API Service                  |                                                           Yaml Reference                                                            |
|-----------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------|
| Mastercard Commercial Direct Payments API     | [cdp-spa-pi.yaml](https://static.developer.mastercard.com/content/mastercard-supplier-payment-agent/swagger/cdp-spa-pi.yaml) (75KB) |
| Mastercard Track Business Payment Service API | [bps-spa.yaml](https://static.developer.mastercard.com/content/mastercard-supplier-payment-agent/swagger/bps-spa.yaml) (142KB)      |

## Mastercard Commercial Direct Payments {#mastercard-commercial-direct-payments-1}

### Enhanced Card Payment Acceptance {#enhanced-card-payment-acceptance}

Alert: The Mastercard Commercial Direct Payments assigned ICA is used for agent identification in all service requests for core operations. A customer service provider can use their API credentials to transact on behalf of a customer by providing their customer's ICA number in the request. Direct payment agents can still transact by entering their own ICA when sending a transaction to Mastercard Commercial Direct Payments.
API Reference: `GET /creditor-agents/{ica}/payment-acceptances/{instruction_identification}`


API Reference: `PUT /creditor-agents/{ica}/payment-acceptances/{instruction_identification}`

### Event notification {#event-notification}


API Reference: `POST /creditor-agents/notifications`

## Buyers {#buyers}


API Reference: `GET /buyers/{buyer_id}`

## Manage Supplier registration {#manage-supplier-registration}


API Reference: `POST /supplier-payment-agents/{ica}/suppliers`


API Reference: `GET /supplier-payment-agents/{ica}/suppliers/{id}`


API Reference: `GET /supplier-payment-agents/{ica}/suppliers`


API Reference: `PUT /supplier-payment-agents/{ica}/suppliers/{id}`


API Reference: `PUT /supplier-payment-agents/{ica}/suppliers/{id}/payment-profiles/{supplier_id}`


API Reference: `DELETE /supplier-payment-agents/{ica}/suppliers/{id}/payment-profiles/{supplier_id}`


API Reference: `DELETE /supplier-payment-agents/{ica}/suppliers/{id}`


API Reference: `GET /supplier-payment-agents/{ica}/supplier-payment-profiles/{supplier_id}/payables-finances`


API Reference: `PUT /supplier-payment-agents/{ica}/supplier-payment-profiles/{supplier_id}/payables-finances`

## Supplier payment preferences {#supplier-payment-preferences}


API Reference: `POST /supplier-payment-agents/{ica}/suppliers/{supplier_id}/payment-preferences/payment-controls`


API Reference: `GET /supplier-payment-agents/{ica}/suppliers/{supplier_id}/payment-preferences/payment-controls`


API Reference: `GET /supplier-payment-agents/{ica}/suppliers/{supplier_id}/payment-preferences/payment-controls/{payment_control_id}`


API Reference: `PUT /supplier-payment-agents/{ica}/suppliers/{supplier_id}/payment-preferences/payment-controls/{payment_control_id}`


API Reference: `DELETE /supplier-payment-agents/{ica}/suppliers/{supplier_id}/payment-preferences/payment-controls`


API Reference: `DELETE /supplier-payment-agents/{ica}/suppliers/{supplier_id}/payment-preferences/payment-controls/{payment_control_id}`

## Business Payment Service {#business-payment-service}

### Linking {#linking}


API Reference: `POST /supplier-payment-agents/{ica}/supplier-payment-profiles/{spa_profile}/suggested-buyer-links`


API Reference: `PUT /supplier-payment-agents/{ica}/supplier-payment-profiles/{spa_profile}/buyer-links/{bpa_profile}`


API Reference: `PUT /supplier-payment-agents/{ica}/buyer-links`


API Reference: `PUT /supplier-payment-agents/{ica}/supplier-payment-profiles/{spa_profile}/buyer-links/{bpa_profile}/payment-preferences`


API Reference: `DELETE /supplier-payment-agents/{ica}/supplier-payment-profiles/{spa_profile}/buyer-links/{bpa_profile}`


API Reference: `GET /supplier-payment-agents/{ica}/buyer-supplier-links`


API Reference: `GET /supplier-payment-agents/{ica}/buyer-links`

### Early payment preferences {#early-payment-preferences}


API Reference: `PUT /supplier-payment-agents/{ica}/suppliers/{supplier_id}/payment-preferences/global-finance-rates`


API Reference: `GET /supplier-payment-agents/{ica}/suppliers/{supplier_id}/payment-preferences/global-finance-rates`


API Reference: `DELETE /supplier-payment-agents/{ica}/suppliers/{supplier_id}/payment-preferences/global-finance-rates`

### Payment instructions {#payment-instructions}


API Reference: `GET /supplier-payment-agents/{ica}/payment-instructions/{transaction_id}`


API Reference: `PUT /supplier-payment-agents/{ica}/payment-instructions/{transaction_id}`


API Reference: `PUT /supplier-payment-agents/{ica}/payment-instructions/{transaction_id}/bank-account-details`


API Reference: `PUT /supplier-payment-agents/{ica}/payment-instructions/{transaction_id}`

### Event notification {#event-notification-1}


API Reference: `GET /supplier-payment-agents/notifications`

