fix(loyalty): use Code 128 barcode for retail scanner compatibility
Switch wallet pass barcodes from QR to Code 128 format using the card_number (digits only), so standard retail barcode scanners can read loyalty cards. Apple Wallet keeps QR as fallback in barcodes array. Also fix stale Vendor.loyalty_program relationship (now company-based), add parent init calls in vendor JS components, and update module docs to reflect Phase 2 completion. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -125,16 +125,23 @@ class AppleWalletService:
|
||||
"authenticationToken": card.apple_auth_token,
|
||||
"webServiceURL": self._get_web_service_url(),
|
||||
"barcode": {
|
||||
"message": card.qr_code_data,
|
||||
"format": "PKBarcodeFormatQR",
|
||||
"message": card.card_number.replace("-", ""),
|
||||
"format": "PKBarcodeFormatCode128",
|
||||
"messageEncoding": "iso-8859-1",
|
||||
"altText": card.card_number,
|
||||
},
|
||||
"barcodes": [
|
||||
{
|
||||
"message": card.card_number.replace("-", ""),
|
||||
"format": "PKBarcodeFormatCode128",
|
||||
"messageEncoding": "iso-8859-1",
|
||||
"altText": card.card_number,
|
||||
},
|
||||
{
|
||||
"message": card.qr_code_data,
|
||||
"format": "PKBarcodeFormatQR",
|
||||
"messageEncoding": "iso-8859-1",
|
||||
}
|
||||
},
|
||||
],
|
||||
}
|
||||
|
||||
|
||||
@@ -275,8 +275,9 @@ class GoogleWalletService:
|
||||
"accountId": card.card_number,
|
||||
"accountName": card.card_number,
|
||||
"barcode": {
|
||||
"type": "QR_CODE",
|
||||
"value": card.qr_code_data,
|
||||
"type": "CODE_128",
|
||||
"value": card.card_number.replace("-", ""),
|
||||
"alternateText": card.card_number,
|
||||
},
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user