Step 3: Configure creditor operation
With PC300 classified, AcmePay can configure the creditor operation that determines how those transactions are charged and settled.
Objective: Translate the PC300 business requirement into the financial and operational conditions Seller management should apply.
AcmePay needs to determine:
- When should the merchant be paid?
- Which charges apply?
- How should charges behave across installments?
- How should the installment amounts contribute to settlement?
Configure the PC300 installment scenario
AcmePay wants PC300 credit card purchases to settle according to installment-based payment schedules and apply marketplace fees.
Each creditor operation applies to sales with one specific installment count. A six-installment PC300 sale requires only one creditor operation: the one configured with installments: 6. The payment dates and charges of all six installments are derived from that single operation. AcmePay also accepts PC300 sales of two to five installments, so it configures an operation for each installment count from 2 through 6. Each of those sales likewise matches a single operation.
AcmePay configuration layer for PC300
| Configuration item | Example definition | Why it matters |
|---|---|---|
| Processing code | PC300 | Identifies the transaction classification. |
| Creditor | ABC Furniture Creditor Account | Defines who receives funds. |
| Marketplace | Acme Retail Marketplace | Establishes marketplace context. |
| Installments | 2 through 6 | One creditor operation for each accepted installment count. |
| Settlement timing | D+30 (first_installment_days_to_payment: 30, n_installment_days_to_payment: 30, work_days: false) | Determines payment timing. |
| MDR | 2.0% (mdr: 0.02) | Applies percentage-based fee. |
| MDR distribution | matched_mdr: false | Applies the MDR and fixed transaction fee to the first installment only. |
| Fixed fee | $0.30 (transaction_fee: 0.30) | Applies per-transaction fee. |
| Additional fees | Marketplace fee of 0.5% (MARKETPLACE_FEE, value 0.005) | Allows marketplace participation in fee structure. |
| Matched settlement | matched_settlement: true | Pays the settlement in several batches. |
| Start date | 2027-01-01 | Date from which the creditor operations are active |
Advancement terms aren't part of the creditor operation—AcmePay sets them on the ABC Furniture creditor in Step 1.
Configure MDR tax
Before creating the creditor operations, AcmePay configures the MDR tax for Acme Retail Marketplace using the Create MDR tax information endpoint. For this example, AcmePay uses a single zero-rate range.
Request payload example
{
"ranges": [
{
"minimum_transaction_amount": 0,
"maximum_transaction_amount": 100000,
"fixed_tax": 0,
"percentage_tax": 0
}
]
}
If successful (response code 200), the request replaces the marketplace's entire set of ranges.
Create the creditor operations
AcmePay creates the five PC300 creditor operations (installment counts 2 through 6) in one request using the Create marketplace creditor operations endpoint.
Request payload example
{
"merchant_ids": [ 4458801 ],
"creditor_operation": {
"processing_code": "PC300",
"start_date": "2027-01-01",
"installments": [
{ "installment": 2, "mdr": 0.02, "transaction_fee": 0.30,
"first_installment_days_to_payment": 30, "n_installment_days_to_payment": 30,
"work_days": false, "matched_settlement": true, "matched_mdr": false,
"fees": [ { "name": "MARKETPLACE_FEE", "value": 0.005 } ] },
{ "installment": 3, "mdr": 0.02, "transaction_fee": 0.30,
"first_installment_days_to_payment": 30, "n_installment_days_to_payment": 30,
"work_days": false, "matched_settlement": true, "matched_mdr": false,
"fees": [ { "name": "MARKETPLACE_FEE", "value": 0.005 } ] },
{ "installment": 4, "mdr": 0.02, "transaction_fee": 0.30,
"first_installment_days_to_payment": 30, "n_installment_days_to_payment": 30,
"work_days": false, "matched_settlement": true, "matched_mdr": false,
"fees": [ { "name": "MARKETPLACE_FEE", "value": 0.005 } ] },
{ "installment": 5, "mdr": 0.02, "transaction_fee": 0.30,
"first_installment_days_to_payment": 30, "n_installment_days_to_payment": 30,
"work_days": false, "matched_settlement": true, "matched_mdr": false,
"fees": [ { "name": "MARKETPLACE_FEE", "value": 0.005 } ] },
{ "installment": 6, "mdr": 0.02, "transaction_fee": 0.30,
"first_installment_days_to_payment": 30, "n_installment_days_to_payment": 30,
"work_days": false, "matched_settlement": true, "matched_mdr": false,
"fees": [ { "name": "MARKETPLACE_FEE", "value": 0.005 } ] }
]
}
}
Note the nesting: processing_code, start_date, and installments[] sit inside creditor_operation, with merchant_ids as a sibling. Each entry's installment value is the installment count of the creditor operation it creates, not an installment within a sale. The endpoint returns 201 with no body, so AcmePay confirms the result by reading the configuration back.
This endpoint generates a Marketplace creditor operation created event.
Read the configuration back
AcmePay calls the List marketplace creditor operations endpoint. The response is paginated and includes fees with each fee model's type. The following example shows the item for installment count 6. The full response contains one item for each installment count.
Response payload example
{
"per_page": 10,
"current_page": 1,
"has_next": false,
"items": [
{
"id": 98765,
"creditor_id": 777,
"creditor_name": "ABC Furniture",
"processing_code": "PC300",
"installments": 6,
"mdr": 0.02,
"transaction_fee": 0.30,
"first_installment_days_to_payment": 30,
"n_installment_days_to_payment": 30,
"work_days": false,
"matched_settlement": true,
"matched_mdr": false,
"start_date": "2027-01-01",
"fees": [ { "name": "MARKETPLACE_FEE", "type": "PERCENTAGE", "value": 0.005 } ]
}
]
}Record the expected outcomes
Before submitting live activity, AcmePay completes the Evaluation layer of the planning matrix, so implementation and operations teams know what to validate for PC300.
| Expected outcome | Value/outcome |
|---|---|
| Scenario identification | Seller management identifies the activity as the PC300 scenario. |
| Schedule structure | The output reflects the six-installment configuration. |
| Charge treatment | MDR and fixed-fee behavior reflects matched_mdr: false. |
| Payment timing | Scheduled dates reflect the configured timing values. |
| Net amounts | Scheduled amounts reflect the applicable rates and fees. |
| Settlement context | Resulting funds follow the applicable creditor relationship. |
| Advancement | Eligible future receivables can enter the advancement workflow, according to the creditor's advancement terms. |
| Validation criteria | AcmePay can compare the generated dates, charges, net amounts, and statuses with the planned result. |
Verify before sending live traffic. Read the configuration back, and confirm an operation exists for every combination of processing code and installment count your merchants will submit. A sale whose processing code and installment count do not match an existing creditor operation will not be processed.
Updated about 4 hours ago