Which contract to use
v1 is production: pay-ins and payouts across three contracts. Pay-ins cover three payment methods on two contracts; payouts are a third. v2, one contract in beta, is in the version selector and has its own agent pages.
| Area | Method | Documentation |
|---|---|---|
| Pay-ins | Apple Pay | Apple Pay |
| Pay-ins | Google Pay | Google Pay |
| Pay-ins | Card payments | Card payments |
| Payouts | — | Payouts |
That a method is a pay-in does not make its contract shared. Apple Pay and Google Pay run on one contract; card payments run on another; payouts on a third. They differ in ways that matter to an integration:
| Apple Pay, Google Pay | Card payments | Payouts | |
|---|---|---|---|
| Host (test) | pay-in-api.mrcr.io |
pay-in-api.mrcr.io |
payouts-api.mrcr.io |
| Credentials | Sdk-Partner-Token (service_id:secret) + Sign Key |
api_key + secret_key |
service_id + secret_key |
| Signature | X-Signature, HMAC-SHA256 over the compact JSON body |
sign, hash_hmac MD5 over the base64 data string |
hash, MD5 of concatenated fields |
| Request | JSON | data (base64 JSON) + sign |
JSON or form |
| Response | JSON | JSON | XML |
| Error transport | HTTP status + JSON | HTTP status + JSON | HTTP 200, outcome inside the XML body |
| Status type | string | integer | string |
| Success value | paid |
3 |
PAID, not OK or PROCESSING |
Credentials are per contract. A key issued for one does not authenticate against another, and no identifier is shared between them.