---
title: CVS Integration & Testing
slug: en/cvs-integration-and-testing
description: Information about integration and testing on the Convenience Store (CVS) payment method with NICEPAY system
image: https://archbee-image-uploads.s3.amazonaws.com/ZHvSjR5ZrsoxwKbJa3xmo/h4O5HonqfR_6z25PBBAka_microsoftteams-image.png
icon: {"faIcon":"fa-solid fa-book"}
docTags: 
createdAt: 2022-09-16T09:04:10.000Z
---

# Integration Steps and API Used&#x20;

***

1. Perform Call Transaction Registration API integration.
   - Direct: [Registration - API Convenience Store](docId\:oBEurHSIWcpcCXZnOkvm1).
   - Redirect:  [Convenience Store - API Checkout](docId\:Oztr8eSgo0wKoOgCVmZSF).&#x20;
2. Receive callbacks and push notifications from NICEPAY.
3. Perform API Status Inquiry integration.
   - Direct: [Status Inquiry - API Convenience Store](docId:5njLA-ebfHTTNnLFvZ73P).
   - Redirect: [Status Inquiry - API Checkout](docId\:RhH7PmISd6IHN99yWVJHm).
4. Optional: do API Cancel integration to cancel a transaction.
   - Direct: [Cancel - API Convenience Store](docId:2tNHHlNWtZvDXFcNtKT3_).
   - Redirect: [Cancel - API Checkout](docId\:CmiiEW1Oy21QP7qDEcUl-).



# CVS Testing Guide

***

| **Test Steps**                                                                                                                                                                                                                                                                                                                                                                                                      | **Rules and Condition**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| 1. Using MID Merchant or MID sandbox ( `IONPAYTEST`) AutoPaid.
2. Make a Convenience Store (CVS) registration.
3. Write down or print `payment code`.
4. Bring the `payment code` to Indomaret or Alfamart / Alfamidi / Dan+Dan / Lawson.
5. Check your payment inquiry.
6. Pay according to the nominal listed.
7. Take your payment receipt.
8. Transaction success.
9. Check your (`dbProcessUrl`) notification. | 1) Notify the cashier that a payment has been made using NICEPAY+Merchant's name.
2) CVS can be cancelled and returned after payment, but can only be done manually or after the validity period of the `payNo` number has expired. Cannot be installed via API.
3) Convenience Store number (`payNo`) can expire by default in the 7th day but also depending on the Merchant's preferences, settings can be adjusted (the most common are 24 hours, 3 days, etc).
4) Terms based on CVS:
   - Alfamart & Alfamidi: transactions cannot be made after 10 p.m. and can be used again after 1 a.m. on the next day.
   - Indomaret: transactions cannot be made after 11 p.m. and can be used again after 1 a.m. on the next day. |



# Failed Transaction Possible Reason

***

1. Entered incorrectly `payNo`.
2. `payNo` expired or not valid.
3. Rejected from Partner.



# Integration Checklist & Test Case

***

- [ ] Implement Inquiry status after receiving the callback.
- [ ] Implement Inquiry status after receiving the notification inside `dbProcessUrl`.
- [ ] Review payment logs.
- [ ] Review firewall settings (eg. cloudflare for the `dbprocessUrl`).
- [ ] Check the `merchantToken` implementation.
- [ ] Execute scenario tests in Development Environment.
- [ ] Execute test scenarios in Production Environment.
  [Get Sample Scenario](https://docs.google.com/spreadsheets/d/e/2PACX-1vQIaIMCM0vZ3L1cA-JkW3YxyIpjsB966fg1wTeT8qpFDowEvulIEWOoY6I4uJPL3A/pub?output=xlsx)
- [ ] Review Error Handling (Timeout, Failed, Negative Case).



# Best Practice

***

- `payValidDt` and `payValidTm` are used to set the payment deadline for Merchants who use these parameters.
- When your `dbProcessUrl` notification is received, NICEPAY strongly recommends Merchant to verify notifications using the Inquiry API.
- `Notification Handling` is useful to minimalize Fraud action. NICEPAY strongly recommends Merchant to verify `Notification Handling`.



# See also

::::VerticalSplit{layout="middle"}
:::VerticalSplitItem
Visit the [CVS Payment Flow](docId\:tZVUGwxiezP71NXxD8ZJl) page to find out the system process during payment with the Convenience Store.
:::

:::VerticalSplitItem
Visit the [CVS Feature](docId\:wGqHy0HdIRsKzp2JzhoEr) page to find out the transaction features on the Convenience Store.
:::
::::

::::VerticalSplit{layout="middle"}
:::VerticalSplitItem
Visit the [CVS Glossary](docId\:nYWlUS9ndLL9diQ0Zp1An) page to find out the particular term used on Convenience Store.
:::

:::VerticalSplitItem
Visit the [CVS FAQ](docId\:RacnbV-13dHkNT2uMhHSY) page if you want to find out frequently asked questions related to Convenience Store.
:::
::::

