Smaregi Customer Data and Receipt Roller Customer Data Mapping

Smaregi Member Customer Data POS Integration Data Mapping

Smaregi's member master is automatically converted into Receipt Roller's customer data (CrmCustomerDto) after connecting Smaregi to Receipt Roller. This article summarizes the field-by-field correspondence and the quirks specific to Smaregi.

For the two-way sync mechanism for membership data itself (timing, priority in case of conflicts, troubleshooting), see Two-way membership data sync with Smaregi / Square. This article is strictly a technical document focused on "which field maps to what."

Field mapping table

Smaregi (SmaregiCustomer) Receipt Roller (CrmCustomerDto) Notes
customerId— (held in PosCustomerLink)Smaregi's internal ID. On the Receipt Roller side this is not stored on Customer itself, but saved in vendorIdentifier of the link table PosCustomerLinkEntity.
customerCodeMembershipCodeSmaregi's membership code (the number store operators typically use). Adopted directly as Receipt Roller's membership number.
lastName / firstNameLastName / FirstNameCarried over as-is. Since Smaregi has no standard kana field, LastNameKana / FirstNameKana are left blank.
emailEmailNormalized by lowercasing and trimming leading/trailing whitespace, then saved.
mobileNumber or phoneNumberPhoneMobile number (mobileNumber) takes priority. If blank, phoneNumber is used. Normalized to E.164 format (e.g. +819012345678).

Fields that are not imported

Of Smaregi's standard member fields, the following are not imported into Receipt Roller in the current version.

  • Address (PostalCode / Prefecture / City / Address1 / Address2) — because Smaregi's standard fields do not include an address. Register this separately on the Receipt Roller side, or it will remain blank.
  • Date of birth (DateOfBirth) — not included in Smaregi Platform API's standard member response. Preserved only if the customer registered it themselves via the Receipt Roller app.
  • Gender (Gender) — same as above.
  • Name reading / kana (LastNameKana / FirstNameKana) — blank because there is no such field in Smaregi's standard fields.

Matching and new registrations

When new member information arrives from Smaregi, Receipt Roller performs duplicate-person matching against existing customers in the following order.

  1. MembershipCode (exact match with Smaregi's customerCode)
  2. Email (exact match after lowercasing and trimming leading/trailing whitespace)
  3. Phone (exact match after E.164 normalization)

If none of these match, the customer is added to the CRM as new. If a match is found, the existing customer's information is updated (field-level last-write-wins).

Sync timing

  • Registering/updating members (Smaregi → Receipt Roller): Reflected in the CRM within seconds via a Smaregi webhook.
  • Periodic backup: As a fallback in case the webhook doesn't arrive, differences in the member master are fetched every hour.
  • Receipt Roller → Smaregi: The moment a customer registers as a member or updates their information in the app, a registration job to Smaregi is added to the queue. Usually reflected within seconds to a few minutes.

Points to note

  • If member data is physically deleted on the Smaregi side, matching on the Receipt Roller side stops working. On Smaregi, we recommend logical deletion (deactivation).
  • If Smaregi's customerCode is changed afterward, the MembershipCode match on the Receipt Roller side may break, causing the customer to be treated as new. When changing the code, we recommend also keeping the email address or phone number matching, by maintaining both fields.
  • Fields that exist only on the Receipt Roller side — such as name reading/kana, address, and date of birth — are not written back to Smaregi. They conform to Smaregi's field structure.

Related guides

Published: 2026-05-29 Updated: 2026-07-02
Related articles