Procare Pay Scheduled Payments

Complete API Documentation for Scheduled Payment Processing

Trigger Payment Processing for a Single Group

POST /rest/merchants/{MID}/groups/{GroupID}/process-payments
Non-production environments only. This endpoint is disabled in production. The MID must be within the test range 32350000000–32350099999. Requests from production environments or with an out-of-range MID will receive a 403 Forbidden response.

Description: Manually triggers payment processing for a single specific group, identified by GroupID. This is the most targeted of the two trigger endpoints — use it when you want to test a specific group without triggering all groups at a given date/hour.

Vs. Trigger by Merchant: Use this endpoint to trigger a single known group. Use Trigger by Merchant to trigger all groups for a merchant at a given schedule window.

Path Parameters

MID (required)
Type: string — must be in range 32350000000–32350099999
Example: 32350000576
GroupID (required)
Type: string (UUID)
Example: 01234567-abcd-1234-9876-abcdef123456

No request body is required for this endpoint.

Example Request

POST /rest/merchants/32350000576/groups/01234567-abcd-1234-9876-abcdef123456/process-payments
Authorization: Bearer <token>

Responses

200 OK — Success

{
  "triggeredGroups": [
    {
      "paymentGroupId": "01234567-abcd-1234-9876-abcdef123456",
      "executionArn": "arn:aws:states:us-east-1:123456789012:execution:PaymentStateMachine:run-abc123"
    }
  ],
  "totalTriggered": 1,
  "totalFailed": 0
}

200 OK — Failed to Trigger

{
  "triggeredGroups": [
    {
      "paymentGroupId": "01234567-abcd-1234-9876-abcdef123456",
      "error": "Group is already being processed."
    }
  ],
  "totalTriggered": 0,
  "totalFailed": 1
}

Error Responses

StatusMeaning
400Invalid MID or GroupID format.
401Missing or expired bearer token.
403Production environment, or MID is outside the allowed test range.
404Group not found or does not belong to this merchant.
500Unexpected server error.

Testing Workflow

A recommended end-to-end test sequence using this endpoint:

  1. Create a group with one or more payments using a test MID
  2. Call POST /groups/{GroupID}/process-payments to trigger immediately
  3. Call GET /payments to verify authResponse is populated
  4. Call POST /void-or-refund on the group to test reversal
  5. Call GET /payments again to verify voidOrRefundResponses