Create a pricing intent

A pricing intent is a template of fees that you apply to processing accounts when you board merchants. You can apply the same pricing intent to all processing accounts that you create or create multiple pricing intents to apply to different processing accounts. A pricing intent can include the following fee types:

  • Base fees: For monthly maintenance, chargebacks, and early contract termination. All pricing intents must include base fees.
  • Processor fees: For card payments and Automated Clearing House (ACH) payments. Processor fees also include the pricing model that you offer to the merchant, for example, RewardPay.
  • Gateway fees: For using our payment gateway.

Integration steps

  • Create a pricing intent.

Before you begin

Bearer tokens

Use our Identity Service to generate a Bearer token to include in the header of your requests. To generate your Bearer token, complete the following steps:

  1. Include your API key in the x-api-key parameter in the header of a POST request.
  2. Send your request to https://identity.payroc.com/authorize.

Note: You need to generate a new Bearer token before the previous Bearer token expires.

Example request

$curl --location --request POST 'https://identity.payroc.com/authorize' --header 'x-api-key: <api key>'

Example response

If your request is successful, we return a response that contains your Bearer token, information about its scope, and when it expires.

1{
2 "access_token": "eyJhbGc....adQssw5c",
3 "expires_in": 3600,
4 "scope": "service_a service_b",
5 "token_type": "Bearer"
6}

Headers

To create the header of each POST request, you must include the following parameters:

  • Content-Type: Include application/json as the value for this parameter.
  • Authorization: Include your Bearer token in this parameter.
  • Idempotency-Key: Include a UUID v4 to make the request idempotent.
$curl
>-H "Content-Type: application/json"
>-H "Authorization: <Bearer token>"
>-H "Idempotency-Key: <UUID v4>"

Errors

If your request is unsuccessful, we return an error. For more information about errors, see Errors.

Create a pricing intent

Send a POST request to our Pricing Intents endpoint:

Request parameters

To create the body of your request, use the following parameters:

Request

Pricing Intent5.0objectRequired

Example request

POST
/v1/pricing-intents
1curl -X POST https://api.payroc.com/v1/pricing-intents \
2 -H "Idempotency-Key: 8e03978e-40d5-43e8-bc93-6894a57f9324" \
3 -H "Authorization: Bearer <token>" \
4 -H "Content-Type: application/json" \
5 -d '{
6 "key": "foo",
7 "country": "US",
8 "version": "5.0",
9 "base": {
10 "addressVerification": 5,
11 "annualFee": {
12 "amount": 100
13 },
14 "regulatoryAssistanceProgram": 15,
15 "merchantAdvantage": 10,
16 "maintenance": 1995,
17 "minimum": 100,
18 "batch": 5
19 }
20}'

Response fields

If your request is successful, our gateway creates the pricing intent. The response contains the following fields:

Response

Pricing Intent5.0objectRequired

Example response

Response
1{
2 "id": "5",
3 "createdDate": "2024-07-02T09:00:00",
4 "lastUpdatedDate": "2024-07-02T09:00:00",
5 "status": "pendingReview",
6 "key": "string",
7 "metadata": {
8 "yourCustomField": "abc123"
9 },
10 "country": "US",
11 "version": "5.0",
12 "base": {
13 "addressVerification": 5,
14 "annualFee": {
15 "billInMonth": "june",
16 "amount": 100
17 },
18 "regulatoryAssistanceProgram": 15,
19 "pciNonCompliance": 4995,
20 "merchantAdvantage": 10,
21 "platinumSecurity": {
22 "billingFrequency": "monthly",
23 "amount": 1295
24 },
25 "maintenance": 500,
26 "minimum": 100,
27 "voiceAuthorization": 95,
28 "chargeback": 2500,
29 "retrieval": 1500,
30 "batch": 1000,
31 "earlyTermination": 57500
32 },
33 "processor": {
34 "card": {
35 "planType": "interchangePlus",
36 "fees": {
37 "mastercardVisaDiscover": {
38 "volume": 1.25,
39 "transaction": 5
40 },
41 "amex": {
42 "type": "optBlue",
43 "volume": 1.25,
44 "transaction": 10
45 },
46 "pinDebit": {
47 "additionalDiscount": 1.25,
48 "transaction": 10,
49 "monthlyAccess": 1200
50 },
51 "electronicBenefitsTransfer": {
52 "transaction": 10
53 },
54 "enhancedInterchange": {
55 "enrollment": 1000,
56 "creditToMerchant": 5.25
57 },
58 "specialityCards": {
59 "transaction": 10
60 }
61 }
62 },
63 "ach": {
64 "fees": {
65 "transaction": 50,
66 "batch": 1000,
67 "returns": 400,
68 "unauthorizedReturn": 1999,
69 "statement": 800,
70 "monthlyMinimum": 20000,
71 "accountVerification": 100,
72 "discountRateUnder10000": 5.25,
73 "discountRateAbove10000": 10
74 }
75 }
76 },
77 "gateway": {
78 "fees": {
79 "monthly": 1000,
80 "setup": 25000,
81 "perTransaction": 0,
82 "perDeviceMonthly": 0
83 }
84 },
85 "services": [
86 {
87 "name": "hardwareAdvantagePlan",
88 "enabled": true
89 }
90 ]
91}